已经知道怎样简单地控制物体的运动了,继续扩展下,学习如何方便地同时控制多个物体。
在脚本中访问其它的物体
一:通过脚本参数
public GameObject gameObject;
然后就能在脚本的控制面板中看到该“公共”参数,然后将物体实体拖拽到该脚本的该参数上即可实现控制。
一般我们可以在一个脚本上控制多种物体,然后将该脚本赋给“地面”这类永久存在的物体,方便控制,也方便共享脚本给其它人用(合作)。
二:通过物体名称
添加一个球和方体,名称为Capsule和Cube。
GameObject capsule=GameObject.Find("Capsule"); //找物体名称。若有两个物体名字相同,只获取到最上的一个。
GameObject cube=GameObject.Find("Cube");
capsule.renderer.material.color=Color.red;
cube.renderer.material.color=Color.gray;
//可以通过目录方式来获取更加确定的位置
比如有
A1/C
B1/C
两队物体。GameObject cube=GameObject.Find("/A1/C");就可以访问到下面的C物体
三:语句块参数传递GameObject n;
//碰撞触发事件(手工输入代码,函数名不可改变)
void OnCollisionEnter(Collision collisionInfo)
{
n=collisionInfo.gameObject; //获取被碰撞的物体
n.renderer.material.color=Color.red;
}
原文:http://blog.csdn.net/wowkk/article/details/23044977