混合现实VR Twitch视频

来源:互联网 发布:java接口的使用方法 编辑:程序博客网 时间:2024/05/13 18:26
http://m.manew.com/thread-46793-1-1.html
混合现实视频非常的酷炫。我们每周4开始在Twitch直播平台上直播制作VR游戏《Fantastic Contraption》的过程,得到的反馈让我们非常兴奋,以下是首次直播的亮点:
[media]http://static.video.qq.com/TPout.swf?vid=a0181izq5ib&auto=0[/media]


Twitch平台不只针对电子竞技和跑酷,它已经成为了一个彻头彻尾的主流营销工具,人们可以在购买游戏前通过Twitch先事先了解,参与活动,在工作或其他不能玩游戏的时候沉迷,但是几个月来,我们一直被问到是如何直播VR游戏的,尤其是使用HTC Vive是如何实现房间大小的VR环境。

标准的图片帧游戏画面+网络摄像头技术不是实现VR直播的好办法。VR游戏提供了最好的第一人称游戏视角,扭曲了玩家实际看到的东西,带上VR耳机比起一般的说话会更无趣。在记录了一些YouTube上的游戏玩法和经验后,首次结合现实生活和VR元素,我们做了一些头脑风暴。

然后准备大干一场。
0.jpg


我们的Twitch工作室:
· 400平方英尺的绿色棉布+ 2层黑色棉布。
· 4件两千瓦特的灯具。
· Logitech  C930e摄像头三脚架。
· Blue Yeti麦克风。
总共花费:1000美元。


我们的客厅有个巨大的窗户,所以要保持绿色屏幕照明一致是个很大的问题(甚至用到床单和硬纸板)。但我们发现网络摄像头在自然光线暴露较少的时候很少会发生延迟现象。


三位相机观察法   

我们的第一个试验是使用OBS直播软件连接上3个视频画面。把一个摄像头固定到三脚架上,用两个游戏中的第三人称摄像机排列和虚拟手柄控制器来同步位置。
1.png

一个游戏相机只能看到位于Vive耳机和摄像机之间的前景物体,另外两个相机则能看到天空,大地,和其它位于耳机后面的物体。为了分离它们,我们首先尝试使用一个剪辑窗格(在unity里面很容易实现)。但是这会导致半透明物体的显示问题。

更好的解决方案是在每一帧更新时通过在两个可见层级上测试它们的位置来标记整个游戏对象。通过两个游戏摄像机对同时短暂出现在两个层级上的物体即时渲染,我们解决了Unity本身存在的短暂延迟问题。

我们让游戏里的摄像机并列显示,各占屏幕的1/4.然后使用中间层的网络摄像头在OBS上将它们显示在一起。

2.jpg

我们想在视频里加入观众,所以在镜头的左侧放了一个沙发。他们能通过房间的监视器观看最终的节目。虚拟现实会让他们真正看到那种怪诞的感觉。

如果用白色的背景墙替代绿色背景,整体效果就不会那么好。在早期的测试中,我们在OBS上用50%的透明度覆盖背景游戏摄像机到网络摄像机视图,然后加上一个充分可见的前景,但明亮的房间会提高网络摄像头的延迟,如果网络摄像头明显滞后于游戏摄像机的时候,这很可能是一个问题。

游戏中移动平面的处理方法

我们的下一个视频会尝试在游戏里进行节目直播,通过chromakey软件处理后我们能将视频显示在游戏中的移动平面上。非常感谢Edwon提供的建议和帮助。这种单游戏摄像技术能有效消除在可见层之间翻转物体时造成的影响,而且会增加我们的屏幕输出分辨率,因为可以使用全屏幕来显示。这里是它的实现原理(由Edwon提供):


3.gif
4.gif


还有个挑战是地上在草坪下方的脚没有被隐藏掉。我们通过将网络摄像头镜头裁剪一半,上面的一半显示上面的摄像头,下面的一半让它半躺在地上,倾斜摄像机角度来实现。


其他工具

我们在视频里添加了一些游戏里的工具,包括只有玩家能看到的Twitch弹幕,这样他们可以回应给每个人看。我们也有导演控制摄像机画面,让我们看到的画面在各个游戏摄像头之间切换:有第三人称混合视角,第一人称视角,第三人称飞行视角,用来显示玩家替身。就像Twitch的评论面板,只有玩家可见(它看起来像一个飞行的眼球)。

我们希望能看到更多的VR游戏加入Twitch的VR游戏平台,我们会很高兴看到一些新的想法,并继续关注更多混合现实实践的直播。
1 0