许晓琦 魏佳丰 吴啸宇 刘嘉森 张 帆 李 攀*
(防灾科技学院 信息工程学院,河北 三河 065201)
Virtual Reality(虚拟现实技术)是融合了构想三维世界和真实世界的虚拟仿真系统。虚拟现实技术用计算机模拟生成三维场景,融合具有交互性、沉浸性、构想性的三维动态世界和真实世界的虚拟仿真技术,让体验者沉浸在虚拟环境中。Virtual Reality 包括对人物触觉、环境交互、三维场景、传感设备等方面多种技术的综合。将Virtual Reality 技术和中国传统建筑斗拱结合,以一种新的面貌形式展示斗拱建筑文化精髓,同时能够发扬斗拱建筑的特殊柔韧性结构在抗震方面有着极其重要的作用。
斗拱具有悠久的历史文化,良好的抗震性能,地震来临时,斗拱结构能够进行相应的形变来抵消地震波。在“斗拱抗震性能体验馆”项目中,设计人员以斗拱抗震性能为核心,并从视觉,触觉等方面入手,打造了展示系统、组装系统、展览系统、三维场景系统、粒子系统、光照系统等系统。通过虚拟场景中与斗拱的交互以及设备的多元化反馈,让体验者直观感受中国古代斗拱的抗震效果和机理。此项目以斗拱抗震性能展示与模拟为核心,并从斗拱模型制作、斗拱展示、组装斗拱、观影系统、文献展览等方面进行扩展,不仅能够增加体验者对中国传统建筑斗拱的认识,更能够让体验者能够切身感受到斗拱在古代抗震方面的重要性。
本项目结合多个研究考察资料,最终参照潘德华所著《斗拱》取材进行工业化制作。其中“单拱”参照“每跳令拱上只用素方;令拱、素方为两材,令拱上枓为一栔”,按照比例进行制作,其中用令拱、交互枓、素方和正心拱各一个,散枓两个。其中交互枓制作尺寸最为复杂,其底部尺寸为14×10,外高尺寸为10,上方两边尺寸为3×18,其下方为一个梯形。
场景整体设计为复古写实风格,二层宫殿,四面环山,周围环水,庭院中种有花草树木,阳光斜透过窗户洒落在室内,给人一种宁静,柔和的氛围。项目开始后,以过场动画形式从高空俯视整个场景,将场景中美景尽收眼底。而后进入宫殿门口,寓意开始,选择体验项目后向前行走,观看途中美景,斗拱展示台在一楼室内整齐排列成两排,室内阳光微照,一束明亮的灯光照耀在斗拱上,体验者可以静下心来仔细观赏。经过多次测试后,将斗拱抗震所用的亭子在宫殿后院,体验者观赏完斗拱后可以进行抗震性能实验。
1.4.1 抗震性能演示设计。斗拱抗震性能体验馆的核心内容是斗拱的抗震性能演示,为了使得在UE4 中模拟出真实的抗震体验效果。选择用斗拱构件组装的亭子和现代结构混凝土组成的墙体来进行抗震性能演示,可以根据相应等级,将斗拱形变数值调节在0-1 之间、地震等级模拟0-8 级,在UE4 动画蓝图中进行逻辑编写展现斗拱的特殊柔韧性结构。体验者可以通过右手柄扳机按键进行地震等级的调节,调节成功后会有震感反馈,提高了VR 体验交互性,并且在交互体验的过程中,体验者的右边会出现对地震相应等级的科普介绍,丰富了体验者对地震等级的知识体系。
项目核心设计在于通过数学公式和物理公式计算抗震级数及影响,并通过编程实现,在虚幻引擎中展示相应的抗震效果,展示表明:随着地震等级的增加,混凝土组成的墙体(下文简称“墙体”)开始出现裂缝,斗拱构建组装的亭子(下文简称“亭子”)开始出现轻微形变;当地震等级超过6 级后墙体出现倒塌,亭子开始摇晃;当地震等级达到程序设定的最高等级8 级时,墙体猛烈摇晃后轰然倒塌,激起产生的烟雾。斗拱随地震等级增加,亭子形变加大,斗拱通过形变抵消一定的地震能量,减小结构的地震响应。地震等级和形变系数表如图1 所示。
图1 地震等级和形变系数表
多次实验得出结论:抗震性能关系:斗拱抗震性能>墙体抗震性能;柔韧性关系:斗拱柔韧性>墙体柔韧性;震后完整度关系:斗拱木建筑>混凝土墙体;斗拱在抗震过程中产生形变抵消地震波,减小结构地震响应;地震等级为7、8 时,斗拱形变系数为0.65、0.97;墙体形变系数为:0.11、0.15。
1.4.2 组装系统设计。组装系统设计的场景分布在环境优美的江岸上,组装台上整齐分布着单个斗拱结构,让体验者集中注意力更加专注进行组装。体验者在组装系统中可以近距离观察斗拱的单个结构,用手抓取单个斗拱结构时会提供真实反馈,可以跟随手臂进行转动,带来更加沉浸式的体验。单个斗拱结构是根据真实的比例进行工业化建模,通过程序化计算编程和读表为单个斗拱结构绑定相应的文献资料,根据公式计算斗拱所受的重力,模拟松手后斗拱会掉落在组装台上。根据提示完成斗拱结构的组装,即添加了项目的互动性,又增强了体验者对斗拱单个构架的认识与理解,斗拱组装如图2 所示。
图2 斗拱组装
1.4.3 场景引导系统设计。对于一个体验者,从不熟悉整个项目操作到开始熟悉体验项目,并能够完全独立进行体验操作,最终理解斗拱在抗震中发挥了极其重要的作用获得感悟。一个良好的场景引导系统设计,能够让体验者更快速的上手体验项目,从斗拱抗震性能体验馆项目中得到乐趣,学到知识。该项目开始首先由过场动画将镜头由远处缓缓拉至体验关卡,体验关卡的操作指南能帮助体验者更快熟悉整个项目应该如何操作,我们设计了按下左手柄扳机键可以在整个项目流程中随时查看操作指南,防止体验者在体验过程中遗忘操作步骤,玩家熟悉引导后可以自行选择关闭。无论是进入哪一个体验馆,都会有下一步提示引导体验者,整个项目全方位覆盖引导设计,降低了项目入门难度,增强了项目的体验。
1.4.4 文献系统设计。设计文献系统的初衷是为了让体验者能够从该项目中学到更多的斗拱文化和斗拱在抗震中的知识。现如今越来越多的人不愿意看纸质图书,失去了阅读文献的耐心。该项目为不同的斗拱三维模型配备了相关的文献介绍,对于如此庞大的文献资料,在项目设计过程中通过读表进行整理排列。在斗拱展示馆和文献展览馆都有文献系统,体验者在与斗拱互动的同时,能够了解斗拱的重要知识,在体验过程中进行学习。
斗拱抗震性能体验馆项目的模型主要使用3Ds Max 参照真实斗拱抗震实验,按照比例进行工业化三维建模,用AdobePhotoshop 软件完成斗拱原画设计,Substance Painter 软件制作斗拱纹理贴图输出。Substance painter 提供的大量材质能够使技术人员设计出符合要求的斗拱纹理模型,自动为斗拱匹配相应的纹理。3Ds Max 制作完成后精简斗拱UV,删除多余的点线面,调整参数和UE4 的相对应,通过游戏导出器导出为FBX格式,至此斗拱三维模型构建完成。
斗拱场景主要由宫殿模型,光照系统和材质系统构成,斗拱场景的材质由UE4 材质编辑器系统进行实现,调节材质的Texture、Metallic、Roughness、Emissive Color 等参数,调整宫殿模型的粗糙度和金属度,使得宫殿呈现木制复古颜色。斗拱宫殿模型是由3DMax 进行制作,将制作好的宫殿模型经由3Ds Max转换为FBX 格式导入到UE4 中,结合UE4 智能化光照系统进行斗拱场景的制作,此项目展现的是宋代斗拱,在光照系统中调节RGB 值使得整个场景色调调节为复古、明亮、暖色色调。将宫殿场景从3DMax 导入UE4 时应注意将模型转化为Mesh,坐标轴指定Z 轴为正方向,坐标全部归零,将贴图指定到文件夹用英文路径保存。
2.3.1 抗震性能演示实现。斗拱抗震性能演示编程核心内容在Pawn 中进行编写,将震动反馈事件绑定到手柄上,经过多次实验后得出结论,调节RunSteamVRTactileFeedback 函数的Frequenc=1.0 和Amplitude=0.9 可以使体验交互更加真实,自定义函数来调节抗震等级。斗拱特殊柔韧性在动画蓝图中进行编写,混合空间1D 将亭子Idle、Move、Quick 动画合为一个Montage,通过改变浮点型变量Amplitude 的值展现斗拱的柔韧性。将动画通过状态机混合进行播放, 可以让动画更加连贯丝滑。考虑到程序的运行效率,将调节震级和亭子柔韧性展现通过接口进行实现。地震等级调节核心程序通过SelectIndex 函数进行控制,调节地震等级后亭子和墙体变换,使程序精简。现实生活中地震导致建筑倒塌具有随机性,为使得本项目更加真实,在UE4 中编写墙体物理公式来控制墙体运动方向和裂缝倒塌的随机性。在每次运行完成之后都将地震等级参数设置成0,避免程序运行过程中出现死循环。
2.3.2 组装系统实现。斗拱组装能够让体验者更加了解斗拱结构的内部机理和抗震特性。组装系统涉及到众多数据,将该系统作为独立关卡进行制作。在Pawn 中编写核心逻辑,将每一个单独的斗拱结构贴上标签。抓取逻辑通过LineTraceForObjects函数进行线性检测,得到斗拱结构的标签,与组装斗拱的标签进行Bool 判断,结果为true 后才能进行组装。当体验者未将斗拱结构放到指定位置时会触发重力系统,斗拱结构会按照g=9.8m/s2进行自由落体。为了让体验者更快速、精准的进行组装,我们为斗拱的每一个结构都设定了一种闪光材质,闪光材质由Time 事件和正弦函数(Sin)组成,最后通过Lerp 进行每秒变换颜色。斗拱结构的介绍用读表实现,导入UE4 中的DataTable 编程进行斗拱结构和介绍一一对应。
2.3.3 场景引导系统实现。场景引导系统贯穿整个项目,所以将场景引导系统独立封装成为一个Actor。场景引导模型主要是以3DMax 制作,按压引导动画是在Maya 中完成,将模型和动画导入到UE4 中,在Actor 根组件下添加Widget 交互控件来完成手柄触碰操作。操作教学Widget 中包含3 张教学UI,每个UI之间的切换用WidgetSwitch 完成。Actor 和Widget 交互控件之间通过接口进行通讯,交互动画用时间轴进行实现。作为VR 项目,应将玩家体验放在首位,我们通过SetViewTargetwithBlend 实现切换摄像机之间平滑移动。在大量的模拟测试中发现,开始切换相机时将BlendTime 调节为2.5,最终回调相机时将BlendTime 调节为0.5 能够提高体验效果。
2.3.4 文献系统实现。文献系统是项目的重要组成部分,文献边框和背景图示在Photoshop 中制作,转化为png 格式导入UE4。我们为每一个斗拱模型都配备了相关文献因为文献众多,直接进行添加费时费力,将Excel 文献表格导入UE4,由string和int 类型组成的结构体加载为DataTable。保存数据部分编程如图3 所示,在接口中编写一套文献匹配库系统,每次只要调用该接口就会在文献匹配库进行自动配对。为使字体和项目整体风格一致,导入宋体来替换UE4 默认字体。
图3 保存数据
当今在虚拟仿真技术发展革新的浪潮中,通过虚拟仿真复原传统文化,作为一种新的内容表现形式,可以更好的吸引更多的玩家,对文化的传播起到了很好的效果。虚拟仿真斗拱抗震性能体验馆按照真实的比例进行工业化建模,并且参照真实的斗拱抗震实验,依托VR 设备,直观感受中国古代斗拱的抗震效果和机理,展现斗拱特殊的柔韧性结构体。重点在于斗拱抗震性能的效果展示与模拟。在虚拟现实设备中既便于理解中国古代宋式斗拱的组装方式以及各组件功能,又着重体现古代木建筑的抗震机理,让玩家得到更好“3I”体验的同时,也弘扬了传统文化。