立体全景采集工具快速入门

了解如何使用立体全景插件采集VR图像和影片。

Windows
MacOS
Linux

SPE_Header_00.png

在下例中,我们将学习如何在UE4中设置、创建和查看立体全景截图。完成此项目后,你将创建两个立体全景图像和一个可用于以三维形式显示这些图像的材质。

1 - 项目设置

在本部分中,我们将新建一个UE4项目并对其进行设置。

步骤

  1. 在虚幻项目浏览器的 新建项目(New Project) 部分中,按以下选项新建一个空白蓝图基础项目,完成后按 创建项目(Create Project) 按钮设置并加载新项目。

    • 空白项目模板(Blank Project Template)

    • 手机/平板电脑(Mobile / Tablet)

    • 可延展3D或2D(Scalable 3D or 2D)

    • 不含初学者内容包(No Starter Content)

    单击查看大图。

  1. 项目加载完后,前往顶部菜单栏,然后转到 编辑(Edit) > 插件(Plugins) 打开插件选项。
    SPHT_Plugins_Menu.jpg

  1. 在“插件(Plugins)”菜单中,单击 影片采集(Movie Capture) 选项,在 立体全景影片采集(Stereo Panoramic Movie Capture) 部分中单击勾选复选框启用插件,然后按 立即重启(Restart Now) 按钮重启UE4编辑器。

  1. 编辑器重启后,按下键盘上的反引号键(`)打开控制台,然后输入 SP。如立体全景影片插件已成功启用,则会出现可供选择的命令列表。如未出现命令列表,则需确保已启用并重启编辑器,且使用的虚幻引擎为4.13或更高版本。

    SPHT_Check_Plugin.jpg

启用立体全景影片插件并确认其运行正常后,接下来我们将学习如何使用该插件采集立体图像。

2 - 截取立体图像

在本步中,我们将使用立体全景插件采集关卡的3D立体图像。

步骤

  1. 主工具栏 中,按下 播放(Play) 按钮,然后将玩家移动到要进行截图的区域。在本例中我们将玩家移动到静态网格体的中部,但也可以将玩家移动到任意位置。

    SPHT_Play_Game.png

  2. 按下键盘上的 反引号 键(`)打开UE4控制台,然后输入以下命令。输入命令后,按Enter键执行命令。

    • SP.PanoramicScreenshot

    SPHT_Input_Command.png

    无需完整地输入SP.PanoramicScreenshot,可以直接键入 SP.P,然后使用方向键在显示列表中选中SP.PanoramicScreenshot。选中SP.PanoramicScreenshot后,按Enter键执行命令。

  3. 在采集过程中,编辑器可能会出现数秒或数分钟的冻结或无响应状态。这是因为立体全景插件正在请求渲染要求。编辑器恢复响应后,即可在项目文件夹的以下路径中找到截图。

    • StereoPanoramaImages\Saved\StereoPanorama(截图日期和时间)

    单击查看大图。

    如果图像以缩略图预览或在图片查看器中查看时会有褪色效果,是因为立体全景插件会为输出的.PNG文件添加一个alpha通道。

    立体全景插件从每个眼睛的视点(将沿定点旋转,模拟头部围绕颈部旋转的效果)渲染场景,创建文件夹中的图像。

完成图像的创建后,下一部分我们将学习如何构建材质,使图像能够通过VR头戴显示器进行查看。

3 - 创建查看立体图像的材质

在本部分中,我们将创建并设置一个材质,以查看在上一部分中创建的立体图像。

  1. 前往项目保存的文件夹,然后在 StereoPanoramaImages\Saved\StereoPanorama(截取日期时间) 路径下找到上一部分创建的立体图像。

    单击查看大图。

  2. 找到两张图像后,将其选中并从Windows中拖入内容浏览器,将图像导入UE4项目。

    单击查看大图。

  3. 现在,在内容浏览器中单击右键,在 创建基础资源(Create Basic Asset) 部分单击“材质(Material)”选项,并将新建材质命名为 MAT_StereoViewer

    单击查看大图。

  4. 双击MAT_StereoViewer材质将其打开,在 细节(Details) 面板设置以下选项。
    SPHT_Material_Settings.png

    • 着色模型(Shading Model):无光照(Unlit)

    • 完全粗糙(Fully Rough):True

    • 使用全精度(Use Full Precision):True

    • 使用光照贴图方向性(Use LIghtmap Directionality):False

  5. 接下来,将在下图中看到的材质表达式节点添加到材质图中,并将它们连接起来,使其与下图相似。材质设置完成后,在立体视图中查看时将正确显示左右眼纹理。

    复制表达式图表

    Copy Example

    单击图像左上角的“复制表达式图表(Copy Expression Graph)”选项,可将上述材质代码复制并粘贴到材质中,从而显示所需的材质代码。

  1. 对于 StereoIndex 节点,需要使用 自定义材质表达式(Custom Material Expression) 节点,该节点在“代码(Code)”输入中输入以下HLSL代码。

    return ResolvedView.StereoPassIndex;

    CustomHLSLCode.png

  2. 为了防止两张图像相交处存在接缝,选择“纹理采样器(Texture Samplers)”,然后在 细节面板(Details Panel) 中,将 MipValueMode 设置为 导数(显式导数以计算mip等级)(Derivative(explicit derivative to compute mip level))
    StereoPano_SetMipDiv.png

  3. 现在将 TexCoordDDXDDY 材质表达式节点添加到材质图表中。然后,将它们连接到左右眼纹理采样器节点上的相应 DDXDDY 输入。

  4. 现在,在 内容浏览器 中找到左右眼纹理,并将其应用于左右眼纹理输入。完成后,按 应用(Apply)保存(Save) 按钮编译并保存材质。

    单击查看大图。

现在材质已经设置好并可以使用了,在下一部分中,我们将学习设置关卡在运行时显示材质。

4 - 关卡设置

在本步中,我们将学习设置关卡在运行时显示立体截图。

  1. 前往 主工具栏文件(File) 选项,然后从显示的列表中选中 新建关卡(New Level) 选项。

    SPHT_New_Level.png

  2. 新建关卡(New Level) 对话框出现时,选择 空关卡(Empty Level) 选项加载一个新的空关卡。

    SPHT_Blank_Level.png

  3. 单击下方的链接下载显示材质所需的静态网格体。
    SM_PhotoSphere

    此处下载的静态网格体的UV已设置,能够和创建的材质共用。您也可以使用任意静态网格体,下载此文件只为确保得到正确结果。

  4. 文件下载完成后,解压文件并将静态网格体导入内容浏览器。

    单击查看大图。

    如果收到文件中未找到平滑组的警告,可无视此警告。我们不需要此对象的平滑信息,因为其使用的是无光照着色器。

  5. 导入 SM_PhotoSphere 静态网格体后,将 SM_PhotoSphere 从内容浏览器拖入关卡,将其在场景中的位置设置为 0,0,0

    单击查看大图。

  6. 将SM_PhotoSphere放置到关卡中心后,在内容浏览器中选择MAT_StereoViewer材质,然后将其拖至“细节(Details)”面板中的 材质(Materials) 输入。

    单击查看大图。

  7. 应用“材质(Material)”后,按 在虚拟现实中播放(Play in VR) 预览按钮,然后戴上头戴显示器查看图像的立体效果。如果一切设置正确,应该不会看出关卡是仅使用两张图片渲染的,而不是使用3D对象渲染的。

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见