zoukankan      html  css  js  c++  java
  • Unity3d 如何找到游戏对象并改变其颜色

    //游戏对象
    private var obj:GameObject;
    //渲染器
    private var render:Renderer;
    //贴图
    private var texture:Texture;
    
    function Start () 
    {
        //获取游戏对象
        obj = GameObject.Find("Cube");
        //获取该游戏对象的渲染器
        render = obj.GetComponent("Renderer");
    }
    
     function OnGUI()
     {
         if (GUILayout.Button("Color",GUILayout.Width(100),GUILayout.Height(50)))
         {
             //改变渲染的颜色
             render.material.color = Color.green;
             //添加组件贴图
             render.material.mainTexture = null;
         }
         
         
         if(GUILayout.Button("add",GUILayout.Width(100),GUILayout.Height(50)))
         {
             
             render.material = null;
             render.material.mainTexture = texture;
         }
     }  

     更改Shader

    ,如NewShader

    Shader "Custom/NewShader" {
        Properties {
            _Color ("Main Color", COLOR) = (1,1,1,1)
            _AmbientColor("Ambient Color",COLOR) =(0,1,0,1)
        }
        SubShader {
            Pass {
                Material {
                    Diffuse [_Color]
                    Ambient [_AmbientColor]
                }
                Lighting On
            }
        }
    }

    在代码中设置颜色

            CubeObj.renderer.material.shader = Shader.Find("Custom/NewShader");     //设置材质的shader
            print(CubeObj.renderer.material.GetColor("_AmbientColor"));  //获取_AmbientColor 的颜色
            CubeObj.renderer.material.SetColor("_AmbientColor", Color.red);  //设置_AmbientColor的颜色

     

                    //Renderer[] renders = obj.GetComponentsInChildren<Renderer>();
    
                    //foreach (Renderer one in renders)
                    //{
                    //    one.material.shader = Shader.Find("Custom/NewShader");
                    //    Color changeColor = new Color(1,0.33f,1,1);
                    //    one.material.SetColor("_IlluminCol", changeColor);  //设置颜色
                    //}
  • 相关阅读:
    如何从ORACLE数据库生成HBM和JAVA
    timer
    工作流研究
    linux date命令设置时间
    耶基斯多得森曲线
    朋友考我的一个基础语法题
    微软企业库(一)
    标记属性
    Word自动化撤销、重做功能
    汇编中的ASSUME
  • 原文地址:https://www.cnblogs.com/martianzone/p/3394092.html
Copyright © 2011-2022 走看看