以梦为马,不负韶华

搜索
查看: 2515|回复: 4
收起左侧

playmaker与uscript使用后的比较

[复制链接]
发表于 2015-11-12 21:50:17 显示全部楼层 |阅读模式
playmaker与uscript使用后的比较
PlayMaker

优点
1
、基于PlaymakerFsm Comp**nt,内核在该组件中进行,Fsm中的设置全部序列化,不用编译。
2
、有基于实例化在场景中的GameObject所在的FsmRuntime Debugging。这个非常牛逼
比如两个同样的Fsm,但实例化出来2GameObject,选择一个后就只会Debug当前选择。
3
、进入某一个State之后,只会执行该State里的Action相应代码,不会涉及到非当前的State代码,这个比较清晰,相比uScript里所有Action.Update()都会在宿主Update的时候一起调用。
4
、有比较好的Fsm之间的通讯方式,虽然EventInfo不够详细,但可扩展。
5
、有Template之说,可以大量重用已有的解决方案。包括在一个Fsm中运行一个基于TemplateSubFsm


缺点
1
、参考优点1中所述,大量的序列化的数据保存,比如Fsm对象,StateAction都有序列化的值,可能会增加Build后的尺寸
2
FsmVariables中,无法添加Array类型。比如FsmBool[] 没有,只有FsmBool,这不是扯么~~~~。不过正在研究添加一套Array操作的Actions来解决一下。
3
、制作成Prefab之后,场景中实例出来的以及Prefab本身,都会在PlayMaker编辑器窗口罗列出来,有很多Fsm时,来回切换选择时比较麻烦,而且InstancePrefab的修改要唯一,否则很容易互相覆盖修改,导致出现奇怪的问题(特别是删减Variables时)。建议要么只修改InstanceGo,然后Apply,要么只修改Prefab来引起Instance的更新。

uScript

优点
1
、编译出最终代码,比较干净清晰,少量序列化的值
2
、能Reflect任何已有类的变量、Property、方法等,对已有插件或代码组件的支持比较好。
3
、有Nested Graph之说,可以嵌套Graph
4
uScript还比较新,才1.0.25xx的版本,可以给他一个提升的期望空间~

缺点
1
Debug不方便,不清晰,可参考playMaker优点2
2
、每个带UpdateAction,都会在宿主的Update中调用,即使未运行到该Action。如果自己写的ActionUpdate没考虑这个,增加了很多复杂操作,会拖性能。
3
、尚未发现比较现成的Graph之间的通讯方式,除了SendMessage
4
Graph中私有变量无法赋值,特别是静态资源,比如一个AudioClip变量,无法直接赋值到Asset中的xx.wav。只有’Exposed to Unity’之后,才可以在被赋予Graph对应的组件赋值,有点傻。

发表于 2015-11-12 21:50:17 显示全部楼层
向大家学习学习
回复 支持 反对

使用道具 举报

发表于 2015-11-12 21:50:17 显示全部楼层
我也来学习学习
回复 支持 反对

使用道具 举报

发表于 2015-11-12 21:50:17 显示全部楼层
还有这些功能!!!长见识啊{:1106_362:}
回复 支持 反对

使用道具 举报

发表于 2015-11-12 21:50:17 显示全部楼层
感觉好高大上啊!
回复 支持 反对

使用道具 举报

不想打字就选择快捷回复吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|以梦为马,不负韶华

GMT+8, 2025-4-6 17:31

Powered by 以梦为马,不负韶华

© 2024-2099 Meng.Horse

快速回复 返回顶部 返回列表