博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
unity3d Start执行不同时问题
阅读量:4549 次
发布时间:2019-06-08

本文共 1050 字,大约阅读时间需要 3 分钟。

1.一个Scene的场景里有许多的GameObject,很多GameObject上绑定了Script,每个Script上又都有Start函数

using UnityEngine;using System.Collections;public class BallRotate : MonoBehaviour {    private Vector3 Rot;    private bool m_bRot =false;    // Use this for initialization    void Start ()    {        Rot.x = 0;        Rot.y = 0;        Rot.z = 0;        m_bRot = false;    }      // Update is called once per frame    void Update ()     {        if (m_bRot)        {            this.transform.Rotate(Rot.x, Rot.y, Rot.z);            Rot.x += 0.010f;            //Rot.y += 0.02f;            //Rot.z += 0.12f;        }           }}

但是我们使用一个脚本调用另一个脚本的时候

m_ObjMusicPlayer.GetComponent
().PlayBg();

我们习惯性的在其他脚本里的Start函数里调用这个脚本的功能,我们帮默认这个脚本已经执行过Start的,但是事实上是不一定的。u3d会报错

这个时候我们要给他添加一个开放的接口Init,然后我们在调用功能的前面加上Init这个动作

m_ObjMusicPlayer = GameObject.Find("MusicPlayer");   //go Music        m_ObjMusicPlayer.GetComponent
().Init(); m_ObjMusicPlayer.GetComponent
().PlayBg();

 

转载于:https://www.cnblogs.com/dragon2012/p/3991061.html

你可能感兴趣的文章
TCP之二:TCP的三次握手与四次分手
查看>>
es的返回数据结构
查看>>
[ActionScript 3.0] as3处理xml的功能和遍历节点
查看>>
linux学习(6)-redhat安装xwindow环境
查看>>
6.28 加法作业
查看>>
CentOS6+nginx+uwsgi+mysql+django1.6.6+python2.6.6
查看>>
【bzoj2829】信用卡凸包 凸包
查看>>
oracle 游标
查看>>
关于拍照那些小事——五一苏行记(三)
查看>>
jquery简单的表单验证充值数量
查看>>
大叔手记(1):使用Visual Studio的查找与替换替代默认的系统搜索
查看>>
Android手机监控软件设计实现
查看>>
算法导论<二>
查看>>
oracle 应用程序调用存储函数
查看>>
洛谷 P3629 [APIO2010]巡逻 解题报告
查看>>
深入理解JS的事件绑定、事件流模型
查看>>
Fedora 23+CUDA 8.0+ GTX970 安装
查看>>
在Visual Studio中开发一个C语言程序
查看>>
课程总结
查看>>
openstack新建虚机、网络、路由时候对应的ovs网桥的变化
查看>>