Ejemplo n.º 1
0
        /// <summary>
        /// 测试加载一个动态的可以设置参数的材质
        /// </summary>
        private void TestDynamicMaterial()
        {
            var mesh = Actor.GetComponent <StaticMeshComponent>();

            if (mesh == null)
            {
                Log.Error("[MaterialTest] mesh is null");
            }

            mesh.SetScalarParameter("ChooseType", 0.0f);

            var mat = mesh.GetMaterial(2);

            if (mat == null)
            {
                Log.Error("[MaterialTest] get mat is null");
            }

            var m = Resource.LoadMaterial("Resources/UI/选人/Material__72");

            if (m == null)
            {
                Log.Error("[MaterialTest] load mat is null");
            }

            var dm = DynamicMaterial.Create(m, Actor);

            if (dm == null)
            {
                Log.Error("[MaterialTest] create DynamicMaterial is null");
            }

            var tex = Resource.LoadTexture("Resources/Textures/Ground4");

            if (tex == null)
            {
                Log.Error("[MaterialTest] LoadTexture is null");
                return;
            }

            mesh.SetMaterial(2, dm);
            dm.SetTextureParameter("Texture", tex);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 测试加载一个动态的可以设置参数的材质
        /// </summary>
        private void TestDynamicMaterial()
        {
            var mesh = Actor.GetComponent <StaticMeshComponent>();

            if (mesh == null)
            {
                return;
            }
            var mat = mesh.GetMaterial(0);

            if (mat == null)
            {
                return;
            }

            var m = Resource.LoadMaterial("/Resources/Materials/NewMaterial");

            if (m == null)
            {
                return;
            }

            var dm = DynamicMaterial.Create(m, Actor);

            if (dm == null)
            {
                return;
            }

            var tex = Resource.LoadTexture("/Resources/Textures/Ground4");

            if (tex == null)
            {
                Log.Debug("tex != null.");
                return;
            }

            mesh.SetMaterial(0, dm);
            dm.SetTextureParameter("MainTex", tex);
        }