有没有办法在 Unity 中将游戏对象从透视无缝更改为正交?

问题描述 投票:0回答:1

我需要在两个视角之间转换的帮助。我已经搜索过但找不到解决方案。

我正在开发一款带有类似跳棋棋子的棋盘游戏。我将主相机模式设置为透视。当一个棋子需要离开游戏时,我会把它拖到屏幕底部,在那里我有一堆取出的所有棋子,此时它应该飞过并旋转到正确的位置。问题在于,堆栈位于另一层上,只能由第二台相机在正交模式下查看(堆栈在透视中看起来不正确)。我可以切换该作品的图层,但随后它会跳转到屏幕上(或屏幕外)的不同位置,并且其出现的旋转会发生巨大变化。

我希望能够调整该片段的位置和旋转,以便在更改图层时它看起来不会移动或旋转。

一旦发生变化,我可以将其动画设置到正确的位置并无缝旋转。但向正字法的转变非常不稳定。我唯一的解决方案是在屏幕外进行,但它看起来很笨拙。 有没有办法改变视角但让作品看起来不变? 谢谢

c# unity-game-engine perspective orthographic
1个回答
0
投票

这听起来很难实现。

我可以想象一个带有第三个摄像头的复杂解决方案 - 目前只有一个粗略的描述,但我稍后会尝试扩展它

  • 将透视块移动到目标位置
  • 然后将其切换到专用的过渡层
  • 启用第三个相机,仅渲染过渡层并从透视过渡到正交(可以通过
    Camera.projectionMatrix
    实现此目的)
  • 然后再次禁用第三个摄像头
© www.soinside.com 2019 - 2024. All rights reserved.