实现游戏对象之间的通信
来源:互联网 发布:大数据性能 编辑:程序博客网 时间:2024/04/30 14:17
游戏中,对象与对象之间需要交流,实现的方法多种,例如:可定义静态变量,其他脚本直接调用, 也可用到: SendMessage
今天主要学习SendMessage的用法。
1、创建两个脚本:“Cube0”和“Cube1”;
2、将两个脚本分别拖拽到Cube0和Cube1对象中;
3、修改Main.cs脚本:
- using UnityEngine;
- using System.Collections;
- public class Main : MonoBehaviour
- {
- //定义全局游戏对象
- GameObject obj0;
- GameObject obj1;
- void Start ()
- {
- //获取两个游戏对象
- obj0 = GameObject.Find("Cube0");
- obj1 = GameObject.Find("Cube1");
- }
- void OnGUI()
- {
- if(GUILayout.Button("Move0"))
- {
- //告诉Cube0对象,发送一个方法
- //Receive是方法名称,My Code是参数;绑定的obj0对象脚本中需要有一个Receive方法接收参数
- obj0.SendMessage("ReceiveCube","My Cube0");
- obj1.SendMessage("ReceiveCube","My Cube1");
- }
- }
- void Update ()
- {
- }
- }
设置Cube0 和 Cube1 脚本:
Cube0脚本:
- using UnityEngine;
- using System.Collections;
- public class Cube0 : MonoBehaviour
- {
- //ReceiveCube方法,接收Main.cs传过来的参数
- void ReceiveCube(string str)
- {
- Debug.Log(str);
- }
- }
Cube1脚本:
- using UnityEngine;
- using System.Collections;
- public class Cube1 : MonoBehaviour
- {
- //ReceiveCube方法,接收Main.cs传过来的参数
- void ReceiveCube(string str)
- {
- Debug.Log(str);
- }
- }
效果可见:
- 实现游戏对象之间的通信
- 对象之间的通信
- 对象之间的通信
- < Unity 3D专栏 >实现游戏对象与对象之间通信
- 游戏对象的实现
- 关于对象之间通信的一点思考
- 关于对象之间通信的一点思考
- ios 各对象之间的通信方式
- 对象之间的调用机制 通信方式
- 如何是使用XMLHttpRequest对象实现与服务器之间的通信
- C++对象之间通信
- 利用油槽实现进程之间的通信
- Condidtion实现多线程之间的线程通信
- Fragment之实现Fragment之间的通信
- 线程之间的通信实现wc -w
- AsyncTask机制实现线程之间的通信
- Aidl实现应用程序之间的 通信
- Android实现Activity之间通信的方法
- 这样解决浏览器不兼容问题
- hdu 2795 Billboard
- Android Binder设计与实现 – 设计篇
- 开发者必备的6款源码搜索引擎
- 数据库控制文件问题
- 实现游戏对象之间的通信
- 友元-----练习
- web.xml详细配置
- wp8
- configure samba
- HDU4544 湫湫系列故事――消灭兔子
- Resolving “error: failed to attach to process ID 0″ in Xcode
- 利用dispatch_once创建单例
- C#特性Attribute