< Unity 3D专栏 >实现游戏对象与对象之间通信
来源:互联网 发布:mac生存游戏排行榜 编辑:程序博客网 时间:2024/04/28 17:55
游戏中,对象与对象之间需要交流,实现的方法多种,例如:可定义静态变量,其他脚本直接调用, 也可用到: 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专栏 >实现游戏对象与对象之间通信
- 实现游戏对象之间的通信
- < Unity 3D专栏 >动态创建对象,并渲染贴图,动态添加删除脚本
- < Unity 3D专栏 >游戏中 - 怪物AI基础篇
- Unity 3D 对象池
- UNITY3D对象之间实现消息通信管理[源码转载自unity wiki]
- ROLL A BALL (Unity 3D 入门) 游戏制作指导 - 移动游戏对象
- Unity获取游戏对象
- Unity 获取游戏对象
- Unity克隆游戏对象
- C++对象之间通信
- 对象之间的通信
- 对象之间的通信
- unity 3D对象上面显示文字
- unity 3D 对象的Rigidbody属性
- < Unity 3D专栏 >预设物,节省游戏资源才是王道
- < Unity 3D专栏 >预设物,节省游戏资源才是王道
- < Unity 3D专栏 >Transform结构图
- 利用源码编译Android系统APK
- 掌握HTML5中的多媒体--视频(video)
- 无向图邻接表怎么建,求指点!! HDU 2544 最短路(Dijkstra、结题报告 精简版!)
- 利用源码编译Android系统可执行命令
- IOS UINavigationController的下级页面(子页面)更改titleView不显示的问题
- < Unity 3D专栏 >实现游戏对象与对象之间通信
- 学习苹果手机开发阶段性成绩
- 不知名的一夜
- 看奥运,好激动人心!
- 图的强连通分量,块,割点,桥
- 2012.8.5
- IoC与DI
- 利用源码编译Android系统Java类库
- override 和 new;virtual 、 abstract、interface 的区别