基于虚拟现实技术的茶文化展示
2019-01-07祝晓东
蒋 宁,祝晓东
(宁波城市职业技术学院信息与智能工程学院,浙江宁波 315110)
过去人们如果想了解茶文化知识,只能通过查阅书籍或者通过互联网查找相关资料来学习茶文化知识,但是这种通过传统方式了解和学习茶文化的方式其缺点就是不直观,不生动,并且现在有关介绍茶文化为主题的展览馆在国内各个城市里也并不普及,而通过虚拟现实技术,以茶馆为主场景,通过场景漫游、与茶文化元素进行交互来展示茶文化的博大精深,采用这种方式可以极大提高参观者的学习兴趣和互动性,进一步促进了茶文化的推广和普及。
1 茶文化的普及意义
众所周知,茶文化在中国拥有非常悠久的发展历史,它是中国的传统文化之一,作为茶饮活动过程中形成的文化特征,茶文化包括茶道、茶德、茶联、茶书、茶精神、茶具、茶画、茶学、茶艺、茶故事以及茶精神[1]。茶文化的内涵作为不可或缺的中国文化的内涵的一种表现形式。其主要是通过沏茶、赏茶、闻茶、饮茶、品茶等习惯和中华的文化内涵和礼仪相结合形成的一种具有鲜明中国文化特征的一种文化现象,因此茶文化从古至今对中华民族的日常生活具有不可替代的作用。随着现代社会人们日常生活的节奏不断加快,消费水平不断增强,生活方式发生巨大转变,人们逐渐意识到了茶叶在日常生活中的不可忽视的保健养生作用[2]。因此,茶文化的推广及普及有助于增强广大人民群众的身心健康,同时也有利于社会的和谐发展。
2 虚拟现实技术
虚拟现实技术(Virtual Reality,简称VR)属于计算机仿真技术的一个重要分支,它是利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,可以及时、没有限制地观察三度空间内的事物。由于虚拟现实技术具有很强的沉浸感以及代入感,让用户如同身历其境一般,因此虚拟现实技术目前已经应用于社会的各个领域[3],通常虚拟现实技术的实现需要经过以下三个步骤:首先是三维建模阶段,就是将欲通过VR技术展示的事物以三维模型的形态体现,这样就显得很逼真;其次就是通过编写脚本代码来实现用户与场景的交互功能;最后就是将这两个阶段进行整合,最终形成完整的虚拟现实场景及交互效果。用到的软件主要包括四类工具软件,分别是场景建模软件,其代表工具是3ds Max;人物建模软件,其代表工具是Zbrush;脚本开发软件,其代表工具是Unity3D引擎,采用的开发语言以C#为主,数据通过XML文件存储。
3 茶文化VR展示的设计
茶文化VR展示系统由VR展示系统平台、独立的茶馆场景信息以及交互设计信息三大大部分所组成。
3.1 系统平台设计框架
平台设计框架提供茶馆漫游中各个细节的功能实现以及数据接口的具体实现,如打开茶具、茶叶的拣选、读取系统配置信息等。而数据接口则实现与虚拟茶馆场景数据信息及系统配置信息的读写功能,包括将茶馆场景加载到系统当中、加载茶叶操作任务数据、操作任务角色数据等。这些数据采用外部存储的形式,包括场景数据、任务数据、界面数据、角色数据、触发数据和动作数据等,且系统中所有数据均采用XML和数据库两种方式进行保存。XML是可扩展标记语言,用于标记电子文件使其具有结构及层次性的标记语言,适合用来标记数据,定义数据类型,是一种允许用户自行定义的源语言,数据库则采用SQL SERVER数据库存储模型数据。
3.2 场景信息设计
茶馆场景信息包括了茶馆场景模型信息、茶馆中的所有交互体验倒茶信息和所有的任务角色信息。场景信息允许实时更新,通常系统更新都是发生在虚拟茶馆的场景包文件中,如茶馆场景的变化、交互体验倒茶、茶叶的拣选内容的调整或任务角色的添加删除等,这种情况下,通过场景信息设计便可以在不影响系统平台的前提下,进行茶馆场景包文件的修改。
3.3 交互操作设计
交互方面的设计主要体现为人机交互和系统间交互,人机交互通过平台中的UI设计模块、触发设计模块可以很方便的设计出各种空间触发和图形用户界面,从而为茶文化VR平台的人机交互提供了实现的依据。本平台的交互设计支持HTC VIVE设备等多种交互设备。而系统间的交互设计则体现为数据通信和数据交换的模式,本系统利用继承自“标准通用标记语言”的XML语言作为系统数据存储格式,也为本系统与其他主流系统的通信提供了数据基础[4]。通信方式上主要采用异步通信来实现本系统与其他系统进行交互。其特点是通过主从的关系进行接口数据的查询,其中发送数据的系统称为主动系统,负责发送数据,也即将接口数据保存到专门为两系统交互开辟的存储空间,接收数据的系统称为从属系统,接收从主动系统发出的数据[5]。
4 茶文化VR展示的实现
4.1 功能概述
系统平台功能框架是茶文化VR平台系统的功能核心,所有茶馆漫游以及交互的操作细节实现均由系统平台完成,而系统平台所需完成的功能绝对不仅仅是加载茶文化场景到系统中这样简单,系统平台为系统整个运行流程提供功能支持,从茶文化场景选择到茶具、茶叶的交互操作,都离不开系统平台的底层支持。
首先,系统平台需要实现茶文化场景的选择、加载和漫游功能,同时需要为与茶叶相关的交互操作完成一系列的初始化功能,如各类茶叶拣选状态设置功能、茶道学习交互初始化、任务角色初始化功能、茶具操作功能、天气模拟功能、场景传送功能等。综合以上需求,系统平台的所有底层功能实现均被封装在功能框架中,便于执行交互操作任务时实时调用及功能的维护管理。
其次,数据接口用于实现外部数据的操作,数据接口是系统功能和具体茶文化交互操作内容独立设计的基础,当第一人称角色进入茶馆虚拟场景里后,系统平台便通过数据接口将茶馆场景模型、茶文化交互操作任务内容和人物角色信息加载到系统当中。用户可以在同一个系统平台上完成同一个茶馆虚拟场景中与茶具、茶叶等体现茶文化的交互操作。
4.2 功能实现
具体实现以下十类功能:
4.2.1 茶馆场景选择
对于本系统来说,一共设计了5种类型的茶馆场景,每个场景下都可能包含有若干的与茶文化主题相关的交互操作任务,因此系统首先需要实现茶馆场景的选择功能,通过此功能可进行不同茶馆场景的选择。
4.2.2 茶馆景加载
任务开始后,系统会根据用户选择的茶馆场景加载(本地)模型文件,这一过程一般在几秒之内完成,包括茶馆的场景模型、反映茶文化道具模型及丰富的茶具、茶叶模型等。
4.2.3 茶馆场景漫游
用户可以在茶馆场景中,通过第一人称或第三人称的视角进行漫游,并在此基础上完成同茶文化相关设施的交互。
4.2.4 茶馆场景初始化
茶馆场景初始化功能实现了对茶馆场景的进一步设置,如外部环境的天气情况(晴天、阴天)、环境亮度、甚至场景背景音乐的设置,其主要通过外部场景信息中的配置信息部分获取数据以进行设置。
4.2.5 体现茶文化的模型导入
当用户在茶馆中漫游时,需要用到各种各样的体现茶文化的用具,比如茶碗、茶杯、茶桌、茶椅以及各种品牌的茶叶,这些都是通过3dmax软件制成的模型,当程序运行时,这些模型必须实现导入到场景中。
4.2.6 交互操作
主要包括导航功能、茶具摆放、茶叶拣选、茶艺视频播放、茶道文化体验等交互行为。这些交互功能都是通过Unity3D开发引擎平台,基于三层技术架构,使用C#语言实现的。
4.2.7 用户界面
场景中的许多功能是通过用户界面的一些交互组件触发的,主要包括图片按钮、文本输入框、下拉列表框、单选框、多选框、进度条等UI元素。用户界面的设计是通过PhotoShop工具软件进行设计的。
4.2.8 角色初始化
角色的初始化包括角色在虚拟茶馆场景中的起始位置、角色在本次任务中所要完成的交互任务等,在交互操作的过程中,用户以具体任务角色的形式出现在茶馆场景中的起始位置,并根据场景里的提示信息执行交互任务。
4.2.9 任务管理工具
允许用户对于茶文化交互操作任务进行管理,主要包括添加、修改和删除三个功能:添加任务功能允许用户新建一个交互操作任务,包括任务中所涉及的角色和任务中所有的交互操作项;修改必要的操作项,删除任务功能允许用户删除已有的交互操作任务。
4.2.10 定点传送
茶馆场景漫游功能允许执行交互操作时,可以在不同的场景区域之间走动,而对虚拟现实仿真系统来说,这种时间花费是完全可以避免的,场景当中的所有区域通过定点传送功能都可以实现瞬间到达,从而使得用户可以更加灵活的设置漫游区域。
5 结束语
本文将基于Unity3D的虚拟现实技术应用于茶文化的展示和学习中,以茶馆为主场景,通过场景漫游、与茶文化元素进行交互来充分展示茶文化的博大精深,将使用者带入到逼真的三维场景中,使得传统茶文化知识更加鲜活化,表现形式更加丰富多彩,提高了参与者对茶文化的了解程度和学习兴趣,通过虚拟现实系统的高沉浸感、强互动性等特质,为茶文化的学习提供了全新的数字化学习方式。