Unity 如何通过反射给gameObject添加组件
更新时间:2021年04月09日 10:32:36 作者:林新发
这篇文章主要介绍了Unity 通过反射给gameObject添加组件的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!
【 如果你想靠AI翻身,你先需要一个靠谱的工具! 】
C#版本
1 2 3 4 5 6 7 8 9 | public static Component AddComponent(GameObject go, string assembly, string classname) { var asmb = System.Reflection.Assembly.Load(assembly); var t = asmb.GetType(assembly + "." + classname); if ( null != t) return go.AddComponent(t); else return null ; } |
lua版本
1 2 3 4 5 6 7 8 9 | function AddComponent(go, classname) local com = go:GetComponent(classname) if com then return com end local t = System.Type.GetType(classname) if t then return go:AddComponent(t) end return nil end |
补充:添加组件和删除组件代码unity
代码添加组件
注意没有RemoveComponent()方法。如果你想去掉一个组件,可以使用Object.Destroy。
添加组件和删除组件代码
1 2 3 4 5 | IEnumerator Start () { this .gameObject.AddComponent( typeof (Rigidbody)); yield return new WaitForSeconds(0.5F); Destroy( this .rigidbody); } |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
微信公众号搜索 “ 脚本之家 ” ,选择关注
程序猿的那些事、送书等活动等着你
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 reterry123@163.com 进行投诉反馈,一经查实,立即处理!
最新评论