摘 要:现如今,虚拟现实(VR)技术在建筑表现领域中的优势越来越明显。文章将虚拟现实技术与传统渲染技术进行了对比,强调了前者的交互性和沉浸式体验。使用了当今较流行的VR制作技术,在3ds Max中创建模型,并在Unity3D引擎中使用了Steam VR插件来编辑代码,配合HTC VIVE硬件实现虚拟现实效果。体现了虚拟现实技术在建筑表现中的先进性和实用性。
关键词:3ds Max;Unity3D;虚拟现实;Steam VR
中图分类号:TP391.9 文献标识码:A 文章编号:2096-4706(2021)06-0109-03
Research on Virtual Reality Technology in Architectural Presentation
——Take Sanshui Campus of Guangzhou College of Technology and Business as an Example
HE Liuqing
(Guangzhou College of Technology and Business,Foshan 528138,China)
Abstract:Nowadays,the advantages of virtual reality(VR)technology in the field of architectural presentation are becoming more and more obvious. This paper compares virtual reality technology with traditional rendering technology,emphasizing the interactive and immersive experience of the former. Using the more popular VR production technology,the model is created in 3ds Max,the Steam VR plug-in is used in Unity3D engine to edit the code,and the virtual reality effect is realized combined with HTC VIVE hardware. It embodies the progressiveness and practicality of virtual reality technology in architectural presentation.
Keywords:3ds Max;Unity3D;virtual reality;Steam VR
0 引 言
近几年数字图像技术飞速发展,令影视、游戏、虚拟现实的视觉效果都得到了大幅度的提升。虚拟现实基于GPU实时渲染技术,能快速显现高质量图像,并能与用户产生互动,这是传统CPU渲染无法比拟的。以3ds Max结合Unity3D引擎的流程制作建筑表现是当下虚拟现实技术的一个发展方向,同时也使建筑表现在该技术下增强了视觉效果和互动性。当GPU技术还处于初期萌芽的年代,建筑表现主要靠电脑CPU逐帧渲染动画然后合成视频。此方法具有一定的局限性,主要表现在视觉单一、无交互性、需要花费大量时间渲染合成等方面,后期修改则需要重新渲染合成。这明显增加了制作成本和制作时间,达不到现阶段社会快速出项目的要求。3ds Max常规渲染每帧至少需要一分钟,甚至更长时间,按每秒25帧计算,合成视频后每秒需要至少25分钟的渲染时长,其中包含各色彩通道的提取。如果项目有改动,则需要重新渲染,耗费大量的时间和费用。不仅渲染耗费时间,后期合成各通道和调色等也需花费大量时间,设计师大部分时间都花费在渲染和合成上,这显然是一个线性不可逆流程。这明显较难满足当今社会快节奏的要求,并且会大大增加制作成本,降低工作效率。本文从根本上舍弃传统CPU渲染流程,采用Unity3D结合插件的方式来获得更高效率的实时渲染效果,大大增加了工作效率与现场体验感。
1 传统渲染技术与虚拟现实技术对比
随着Unity3D游戏引擎的发展,它不仅可以制作高质量游戏,也可以制作影视特效,包括建筑表现方向。虚拟现实技术比传统渲染技术有着更大的优势,如交互性强、成本低、制作周期短、所见即所得等。Unity3D本身并不能生产模型和贴图之类的资产,它的实际作用是对项目资产进行整合分配,创建材质、灯光、输出产品。其中所见即所得的功能令设计师可以随时修改场景资产,并即刻得到最终效果,而且Unity3D中大量的模型库能最大限度地减少模型资产的创建,节约了大量的时间成本和制作成本。Unity3D的最大特点是沉浸式体验,能实现场景漫游并同时互动。这种效果也只能通过实时渲染来实现,常规渲染无法达到要求。对于客户来说,戴上VR眼镜能直接体验身临其境的感觉,可以从场景的任何一个位置和角度观察整体效果,犹如进入另一个真实世界。虚拟现实真实、直观的表现方式令客户和设计师进行零距离交流,去除了两者之间在交流和理解上的誤差,即时反馈并马上作出修改[1]。
Unity3D能有这样强大的优势,取决于它使用了GPU显卡结合游戏引擎的方式,即时渲染令它在游戏和虚拟现实中都立于不败之地。Unity3D对比传统渲染软件有下列几点优势:
(1)Unity3D能实现实时渲染,无须等待即可见到最终结果,但Unity3D本身不生产模型和贴图等资产。
(2)Unity3D兼容的平台较多,选择不同的输出接口就能实现,无须重新编码。
(3)Unity3D本身拥有强大的材质灯光,能更好地配合实时渲染流程。
(4)Unity3D拥有强大的笔刷散布系统,对于同一对象散布占用较少资源,相比常规渲染软件能更流畅地进行操作。
2 建筑表现使用Unity3D虚拟现实技术的可行性分析
当今市场的建筑表现对制作速度有较高要求,如使用传统渲染会大大增加渲染时间和费用成本,如转用Unity3D渲染则能最大限度地降低渲染成本,并且所见即所得会加快后期修改工作的速度,提高效率。
但在项目中使用何种方案会更适合,这不仅仅是选择软件的问题,还要视团队的总体软件使用情况而定。如团队中大部分人都使用传统渲染流程,只有极少数人使用Unity3D,则明显应选择传统渲染,这能确保能完成本次项目的所有环节并尽量少出错误。分析团队自身情况,这对于项目以后的开展是非常重要的。
对于一个能熟练使用传统渲染流程的团队而言,今后的项目是否还会继续使用老旧方案,这是值得深思的问题。学习并使用Unity3D渲染流程是未来的趋势,快节奏的都市工作对项目有越来越多的要求,所以传统渲染流程在未来的工作中会减轻比重,Unity3D流程会取而代之,获得不可估量的地位。Unity3D的学习成本较传统渲染高一些,但当其应用在工作中时,工作效率会得到极大的提升[2],而这也是未来工作流程中必不可少的软件之一。所以使用Unity3D虚拟现实技术来制作建筑表现,具有极高的可行性和实用价值。
3 在Unity3D中实现建筑表现
3.1 在Unity3D引擎中整合模型资产
Unity3D引擎是全球先进的开放式实时渲染平台之一。随着版本的不断迭代,它除了能制作游戏作品,还能为其他领域提供更多的創作空间。在建筑表现中,前期三维软件首选3ds Max软件,因为它与Auto-CAD文件能较好地兼容,能制作出更精确的场景模型。而Auto-CAD是最常用的平面图纸制作软件,虽然它也有三维功能,但与3ds Max相比效果有不少差距。因此通常是在Auto-CAD中制作好地表图纸文件,再导入3ds Max中进行三维模型的创建和修改。然后把项目资产导入Unity3D中进行整合分配,实现虚拟现实的效果。整个流框架程如图1所示。
建筑表现实现的首要条件是实时渲染,所见即所得。 Unity3D引擎结合软硬件对虚拟环境进行实时计算,为用户带来身临其境的沉浸式感受,将艺术与技术完美地融合一起。用户在使用过程中能直观有效地观察项目的各方面细节,如对项目有修改要求则能以直观的方式提出,最大程度地与项目组成员进行沟通,减少沟通过程产生的不必要环节。
模型以学校图书馆为原型,包括外墙内墙结构、书架、书桌、座椅等模型及材质贴图。在3ds Max中制作完成后导出FBX文件,再把场景模型FBX文件导入Unity3D中,调整相应的模型大小[3]。模型场景全部在Unity3D引擎中正确显示后,可对其材质做适当调整,如石材纹理和玻璃反射折射等,如图2所示。
对于三维场景的优化有两点:
(1)在3ds Max中忽略不明显的细节,同时对于主要部件模型的面数精简化。
(2)在3ds Max中不制作面数过多的植物模型,只制作一棵低面数的植物模型并导出FBX文件,在Unity3D中使用“预置”功能对该植物模型进行克隆。这样可以大大减少多边形面数的实时计算量,从而加快场景的运算速度,减少卡顿延迟现象。
3.2 SteamVR配合HTC VIVE设备进行程序开发
SteamVR Plugin是使用Unity3D进行HTC VIVE VR开发的必要工具,它以插件的形式在Unity3D中运行。HTC VIVE是HTC公司开发的VR硬件套装,包括了VR头盔、VR手柄、VR基站定位器等设备,它能与SteamVR完美结合并展现VR的真实效果[4]。
我们在开发VR代码的过程中主要是针对SteamVR的C#代码编写,而SteamVR是Steam客户端中为VR体验提供支持的运行时,当Steam检测到电脑上有VR硬件时就会自动安装SteamVR,也可以手动安装。
OpenVR不依赖特定硬件,它基于C++开发而成,是一套基础且必要的API。而SteamVR是基于OpenVR驱动API的封装,负责调用OpenVR,从而为VIVE硬件提供信息和反馈。从图3可以看出OpenVR Driver API是SteamVR的基础,后者是前者的衍生产品,我们使用SteamVR的过程大量地调用了OpenVR的接口,从而加快编程的速度[5]。
HTC VIVE硬件主要包括VR头盔、VR手柄、基站定位跟踪等。用户将相应的操作指令发送到PC端,比如行走、抓取、转换视角等[6],SteamVR通过内部运算将结果以视觉形式反馈给用户,这是一个实时跟踪的过程,如图4所示。
从图4可以看出,用户与PC端是通过VR硬件设备来实现实时无缝交互。当我们在模型场景中进行运算时,即可以实现校园建筑VR漫游的效果。
4 结 论
本文对虚拟现实在建筑表现中的相关技术作了探讨,分析了当今SteamVR与HTC VIVE硬件相结合的有效方案,在此基础上将进行更深层次的研究。使用虚拟现实技术来实现建筑表现效果,无疑增强了视觉效果,同时令用户有了沉浸感,比起2D画面视觉效果更强。虚拟现实技术的不断积累,同时也推动了相关行业的发展,在建筑表现领域值得大力推广。
参考文献:
[1] 赵俞凌,陈晓龙,姚远.VR技术视域下高职虚拟混合学习系统类型与应用研究 [J].职业技术教育,2020,41(32):62-65.
[2] 岳井峰.采用Unity3D引擎开发建筑类三维虚拟仿真实训系统研究 [J].中国管理信息化,2019,22(24):182-183.
[3] 顾凤梅,李洁.基于Unity3D的AR学习资源系统设计与实现 [J].工业和信息化教育,2020(2):91-94.
[4] 孙友昭,杨荃,王晓晨,等.轧制原理虚拟仿真实验系统设计与开发 [J].实验技术与管理,2020,37(8):133-136.
[5] 张越,陶俊,徐迅.基于Unity3D的塔防类游戏的设计与实现 [J].现代信息科技,2021,5(1):84-87.
[6] 葛岩,冯婉婷,刘红岩.基于Unity3d的虚拟实验设计与开发 [J].黑龙江科学,2018,9(24):30-31.
作者简介:何柳青(1976.12—),男,汉族,广西北海人,讲师,硕士,研究方向:计算机应用。