Exemplo n.º 1
0
        public void SetDefaultPredefinedMaterial(PredefParticleMaterial defMaterial)
        {
            switch (defMaterial)
            {
            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_BLOCK:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_BLOCK);
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_CIRCLE:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_CIRCLE);
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_LIGHT_RAIN:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_LIGHT_RAIN);
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_HEAVY_RAIN:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_HEAVY_RAIN);
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_FEINT_SMOKE:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_FEINT_SMOKE);
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_MEDIUM_SMOKE:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_MEDIUM_SMOKE);
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_THICK_SMOKE:
                SetActiveSetsMaterial(PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_THICK_SMOKE);
                break;

            default:
                break;
            }
        }
Exemplo n.º 2
0
        public void SetActiveSetsMaterialName(string materialName)
        {
            PredefParticleMaterial materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_BLOCK;

            switch (materialName)
            {
            case "BLOCK":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_BLOCK;
                break;

            case "CIRCLE":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_CIRCLE;
                break;

            case "LIGHT_RAIN":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_LIGHT_RAIN;
                break;

            case "HEAVY_RAIN":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_HEAVY_RAIN;
                break;

            case "FEINT_SMOKE":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_FEINT_SMOKE;
                break;

            case "MEDIUM_SMOKE":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_MEDIUM_SMOKE;
                break;

            case "THICK_SMOKE":
                materialChoice = PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_THICK_SMOKE;
                break;
            }
            SetActiveSetsMaterial(materialChoice);
        }
Exemplo n.º 3
0
        public void SetActiveSetsMaterial(PredefParticleMaterial defMaterial)
        {
            Color   defaultFill         = new Color(0.0f, 0.0f, 0.0f);
            Vector2 noDefinedSize       = new Vector2(0, 0);
            string  particleTextureRes1 = "";
            string  particleTextureRes2 = "";
            string  particleTextureRes3 = "";

            switch (defMaterial)
            {
            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_BLOCK:
                //Set the Material to null to use the default block shape
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_CIRCLE:
                //Draw circle on canvas or another node and copy the texture across
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_LIGHT_RAIN:
                particleTextureRes1 = GetImageResource("light-rain1");
                particleTextureRes2 = GetImageResource("light-rain2");
                GD.Print($"SetActiveSetsMaterial (LIGHT_RAIN), res1={particleTextureRes1}, res2={particleTextureRes2}");
                ImageTexture rainLight1Texture = CreateTexture(particleTextureRes1, false, defaultFill, noDefinedSize);
                ImageTexture rainLight2Texture = CreateTexture(particleTextureRes2, false, defaultFill, noDefinedSize);
                GD.Print($"SetActiveSetsMaterial (LIGHT_RAIN), texture1={rainLight1Texture}, texture2={rainLight2Texture}");
                if (IsActiveSet("set1"))
                {
                    particleSet1.Texture = rainLight1Texture;
                }
                //GD.Print($"SetActiveSetsMaterial (LIGHT_RAIN), set1 texture={particleSet1.Texture}");
                if (IsActiveSet("set2"))
                {
                    particleSet2.Texture = rainLight2Texture;
                }
                if (IsActiveSet("set3"))
                {
                    particleSet3.Texture = rainLight1Texture;
                }
                if (IsActiveSet("set4"))
                {
                    particleSet4.Texture = rainLight2Texture;
                }
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_HEAVY_RAIN:
                particleTextureRes1 = GetImageResource("heavy-rain1");
                particleTextureRes2 = GetImageResource("heavy-rain2");
                GD.Print($"SetActiveSetsMaterial (HEAVY_RAIN), res1={particleTextureRes1}, res2={particleTextureRes2}");
                ImageTexture rainHeavy1Texture = CreateTexture(particleTextureRes1, false, defaultFill, noDefinedSize);
                ImageTexture rainHeavy2Texture = CreateTexture(particleTextureRes2, false, defaultFill, noDefinedSize);
                if (IsActiveSet("set1"))
                {
                    particleSet1.Texture = rainHeavy1Texture;
                }
                if (IsActiveSet("set2"))
                {
                    particleSet2.Texture = rainHeavy2Texture;
                }
                if (IsActiveSet("set3"))
                {
                    particleSet3.Texture = rainHeavy1Texture;
                }
                if (IsActiveSet("set4"))
                {
                    particleSet4.Texture = rainHeavy2Texture;
                }
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_FEINT_SMOKE:
                particleTextureRes1 = GetImageResource("feint-smoke1");
                particleTextureRes2 = GetImageResource("feint-smoke2");
                particleTextureRes3 = GetImageResource("feint-smoke3");
                ImageTexture smokeFeint1Texture = CreateTexture(particleTextureRes1, false, defaultFill, noDefinedSize);
                ImageTexture smokeFeint2Texture = CreateTexture(particleTextureRes2, false, defaultFill, noDefinedSize);
                if (IsActiveSet("set1"))
                {
                    particleSet1.Texture = smokeFeint1Texture;
                }
                if (IsActiveSet("set2"))
                {
                    particleSet2.Texture = smokeFeint2Texture;
                }
                if (IsActiveSet("set3"))
                {
                    particleSet3.Texture = smokeFeint1Texture;
                }
                if (IsActiveSet("set4"))
                {
                    particleSet4.Texture = smokeFeint2Texture;
                }
                break;

            case PredefParticleMaterial.PREDEF_MATERIAL_DEFAULT_MEDIUM_SMOKE:
                particleTextureRes1 = GetImageResource("medium-smoke1");
                particleTextureRes2 = GetImageResource("medium-smoke2");
                ImageTexture smokeMedium1Texture = CreateTexture(particleTextureRes1, false, defaultFill, noDefinedSize);
                ImageTexture smokeMedium2Texture = CreateTexture(particleTextureRes2, false, defaultFill, noDefinedSize);
                if (IsActiveSet("set1"))
                {
                    particleSet1.Texture = smokeMedium1Texture;
                }
                if (IsActiveSet("set2"))
                {
                    particleSet2.Texture = smokeMedium2Texture;
                }
                if (IsActiveSet("set3"))
                {
                    particleSet3.Texture = smokeMedium1Texture;
                }
                if (IsActiveSet("set4"))
                {
                    particleSet4.Texture = smokeMedium2Texture;
                }
                break;

            default:
                break;
            }
        }