unity3d 消息系统研究之一-------内置消息机制
2013-10-23 02:07
232 查看
一、内置脚本通讯方法:
1. 同一个对象不同脚本之间的通讯
第一种方法:直接getcomponent调用
// script1 var connect : script2; function Start () { connect = GetComponent(script2);//得到script2 conect.Create();//调用script2的Create方法 } // script2 function Create() { GameObject.CreatePrimitive(PrimitiveType.Cube); }
将script1、2都挂到同一个物体,在屏幕中央创建一个cube
注意,两个脚本都必须绑定到同一个物体。
第二种方法:用sendmessage、BroadcastMessage、和SendMessageUpwards
这样一个场景,现在把两个脚本都绑在左边的cube上:
sendmessage.js如下:
function OnMouseEnter () { gameObject.SendMessage ("hi"); }
changecolor.js如下:
function hi () { renderer.material.color = Color.red; }
当鼠标经过左边的cube,发现它变红了,
sendmessage只能在同一个物体上的不同脚本间通讯。
。。BroadcastMessage 给所有此物体子对象传递信息
如图,把另一个cube当做子对象,并给他挂上changecolor.js
sendmessage.js现在用[b]BroadcastMessage:[/b]
function OnMouseEnter () { gameObject.BroadcastMessage("hi"); }
2收到了信息
再加一个cube,changecolor里的方法颜色改成yellow就能这样:
SendMessageUpwards 是给父级传递信息,不再举例
不是教程,是笔记,待续
相关文章推荐
- Unity3d 简单的消息系统
- ActiveMQ消息系统研究与学习
- 分布式消息系统研究报告之Kafka
- unity3D菜鸟成长笔记 之 旧版粒子系统研究 测试实验(一)
- 移动互联网即时消息传递系统PICA的研究与应用
- unity3d消息机制研究之二--------javascript 的 NotificationCenter
- Unity3D开发之系统之间发送消息不能被接受
- 转:Unity3d 之 内置图形界面系统UnityGUI
- Unity3d 之 内置图形界面系统UnityGUI
- 基于SQL Server 2008 Service B“.NET研究”roker构建企业级消息系统
- ActiveMQ消息系统研究与学习
- android 系统内置文件,用户看不到,也删除不了
- 如何用消息系统避免分布式事务?
- windows常用消息大全(系统消息、通告消息、用户消息)
- 网页栅格系统研究(2):蛋糕的切法
- Eclipse中开发Android系统的内置应用
- 局域网通知系统(消息群发)
- 不用钩子 截获系统消息!
- 消息系统kafka及其变种Jafka、Metamorphosis (MetaQ)
- Kafka架构设计:分布式发布订阅消息系统