Unity问题求助:无需父对象,多隧道面板恒定旋转异常
隧道面板旋转异常问题
问题现象
我制作了一个由6块面板组成的隧道,希望让这些面板绕屏幕中心的玩家对象旋转,采用的方法是给每个面板单独施加相同角度的旋转。但实际运行中,有3个面板的旋转效果完全符合预期,另外3个的旋转表现却完全不符合预期;而且可以在Inspector面板中看到,异常面板的旋转参数与正常面板呈完全镜像状态。
相关代码
for (int n = 0; n < listOfPanels[i].Count; n++) { // 输入值范围为-1到1 float input = Input.GetAxisRaw("Horizontal"); var currentList = listOfPanels[i]; var panel = currentList[n]; float amountToRotate = speed * input * Time.deltaTime; panel.Rotate(0f, 0f, amountToRotate); }
已尝试的解决方案
- 反转异常面板的旋转方向,但完全没有效果
- 尝试将所有面板设置为单个父对象的子对象,或是给每个面板单独设置父对象,通过旋转父对象来实现整体旋转,但该方案不可行:由于需要锁定相机,旋转父对象会导致面板位置发生变动,大角度旋转时面板位移明显,效果非常突兀;之前以为给每个面板单独设置父对象是解决办法,实际上只是让问题更难察觉,并未真正解决
内容的提问来源于stack exchange,提问作者Amazeing Games
相关产品推荐
相关产品推荐

