码迷,mamicode.com
首页 > 其他好文 > 详细

Unity[C#] Reflection To Update Scripts

时间:2014-07-16 15:32:13      阅读:404      评论:0      收藏:0      [点我收藏+]

标签:android   http   color   使用   strong   文件   

我正在使用Unity 3D的一个项目。这个项目是一个Android的应用,它会下载AssetBundles并加载它们的内容,但由于AssetBundles不能包含脚本,我将使用预编译的C#脚本,并使用Mono反射来加载它(我不知道我会怎样,但看着办吧) 。但现在我不知道该如何预编译.cs文件,所以任何人都可以帮助我?

答:把你的脚本通过MonoDevelop / VisualStudio编译成.dll,将你script.dll复制到您的统一项目的资产文件夹,将扩展名从.dll文件到.bytes

 

根据这个手册,我可以包括脚本,二进制数据,并通过反射加载它们。我了解所有的步骤,除了一个:我怎么可以编译脚本来获取二进制数据stroring它的二进制文件。?是否有任何教程/帮助?

UPD: 实际问题都可以重新表述为:“我怎么可以编译单个文件与MonoDevelop的,并得到其字节码”

Solution:

1.Open Monodevelop and create C#Library project
      2.Add UnityEngine.dll to References
      3.Compile your scripts
      4.Copy bin/.dll from your library project folder to Assets of your unity project and change extension from .dll to .bytes
     That‘s all.

实现原理:把Scripts打包进AssetBundles中,在游戏运行时动态下载Assetbundle,通过Reflection来加载并执行其中的方法,在Android平台是可行的,但IOS是不可行的,因为Apple AppStore不允许这么做。

Unity[C#] Reflection To Update Scripts,布布扣,bubuko.com

Unity[C#] Reflection To Update Scripts

标签:android   http   color   使用   strong   文件   

原文地址:http://www.cnblogs.com/zhaoqingqing/p/3848013.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!