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(),GUILayout.Height()))
{
//改变渲染的颜色
render.material.color = Color.green;
//添加组件贴图
render.material.mainTexture = null;
} if(GUILayout.Button("add",GUILayout.Width(),GUILayout.Height()))
{ render.material = null;
render.material.mainTexture = texture;
}
}
更改Shader
,如NewShader
Shader "Custom/NewShader" {
Properties {
_Color ("Main Color", COLOR) = (,,,)
_AmbientColor("Ambient Color",COLOR) =(,,,)
}
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); //设置颜色
//}
Unity3d 如何找到游戏对象并改变其颜色的更多相关文章
- Unity3D研究院之游戏对象的访问绘制线与绘制面详解(十七)
一眨眼学习Unity3D 也有一段时间了,基本已经拿下了这套游戏引擎,回过头来想想以前写的RPG 游戏引擎,越来越发现以前写的就是垃圾.人果然是要不断学习与不断进步,好好学习,天天向上.哇咔咔- 加油 ...
- Unity3d获取游戏对象的几种方法
1.GameObject.Find() 通过场景里面的名子或者一个路径直接获取游戏对象. GameObject root = GameObject.Find("GameObject" ...
- 转载:Unity3D游戏对象消失enabled、Destroy与active的区别
转自:http://www.manew.com/3276.html Unity3D游戏对象消失三种方法的区别: gameObject.active:是否在场景中停用该物体,在你gameObject.a ...
- Unity3D 中的面向对象设计 {游戏对象(创建、删除、获取),以及添加修改组件}
一.创建游戏对象 游戏对象分三种:(1) 将物体模型等资源由Project工程面板拖拽到Hierarchy层次面板中 (2) 由GameObject菜单创建Unity自带的游戏对象,如Cube.Cam ...
- unity3d 获取游戏对象详解
原文地址:http://www.xuanyusong.com/archives/2768 我觉得Unity里面的Transform 和 GameObject就像两个双胞胎兄弟一样,这俩哥们很要好,我能 ...
- Unity3D入门基础之游戏对象 (GameObject) 和组件 (Component) 的关系
原文出处:http://edu.china.unity3d.com/learning_document/getData?file=/Manual/TheGameObject-ComponentRela ...
- Unity 改变游戏对象的Scale引起的不好结果
1. 当一个游戏对象的中心(它的x,y,z的交点) 不在它的正中间时,改变它的Scale时它的中心也会变的. 如图:这是用PlayMkaer做的,胶囊体碰到瓶子瓶子会碎,会在瓶子的中心位置那生成一个 ...
- Unity3D基础--动态创建和设置游戏对象
转载自原文:http://m.blog.csdn.net/blog/smbroe/43488627 1.如何动态创建对象:调用GameObject的CreatePrimitive方法可以按模型进行创建 ...
- unity3d通过代码动态创建销毁游戏对象
只能动态创建内部提供的游戏对象,代码如下: //按下C后创建 if (Input.GetKeyDown (KeyCode.C)) { GameObject s1 = GameObject.Create ...
随机推荐
- 关于在Eclipse中构建patch开发环境
git仓库中不能添加空文件夹. 至于为什么git 仓库中不能添加空文件夹,我没有找到具体的原因. 在V2EX上有人说: 我猜是因为git的内部实现,即只对文件做快照决定的吧,另一方面空文件夹确实对源代 ...
- 移动端开发的meta标签作用
一.<meta name="viewport" id="viewport" content="width=device-width, initi ...
- 刚更新的css hack技巧
一 一般Hack 1概念: 不同的浏览器对CSS的解析效果不同,为了达到相同的效果,就得根据不同浏览器写不同的css 2规则: CSS Hack大致有3种表现形式,CSS类内部Hack.选择器Hack ...
- Android Studio 创建aar包与引用
两者区别:*.jar: 只包含了class文件与清单文件 ,不包含资源文件,如图片等所有res中的文件.*.aar: 包含所有资源 ,class以及res资源文件全部包含 一.创建aar包1.创建一个 ...
- MySQL之经典语句
数据库的创建:(例如创建名为ConstructionDB的数据库) --创建SelfStudy数据库 CREATE DATABASE ConstructionDB ON PRIMARY --创建主数据 ...
- sublime text3 针对于前端开发必备的插件
1.emmet--前身Zen coding:HTML/CSS代码快速编写神器 2.jQuery Package for sublime Text:如果你离不开jQuery的话,这个必备-- 3.JS ...
- css3学习笔记之文本效果
CSS3的文本阴影 CSS3中,text-shadow属性适用于文本阴影. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <!DOCTYPE html ...
- CAF(C++ actor framework)使用随笔(同步发送 异步与同步等待)(三)
c). 同步发送, 等待响应, 超时后收到1个系统消息. 贴上代码 #include <iostream> #include "caf/all.hpp" #includ ...
- linux之Gcc使用
本篇文章摘自 http://blog.csdn.net/ljzcom/article/details/7213101 对于Gcc自带的很多命令行,只有具体编程里面用到了或者看到别人真真用到的,用的目的 ...
- vi 技巧
:%s/^/\// 行首加 / :%s/$/\// 行尾加/ :%s/^\///g 行首减 / :%s/\/$//g 行尾减/ :%s/^\s*//g 行首减 空格