精通独立游戏,血型,动漫,指弹吉他,篮球,涂鸦,人体音箱,魔术,塔罗牌,那该多好啊。
主页:www.rainssong.com
微博:www.weibo.com/rainssong
知乎:www.zhihu.com/people/rainssong
流氓百科:www.roguewiki.net

© 下雨的声音 | Powered by LOFTER

Unity反射配合Json实现动态执行函数。

我的思路是,策划编写脚本,类似Say("Hero","hi",15);,Unity读取后执行。这么简单的东西,其实不需要LUA,反射函数名+JSON填写参数就可以实现。但是。。。折腾了一天。

其中有半天是用于确认Unity自带的JsonUtility工具是个残废,他并不是传统意义上的Json工具,而是为了配合可序列化类而生,除此之外一无是处。

随后转投NewtonJson,可以将字符串解析为object[]了,但是作为Invoke参数时,却说转换类型失败。经过分析,虽然参数都是object[],但是里面的元素类型并不是和函数参数一致,所以还要使用Convert根据ParameterType进行一次转换。


都什么跟什么啊,就不能不要死盯着类型吗,C#你已经是成熟的语言了,应该学会自己解决类型问题。

 
评论
 
回到顶部