【发布时间】:2016-06-15 00:26:33
【问题描述】:
Unity3d。移动的。
赛跑者游戏。有一些类型的对象,如汽车、BG、场景、食物、障碍物、powerUps 等等。和动作,可以由不同的对象使用或不使用。
从一开始 - 我正在做很多不同的脚本,如“sizeChanger”或“Sprite flipper”,几乎所有人都使用不同的2D colliders,其中一些正在跟踪Player position.x。
问题的情况是,活动中的某些操作正在重复操作,例如跟踪 Player position.x。
所以我制作了一个灵活的脚本,其中有 public enum ObjectType,其中在 Awake、Start、Update、OnTriggerEnter2D、OnTriggerExit2D 中有 switch(ObjectType) ...因此在我的场景中有很多 @ 987654327@ 与 same 脚本与不同的ObjectType 语句。
这是否会更慢或性能差异不值得担心? (作为一个小问题,我没有备份可以在带有大量脚本的旧版本上测试 FPS。)
【问题讨论】:
-
在我看来,通常较小的脚本更适合我,因为长脚本意味着更难检查。但这只是 IMO。
-
我不明白您要做什么,但是将所有内容放在一个脚本中,复制粘贴和根据您的 ObjectType 在行为之间切换是个坏主意。
-
您为什么不测试并找出答案?您没有旧版本不是借口,我们也没有。因此,如果您真的想知道,请测试这两种情况。
-
嗨 Dmitriy ...没有区别。 (或者只有很小的差异。)
-
建议您“勾选”您自己的答案(可以这样做)以帮助保持板子整洁,谢谢
标签: c# performance optimization unity3d