Unity3d修炼之路:载入一个预制体,然后为该对象加入组件,然后查找对象,得到组件。
2016-02-27 19:30
465 查看
#pragma strict function Awake(){ //载入一个预制体 资源必须在 Resources目录下 Resources.LoadLoad(); //载入后 必须演示样例化 GameObject.Instantiate(); //为对象加入组件 AddComponent(); //Find游戏对象 Find(); //Get组件 GetComponent(); var pPrefab : GameObject = Resources.Load("Prefab/Scence",typeof(GameObject)) as GameObject;//载入一个预制体 if(null != pPrefab) { var pPreabInstance : GameObject = GameObject.Instantiate(pPrefab);//演示样例化 if(null != pPreabInstance) { pPreabInstance.name = "PrefabScence"; var pScript : Prefab_test = pPreabInstance.AddComponent("Prefab_test") as Prefab_test;//为对象加入组件 if(pScript == null) { Debug.Log("Component add error!"); } } else { Debug.Log("Prefab Instance error!"); } } else { Debug.Log("Prefab load error!"); } } function Start(){ var pMyGameObject : GameObject = GameObject.Find("PrefabScence");//Find游戏对象 if(null != pMyGameObject) { var pScript : Prefab_test = pMyGameObject.GetComponent("Prefab_test") as Prefab_test;//Get组件 if(null != pScript) { pScript.DoSomething(); } else { Debug.Log("Get Component error!"); } } else { Debug.Log("Find GameObject error!"); } }
脚本组件的代码
#pragma strict function Update(){ var fAngle : float= 30.0f; transform.Rotate(transform.up * Time.deltaTime * fAngle); } function DoSomething (){ Debug.Log("wo shi da huai dan !"); }
相关文章推荐
- 关于Unity碰撞和触发的总结
- 菜鸟在线Unity3d教程:如何获取摄像机图像?
- 菜鸟在线教你用Unity3D开发VR版的Hello World
- unity3d各种OpenFileDialog操作和Win MessageBox
- Unity IOS端 注意点
- 将NGUI的坐标转换Unity中的世界坐标
- 《Unity_API解析》 第四章 HideFlags类
- Unity3d本地存储
- 《Unity_API解析》 第三章 GameObject类
- [置顶] unity中制作序列帧动画
- [置顶] Unity中基于NGUI插件制作序列帧动画
- 碰撞检测之Ray-Capsule检测
- Unity3d MonoBehaviour 的可重写函数整理
- Unity3d中的属性(Attributes)整理
- Share 学习二:Unity shader 的组织形式
- CCIE学习笔记 3---BGP 团体属性 community
- Unity 编辑器路径设置输入框
- 反序列化多个XML文件后出现Unity卡死
- Unity性能优化专题(腾讯牛人分享经验)
- Unity3D-Android版本调用Java函数