为了在自动战斗游戏中为用户节省时间,我们正尝试实现随时可切换倍速运行的功能。
我们计划通过“更改游戏速度”这一状态动作,设置 100% 至 300% 的倍率来实现该功能。
(前提是“更改游戏速度”动作会在“发射子弹”或“生成对象”等操作后,对新生成的对象也生效)
目前,我们仅对“Player”、“Enemy”、“PlayerBullet”和“EnemyBullet”这四个组进行了设置,
并排除了后台处理和 UI 相关的组。
实际运行后发现,“Player”和“Enemy”的动作速度确实发生了变化,
但“PlayerBullet”和“EnemyBullet”的速度却没有变化。
经调查,“更改游戏速度”动作在执行时,如果指定的组在游戏场景中不存在,
则不会生效。
(若将“PlayerBullet”和“EnemyBullet”直接放置在游戏场景中,
则通过“发射子弹”生成的对象也会受到速度调整的影响)
如果对所有组进行设置,虽然可以包括“PlayerBullet”和“EnemyBullet”,
但也会导致后台处理和 UI 对象的速度被一并改变。因此,我们希望能够针对特定组单独进行设置。
附上用于调查的项目文件:
(可确认直接放置的“PlayerBullet”速度变快,而“EnemyBullet”仍保持原速)
gamespeedtest.zip (20.8 KB)