消息传递函数

消息传递函数

欢迎大家光临我的博客

欢迎来到unity学习unity培训unity企业培训教育专区,这里有很多U3D资源U3D培训视频U3D教程U3D常见问题U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌。

     消息传递函数:

       GameObject.SendMassege:向自身的脚本发送消息

//调用本级别所有的GameObject上所有脚本的methodName方法

SendMessage (methodName : string, value : object = null, options : SendMessageOptions = SendMessageOptions.RequireReceiver)

  methodName为方法名,value为方法的参数,options表示是否必须有对象接收该消息(如果是,且没有对象接受,u3d报错);object: Unity所涉及所有物体的基类。

//朝本级别和上级父节点发送调用命令

       GameObject.SendMassegeUpwards;向自身和父物体脚本发消息

      //目标是本级别和全部子节点

       GameObject.BoardcastMessage;向自身和子物体脚本发消息

       实例:

        Sphere(子):       

        void Start () {

           gameObject.SendMessageUpwards ("Do","向父对象发出信息");

        }

        Cube(父):

        void Do(string message){

           print (message);

        }

1. 查找父节点 transform.parent

2. 查找子节点 transform.Find("name");  transform.Find("Arm/Hand/Finger"); 没有找到会返回null,名字如果包含"/"字符将像路径一样穿越层次

3. 查找场景中的其他GameObject 
GameObject.Find Scene下开始查找,根据GameObject的名字进行查找,允许使用"/"穿越层次查找,
GameObject.FindWithTag根据Tag查找一个GameObject
GameObject.FindGameObjectsWithTag 根据Tag批量查找GameObject

GameObjectnameTag可以直接设置,但Tag需要在标签管理器先定义一个Tag,这个Tag才可用,你不能将一个未定义的Tag赋给GameObjectTag变量

最后还有一种搓搓的通讯方法,通过Message来调用其他GameObject,默认是垃圾短信群发,也可以将一个Object穿进去,然后调它的方法

methodName为方法名,value为方法的参数,options表示是否必须有对象接收该消息(如果是,且没有对象接受,u3d报错)

//调用本级别所有的GameObject上所有脚本的methodName方法
void SendMessage(string methodName, object value = null, SendMessageOptions options = SendMessageOptions.RequireReceiver);

//朝本级别和上级父节点发送调用命令
void SendMessageUpwards(...)

//目标是本级别和全部子节点...
void BroadcastMessage(...)

调用ObjectDestroy方法可以销毁一个GameObject,组件,或者资源。这是一个静态方法,函数的原型为 static void Destroy(Object obj, float t = 0.0F );

可以通过将this传入,销毁自己。

喜欢我的博客请记住我的名字:Rocket,我的博客地址是

http://unity.gopedu.com/home.php?mod=space&do=blog&view=me

 

转载请注明出处,本文作者:Rocket,本文出处:

http://unity.gopedu.com/home.php?mod=space&do=blog&view=me

 

更多精彩请点击:http://unity.gopedu.com/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值