【发布时间】:2020-05-16 01:06:17
【问题描述】:
今天早上我在 Twitter 上看到了以下动画。这是一种Möbius strip的效果。
这很酷!不是吗?所以我决定使用 Unity 构建类似的东西,只是为了好玩。我想只使用相机来构建效果,因为这样我们可以将它用于任何旋转场景。第一步是创建一个圆形场景并使其旋转:
请注意,相机使用正投影,因此透视不会使其变形。这很重要,因此我们可以稍后合并不同的视图。
然后我用两个不同的主摄像头替换了主摄像头,它们位于相反的位置(水平和垂直)并渲染到纹理。一个带有两个面板(垂直划分)的简单 Canvas 显示了部分结果(每个面板一个相机纹理):
我知道这很酷,但还不完美,因为渲染输出的中心清楚地显示了一个面板在哪里完成,另一个面板从哪里开始。查看上面渲染输出的中心。
最初的灵感视频在中心没有显示透视,我认为这是诀窍,但我无法使用正交相机实现这一点(或者我不知道如何)。
你知道有什么方法可以扭曲相机或类似的东西,所以相机在场景的中间是垂直的(而且只在中间)?你能想出一个解决方案来掩盖两个相机视图的联合吗?
注意:
作为第一种方法(暂时取消),我尝试添加另一个相机,垂直于场景,因此在该点没有透视。然后我在 UI 中的另一个面板中呈现它的输出,位于之前的面板之上。而且还不错,但是关节太明显了,现在我有两个关节而不是一个:
有趣的挑战,对吧?有解决问题的办法吗?
【问题讨论】:
-
重叠渲染和混合
-
我认为您还需要为每个相机设置不同的灯光,以便获得匹配的阴影等
-
使用着色器图并混合 2 个纹理。类似于answers.unity.com/storage/attachments/116499-overlap2.png 的东西。播放透明度或使用一些 Alpha 通道。