Unity 操纵方块碰撞其他物体 使其他物体变色
来源:互联网 发布:数据结构与算法知识点 编辑:程序博客网 时间:2024/05/17 19:16
操纵的方块上面的脚本:
using UnityEngine;
using System.Collections;
public class playerScript : MonoBehaviour {
delegate void CHANGECOLOR(Color color);
event CHANGECOLOR changeMyColor;
event CHANGECOLOR changeMyColor1;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
float a = Input.GetAxis ("Horizontal");
float b = Input.GetAxis ("Vertical");
transform.position +=transform.forward* b * 10 * Time.deltaTime;
if(b<0){
b = -b;
}
transform.Rotate (Vector3.up * a *50 *Time.deltaTime);
if (Input.GetKeyDown(KeyCode.Space)) {
//判断事件不为空
if (changeMyColor != null ) {
changeMyColor (Color.yellow);
}
if (changeMyColor1 != null) {
changeMyColor1 (Color.red);
}
}
}
void OnCollisionEnter(Collision other){
//事件绑定
if (other.collider.tag == "cube") {
changeMyColor += other.collider.GetComponent<ChangecolorScript> ().ChangeColor;
}
if (other.collider.tag == "Player") {
changeMyColor1 += other.collider.GetComponent<Changecolor1Script> ().ChangeColor;
}
}
}
被碰撞的其他物体的代码
物体一
using UnityEngine;
using System.Collections;
public class ChangecolorScript : MonoBehaviour {
//player绑定的方法
public void ChangeColor(Color color){
GetComponent<MeshRenderer> ().material.color = color;
}
}
物体二
using UnityEngine;
using System.Collections;
public class Changecolor1Script : MonoBehaviour {
public void ChangeColor(Color color){
GetComponent<MeshRenderer> ().material.color = color;
}
}
- Unity 操纵方块碰撞其他物体 使其他物体变色
- 物体变成其他物体的子物体
- Unity 访问其他游戏物体的几种方法
- Unity为物体添加物理碰撞效果
- Unity 模拟爆炸后的物体碰撞
- Unity两个物体发生碰撞的条件
- unity 物体间的碰撞检测
- 【Unity】3D碰撞物体的设置
- unity游戏物体之间的碰撞检测
- Unity5.0 烘焙物体导入其他场景
- unity VRTK拿起物体设置成碰撞物体的子物体
- Unity在一个场景中使用其他场景烘焙的物体
- Unity 碰撞检测,触发检测,方向键控制物体移动
- unity 用Box Collider为物体添加碰撞范围
- unity解决快速运动物体碰撞检测穿透问题
- Canvas物体碰撞
- 平面物体碰撞检测
- Unity3D -- 物体反弹碰撞
- C语言的属性:__attribute__
- 为什么你有10年经验,但成不了专家?
- zoj1622
- Android中设置ListView的item高度无效--解决方案
- Vue.js 2.0新增的虚拟DOM是怎么回事?
- Unity 操纵方块碰撞其他物体 使其他物体变色
- 不安装oracle客户端,pl/sql developer 远程连接oracle
- 深入浅出设计模式之建造模式
- Windows驱动开发报错集锦
- Linux安装Redis(CentOS 6.5)
- Android系统中Parcelable和Serializable的区别
- LightOJ 1138 Trailing Zeroes (III)
- 基于DOM现有的insertBefore()方法封装一个insertAfter()方法
- 机器学习零基础?手把手教你用TensorFlow搭建图像识别系统