之前有一段时间在想可视化脚本做游戏的可行性.首先看了Playmaker,感觉非常强大,把脚本API封装成脚本组件,把判断语句也封装了.对调用流程用流程图显示,并且可以看到执行过程,我觉得这点上面做的非常好.看了其脚本的变量定义,其实我觉得她有一个缺点,她不能访问宿主变量,也就会吧底层完全分离.考虑到需求,觉得目前她不合适做大项目.
后来用了uScript,发现她是通过模块(类似UML)那样的界面做好流程,然后生成脚本代码,也就意味着她的想法是通过界面生成原生脚本,这样的优点是代码执行效率高,可以随意访问宿主变量.确实变的灵活不少.试用后发现,事件多了,变量多了,她也很麻烦,比如if((a || b || c) && d)和对象引用后,她可能要很多可视化的逻辑控制器完成.结果就是可视化界面看起来盘大无比.失去了可视化的优势.
总结:
不管是Playermaker还是后者,都有一样的问题
1,不能做宏定义.后期移植麻烦
2,不能做批量查找和替换,后期修改很麻烦.
3,不能做查找,比如找到响应的事件逻辑段.
4,对于一些不是RPG,ARPG,类型的游戏不适用.
我当初的需求其实是想有一个可视化可以图形化显示我的函数调用流程.
综合因素,我不选择可视化脚本.因为U3D已经是可视化引擎了.