CN115690375B - 基于虚拟现实技术的建筑模型修改交互方法、系统及终端 - Google Patents
基于虚拟现实技术的建筑模型修改交互方法、系统及终端 Download PDFInfo
- Publication number
- CN115690375B CN115690375B CN202310010456.5A CN202310010456A CN115690375B CN 115690375 B CN115690375 B CN 115690375B CN 202310010456 A CN202310010456 A CN 202310010456A CN 115690375 B CN115690375 B CN 115690375B
- Authority
- CN
- China
- Prior art keywords
- virtual
- building
- user
- scene
- handheld
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B20/00—Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
- Y02B20/40—Control techniques providing energy savings, e.g. smart controller or presence detection
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了基于虚拟现实技术的建筑模型修改交互方法、系统及终端,涉及建筑设计建模领域,解决了相关技术中用户无法修改虚拟建筑元素的形态和组成的问题,其技术方案要点是:构建带有三维建筑模型和环境信息的虚拟建筑场景;获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改。本发明基于用户的语音指令来识别对应的交互操作,再结合手持交互设备的触发指令和语音指令对应的交互操作对虚拟建筑元素的形态和组成进行修改,从而使得用户可根据自己的设想改变虚拟建筑元素的形态和组成。
Description
技术领域
本发明涉及一种建筑设计建模领域,更具体地说,它涉及基于虚拟现实技术的建筑模型修改交互方法、系统及终端。
背景技术
现有的建筑设计方法中,缺少了最终用户的参与,容易造成建成结果与最终用户需求不匹配的问题。虚拟现实是一种以计算机技术为基础,可以模拟现实环境,并允许用户通过各种感官与虚拟环境进行交互的数字技术,有助于解决建筑设计过程中空间尺度感知和用户意愿表达的问题。在最终用户参与设计的过程中,虚拟现实技术可以为用户提供具体的建筑仿真数据,允许用户直观地感受空间尺度。通过设定与真实世界保持一致的数字环境,用户可以更精准地评估设计的空间,减少后期施工变更的成本。
在相关技术中,也存在一些基于虚拟现实技术的建筑设计方法,将模型进行处理与导出,然后进行Unity场景搭建与模型分级,并且编写脚本实现手势操作,最后部署到终端设备上进行演示。上述方法中模型交互操作包括对模型的移动手势、旋转手势、缩放手势、进入手势、行走手势。
上述相关技术的交互方式下用户仅能查看建筑模型本身的信息,用户无法根据自己的设想改变虚拟建筑元素的形态和组成,不足以支撑用户与设计师就建筑方案的设计的进一步讨论。因此,如何使用户可以修改虚拟建筑元素的形态和组成是目前急需要解决的问题。
发明内容
本发明为了解决相关技术中用户无法修改虚拟建筑元素的形态和组成的问题,提供了基于虚拟现实技术的建筑模型修改交互方法、系统及终端,本发明在带有三维建筑模型和环境信息的虚拟建筑场景中配置了可对虚拟建筑元素的形态和组成进行修改的交互操作,基于用户的语音指令来识别对应的交互操作,再结合手持交互设备的触发指令和语音指令对应的交互操作对虚拟建筑元素的形态和组成进行修改,从而使得用户可根据自己的设想改变虚拟建筑元素的形态和组成。
本发明的上述技术目的是通过以下技术方案得以实现的:
本申请的第一方面,提供了基于虚拟现实技术的建筑模型修改交互方法,方法包括:
构建带有三维建筑模型和环境信息的虚拟建筑场景;
获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改。
在一些可能的实施方案中,构建带有三维建筑模型和环境信息的虚拟建筑场景,具体包括:
获取由多边形面构成的第一三维建筑模型,将第一建筑模型的多边形面转换为三角形面,得到由三角形面构成的第二三维建筑模型;
获取三维图像数据,将第二三维建筑模型与三维图像数据集成,得到带有第二三维建筑模型和环境信息的基础场景;
将带有第二三维建筑模型和环境信息的基础场景转化为虚拟现实场景,得到带有三维建筑模型和环境信息的虚拟建筑场景。
在一些可能的实施方案中,将第二三维建筑模型与三维图像数据集成,得到带有三维建筑模型和环境信息的基础场景,具体为:
利用Unity软件的转换操作对第二三维建筑模型和三维图像数据的属性进行修改,其中转换操作包括修改第二三维建筑模型的比例信息、材质信息和光照贴图信息,以及修改三维图像数据的格式;
将属性修改后的第二三维建筑模型和三维图像数据集成在一起,得到带有第二三维建筑模型和环境信息的基础场景,其中环境信息包括天空信息、建筑基地信息和地面信息;
将带有第二三维建筑模型和环境信息的基础场景转化为虚拟现实场景,具体为:通过配置虚拟现实组件的方式将基础场景转化为虚拟建筑场景。
在一些可能的实施方案中,获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改,具体包括:
在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行文字绘制和距离测量时,利用手持交互设备在虚拟建筑场景中执行第一交互操作,以完成对虚拟建筑场景中的虚拟建筑元素的文字绘制和距离测量的交互操作,其中第一交互操作包括标注、标签和测量;
在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行修改时,利用手持交互设备在虚拟建筑场景中执行第二交互操作,以完成对虚拟建筑场景中的虚拟建筑元素修改的交互操作,其中第二交互操作包括删除、建模、墙体和楼板;
在用户语音指令为在虚拟建筑场景中对虚拟装修元素进行调整时,利用手持交互设备在虚拟建筑场景中执行第三交互操作,以完成对虚拟建筑场景中的虚拟装修元素修改的交互操作,其中第三交互操作包括材料和家具。
在一些可能的实施方案中,在识别到用户语音指令为标注时,创建一个预制体组件,由用户语音指令激活预制体组件跟随手持交互设备的空间位置,等间隔记录手持交互设备的多个空间位置,并在每个空间位置之间绘制线条;
在识别到用户语音指令为标签时,由用户语音指令激活手持交互设备的虚拟光线,设置预制体组件的位置跟随手持交互设备的空间位置;
在识别到用户语音指令为测量时,在测量起点处生成一个带有碰撞体的第一空物体,在测量终点处生成一个带有碰撞体的第二空物体,在起点与终点之间利用渲染的方式显示线条,并在线条中部上方的位置复制一个文本来显示线条长度数值。
在一些可能的实施方案中,在识别到用户语音指令为删除时,开启手持交互设备的虚拟光线,并在检测到用户在手持交互设备所产生的触发指令时,将虚拟光线所指向的物体删除;
在识别到用户语音指令为建模时,根据用户第一次产生触发指令时虚拟光线的指向点的三维位置确定为起点,以及用户第二次产生触发指令时虚拟光线的指向点的三维位置确定为终点,将起点与终点之间的中点确定为方块的三维位置,并实时计算手持交互设备和方块的三维位置的差值关系,在手持交互设备和方块的三维位置的任意一个差值的绝对值小于余下两个差值的绝对值,判定手持交互设备的三维位置位于方块的差值的最小方向上,改变方块的比例属性和位置属性,使其跟随手持交互设备进行变化;
在识别到用户语音指令为墙体时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体以及在虚拟光线指向的碰撞点处生成一个正立方体,在两个正立方体之间的中点位置自动创建长方体以确定墙体的长度,当再次获取到手持交互设备发出触发指令时,根据手持交互设备发射的虚拟光线的指向高度确定为墙体的高度;
在识别到用户语音指令为楼板时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体,根据虚拟光线的碰撞点和手持交互设备的位置的差值来判断虚拟光线的指向点和碰撞点之间的坐标数量关系,根据坐标数量关系生成一个跟随碰撞点的位置实时变化的面板,当用户再次产生触发指令时,基于虚拟光线的指向点的位置确定楼板的大小和位置。
在一些可能的实施方案中,在识别到用户语音指令为材料时,开启手持交互设备的虚拟光线选择材质球,并指向需要改变材质的物体,依据所选择的材质球替换物体的材质;
在识别到用户语音指令为家具时,开启手持交互设备的虚拟光线选取家具,并实时判断用户是否指向家具类型,在获取到触发指令时复制所选取的家具,直至再次获取触发指令确定家具的位置。
在一些可能的实施方案中,方法还包括:
建立对虚拟建筑场景的虚拟建筑元素进行修改后的本地数据与远程数据的映射关系,以此同步虚拟建筑元素上的变化,将本地数据传输到云端服务器,再同步到多个客户端进行远程联机,以实现远程同步和多人交互的虚拟建筑场景。
本申请的第二方面,提供了基于虚拟现实技术的建筑模型修改交互系统,包括:
虚拟场景构建模块,用于构建可实现虚拟现实漫游的虚拟建筑场景;
交互操作模块,用于获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改。
本申请的第三方面,提供了一种计算机终端,包括:存储器及处理器,所述存储器上存储有计算机程序,所述计算机程序能够被所述处理器执行,以使得所述处理器实现如本申请的第一方面中任一项所述的基于虚拟现实技术的建筑模型修改交互方法。
与现有技术相比,本发明具有以下有益效果:
1、本发明在带有三维建筑模型和环境信息的虚拟建筑场景中配置了可对虚拟建筑元素的形态和组成进行修改的交互操作,基于用户的语音指令来识别对应的交互操作,再结合手持交互设备的触发指令和语音指令对应的交互操作对虚拟建筑元素的形态和组成进行修改,从而使得用户可根据自己的设想改变虚拟建筑元素的形态和组成,本发明基于获取用户语音指令来识别对应的交互操作,降低了用户的使用难度,利用手持交互设备的虚拟光线和触发指令作为控制手段,提高了物体选择的精度,能够更加有效精准地解决交互问题。
2、本发明采用云端服务器作为数据中转,将不同客户端的用户交互信息进行了同步,有效促进了设计师与用户就虚拟建筑场景中的虚拟建筑方案的交流。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1为本申请实施例提供的基于虚拟现实技术的建筑模型修改交互方法的流程示意图;
图2为本申请实施例提供的构建带有三维建筑模型和环境信息的虚拟建筑场景的流程示意图;
图3为本申请实施例提供的基于虚拟现实技术的建筑模型修改交互系统的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
在相关技术中,也存在一些基于虚拟现实技术的建筑设计方法,将模型进行处理与导出,然后进行Unity场景搭建与模型分级,并且编写脚本实现手势操作,最后部署到终端设备上进行演示。上述方法中模型交互操作包括对模型的移动手势、旋转手势、缩放手势、进入手势、行走手势。
上述相关技术的交互方式下用户仅能查看建筑模型本身的信息,无法根据自己的设想改变虚拟建筑元素的形态和组成,不足以支撑用户与设计师就建筑方案的设计的进一步讨论。因此,本申请实施例提供了一种基于虚拟现实技术的建筑模型修改交互方法,可以修改虚拟建筑场景中虚拟建筑元素的形态和组成。
本实施例中,先对现有技术中的一些技术术语进行解释,本实施例所使用的开发工具为Sketch Up和Unity,使用的虚拟现实设备为Oculus Quest 2。其中Sketch Up是一款三维建筑模型创建软件。Unity是一款能够集成三维资源的内容分发平台,可对接虚拟现实环境并实现快速的开发流程。虚拟现实设备Oculus Quest 2是头戴式显示器一体机,可以脱离电脑或手机独立运行。
手持交互设备,例如手柄上的按键,按键包括触发按键Trigger键与控制按键Grip键,按下Trigger键可使手柄发出虚拟光线,持续按压可使虚拟光线的激发状态持续,抬起则可释放功能,上述实施方式手持交互设备的基本功能,属于现有技术,故不做进一步的详细叙述。
请参考图1,图1为本申请实施例提供的基于虚拟现实技术的建筑模型修改交互方法的流程示意图;如图1所示,方法包括:
S110,构建带有三维建筑模型和环境信息的虚拟建筑场景。
在本实施例中,请参考图2图2为本申请实施例提供的构建带有三维建筑模型和环境信息的虚拟建筑场景的流程示意图,如图2所示,方法包括:
S111,获取由多边形面构成的第一三维建筑模型,将第一建筑模型的多边形面转换为三角形面,得到由三角形面构成的第二三维建筑模型。作为一种具体的实施方式,利用Unity软件的转换操作对第二三维建筑模型和三维图像数据的属性进行修改,其中转换操作包括修改第二三维建筑模型的比例信息、材质信息和光照贴图信息,以及修改三维图像数据的格式。
具体的,输入SKP格式的多边形面构成的第一三维建筑模型,利用Sketch Up软件的导出功能将建筑模型的多边形面转换为三角形面,输出的格式为FBX格式且为三角形面构成的第二三维建筑模型。
本实施例中,主要目的是将构成建筑模型的多边形面转化为统一的三角形面,以匹配Unity的控制环境。
步骤S111的必要原因是Sketch Up作为专业的建模软件生产的模型数据格式与Unity不匹配,需要对模型进行数据格式转化才可以在Unity中进行调用。首先在SketchUp中选择导出功能,将导出的格式设置为FBX格式,导出单一的模型面和材质资源包。然后在Unity中,将模型导入到资源面板,模型的材质需要设置为导出的材质资源包。最后将带有材质信息的建筑模型设为预制体组件,并导入到场景中。
S112,获取三维图像数据,将第二三维建筑模型与三维图像数据集成,得到带有第二三维建筑模型和环境信息的基础场景。作为一种具体的实施方式,将属性修改后的第二三维建筑模型和三维图像数据集成在一起,得到带有第二三维建筑模型和环境信息的基础场景,其中环境信息包括天空信息、建筑基地信息和地面信息。
具体的,在建筑设计交流的过程中需要针对方案进行讨论和修改,必要的基础环境呈现了建筑模型信息和基地信息,可以为用户的交互操作提供信息输入基础,因此,具体实现如下:
首先设定建筑模型的比例。Sketch Up软件导出的模型单位是毫米,而Unity的单位是米,因此需要在Unity中调整建筑模型属性面板的缩放数值为0.1,以将建筑模型对应到真实的尺寸。
建筑模型的数据特征为单面显示且带有光照贴图,建筑模型需要配合全景基地照片布置。三维图像数据是利用无人机的拍摄得到的,主要是在基地上方25m的高度以全景模式拍摄26张不同角度的照片,然后利用全景照片生成软件PTGui根据角度拼合图像,最后导出带有基地周边信息的三维图像数据。三维图像数据的数据特征为球形拼接照片,包括基地上方天空、基地周边环境、基地地面。
其次,将三维图像数据设置到基础环境中。在Unity中创建新的材质,并将该材质的着色器设置为天空盒格式,然后将拼合完成的全景照片设置到该材质中。完成全景基地材质设置以后,在光照面板中把该全景基地材质设置为当前场景的天空盒,实现真实照片下的基础环境,该场景的数据特征为带有三维图像数据的建筑模型场景。
S113,将带有第二三维建筑模型和环境信息的基础场景转化为虚拟现实场景,得到带有三维建筑模型和环境信息的虚拟建筑场景。作为一种具体的实施方案,通过配置虚拟现实组件的方式将基础场景转化为虚拟建筑场景。
本实施例的主要目的是构建可以进行虚拟现实漫游的基础建筑环境,以便用户能够进行沉浸式的体验,为后续的交互设置提供基础。本实施例的具体操作是,首先在Unity的资源面板中搜索并导入Steam VR组件。然后删除原有摄像机并将Steam VR组件中的Player第一人称视角模块导入到场景面板中作为虚拟现实摄像机。最后添加Steam VR组件中的Teleport远距离传送模块,并为建筑模型设置传送范围。
S120,获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改。
在本实施例中,可配置语音监测脚本来获取用户语音指令,语音监测脚本是指在Unity场景中添加空物体挂载的麦克风录制与转换脚本,其逻辑是在Update函数中编写麦克风录音和数据联机传送方法,并解析从云端服务器传回的数据,作为交互行为的输入信息。
对于获取用户语音指令,示例性的,首先,初始化常量信息。从百度云智能平台中申请获得的API Key和Secret Key设置为字符串类型的参数,并通过这两个字符串获取URL请求地址中的Token参数,以请求百度AI语音识别API。然后,编写使用和停止麦克风录制声音的方法。使用麦克风开始录音的方法需要调用Unity提供的Audio Clip音频系统,具体而言,设置麦克风参数,并将麦克风获取的语音数据保存到Clip变量中,用于后续调用。停止麦克风录制声音的方法主要内容是暂停麦克风的录制并发送录音进行识别。最后,传入语音数据流并对数据进行操作以符合百度语音识别API的要求。具体方法是将录音文件的格式设置为pcm格式,并调整采样率为16000固定值,编码设置为16bit位深的单声道。
可通过配置模型交互脚本来实现在虚拟建筑场景中配置交互操作,配置模型交互脚本是指在虚拟现实摄像机物体上,挂载的命令执行脚本,其逻辑是根据语音输入信息和手持控制器按键输入信息,改变虚拟对象的位置、缩放、旋转状态,输出信息三维模型的形态变化。
从而得到带有语音指令输入和交互操作控制的虚拟现实建筑场景,即是一种挂载了语音监测脚本和命令执行脚本的虚拟建筑场景,带有三维建筑模型、三维图像数据、虚拟现实摄像机、远程传送模块、语音监测模块和命令执行模块。
作为本领域技术人员应明白,将上述步骤S120的可对虚拟建筑元素进行修改的虚拟建筑场景,可通过打包Unity资源并运行Steam VR软件和Oculus软件的方式将手持交互设备的交互数据映射到虚拟现实场景中,可以输出可直接体验且带有交互操作设置的虚拟现实场景。以便用户可以根据自己的设想改变虚拟建筑元素的形态和组成。
综上所述,本实施例提出的基于虚拟现实技术的建筑模型修改交互方法,构建了交互式的虚拟建筑场景,能够让用户在方案建成前就进行感知体验,更加直观和深入地呈现了建筑方案。用户在和建筑方案进行交互操作的过程中,可以通过修改建筑元素改变空间效果,直接表达设计的需求。用户的亲身参与和修改,解决了传统设计方法中,用户和设计师的交流障碍,提高了设计讨论的效率。虚拟现实的强交互性,也促进了用户对空间方案的实时修改,进一步发展了用户的需求表达,提高了用户的体验感。
在一个实施例中,获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改,具体包括:
在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行文字绘制和距离测量时,利用手持交互设备在虚拟建筑场景中执行第一交互操作,以完成对虚拟建筑场景中的虚拟建筑元素的文字绘制和距离测量的交互操作,其中第一交互操作包括标注、标签和测量;
在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行修改时,利用手持交互设备在虚拟建筑场景中执行第二交互操作,以完成对虚拟建筑场景中的虚拟建筑元素修改的交互操作,其中第二交互操作包括删除、建模、墙体和楼板;
在用户语音指令为在虚拟建筑场景中对虚拟装修元素进行调整时,利用手持交互设备在虚拟建筑场景中执行第三交互操作,以完成对虚拟建筑场景中的虚拟装修元素修改的交互操作,其中第三交互操作包括材料和家具。
在本实施例中,当用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行文字绘制和距离测量时,是为了方便设计师和用户就一些建筑场景中的一些建筑元素进行讨论,例如在一个平层内,如何就墙体的分布、墙体的长度等进行讨论和模拟。
当用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行修改时,主要作用是为了实现删除和创建建筑空间中的墙体、楼板,可根据用户意愿创建自定义的建筑模型。
当用户语音指令为在虚拟建筑场景中对虚拟装修元素进行调整时,由于本申请的方法是应用于建模模型,例如住房建筑、写字楼建筑或是一些别的建筑,其内部的装修风格也是用户的重点关注对象,故此,本实施例设计细节交互操作,按照设计细节交互操作分为材料、家具。其主要作用是调整和修改室内设计的硬装与软装,硬装可以是家具、灯具等,软装可以是家具的材质、灯具的种类。
在一个实施例中,在识别到用户语音指令为标注时,创建一个预制体组件,由用户语音指令激活预制体组件跟随手持交互设备的空间位置,等间隔记录手持交互设备的多个空间位置,并在每个空间位置之间绘制线条。
具体的,逻辑是创建一个带有Line Renderer的预制体组件,由语音命令触发以后激活该预制体跟随手持交互设备的位置,线渲染器每隔0.2秒记录一次手柄的空间位置作为一个点,然后在每个点之间绘制线条,显示绘制的线条轨迹。
在识别到用户语音指令为标签时,由用户语音指令激活手持交互设备的虚拟光线,设置预制体组件的位置跟随手持交互设备的空间位置。
本实施例中,标签用于在人身范围以外的地方进行文字绘制,在接收到语音指令以后,激活虚拟光线,设置Lin Renderer预制体组件的位置跟随虚拟光线和物体的碰撞点,以实现在远处物体表面绘制文字的效果。
在识别到用户语音指令为测量时,在测量起点处生成一个带有碰撞体的第一空物体,在测量终点处生成一个带有碰撞体的第二空物体,在起点与终点之间利用渲染的方式显示线条,并在线条中部上方的位置复制一个文本来显示线条长度数值。
测量用于计算并显示两个物体之间的距离,利用手柄的虚拟光线碰撞检测的方式,在测量起点处生成1个带有碰撞体Sphere Collider的空物体,在终点处同样生成1个带有碰撞体Sphere Collider的空物体,然后在两点之间使用线条渲染Lin Renderer方法显示线条,在线条中部上方的位置复制1个Text的材质用于显示线条长度数值。
在一个实施例中,在识别到用户语音指令为删除时,开启手持交互设备的虚拟光线,并在检测到用户在手持交互设备所产生的触发指令时,将虚拟光线所指向的物体删除。
本实施例中,删除是用于删除虚拟建筑场景中用户所指定的物体,交互方式是利用虚拟光线指向并删除物体,由语音监听脚本监听用户的语音指令,在识别到语音指令的关键词是删除时,开启手柄的虚拟光线,然后检测Trigger按键,若用户按压Trigger按键,则锁定虚拟光线碰撞到的物体,利用Destroy方法直接删除。
在识别到用户语音指令为建模时,根据用户第一次产生触发指令时虚拟光线的指向点的三维位置确定为起点,以及用户第二次产生触发指令时虚拟光线的指向点的三维位置确定为终点,将起点与终点之间的中点确定为方块的三维位置,并实时计算手持交互设备和方块的三维位置的差值关系,在手持交互设备和方块的三维位置的任意一个差值的绝对值小于余下两个差值的绝对值,判定手持交互设备的三维位置位于方块的差值的最小方向上,改变方块的比例属性和位置属性,使其跟随手持交互设备进行变化。
在本实施例中,建模用于创建任意大小的模型,交互方式是通过对基础三维模型进行推拉操作来改变模型的长度、宽度和高度,在识别到用户语音指令的关键词是建模时,根据用户第一次按压手柄Trigger键时手柄的三维位置确定方块的起点,用户第二次按压Trigger键时手柄的三维位置确定方块的终点,然后将两点之间的中点设置为初始方块的三维位置并实时计算手柄三维位置和方块三维位置的长宽高的差值关系,若手柄和方块位置的任意一个差值的绝对值小于其他两个差值的绝对值,则判定手柄位置位于该方块的差值的绝对值最小方向上,此时改变方块的比例属性和位置属性,跟随手柄进行变化,实现推拉建模。
在识别到用户语音指令为墙体时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体以及在虚拟光线指向的碰撞点处生成一个正立方体,在两个正立方体之间的中点位置自动创建长方体以确定墙体的长度,当再次获取到手持交互设备发出触发指令时,根据手持交互设备发射的虚拟光线的指向高度确定为墙体的高度。
在本实施例中,主要是用于实现墙体模型创建,交互方式是用虚拟光线选择墙体的起始创建点,选择长度和高度,以此确定墙体的三维模型。
在识别到用户语音指令为楼板时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体,根据虚拟光线的碰撞点和手持交互设备的位置的差值来判断虚拟光线的指向点和碰撞点之间的坐标数量关系,根据坐标数量关系生成一个跟随碰撞点的位置实时变化的面板,当用户再次产生触发指令时,基于虚拟光线的指向点的位置确定楼板的大小和位置。
在一个实施例中,在识别到用户语音指令为材料时,开启手持交互设备的虚拟光线选择材质球,并指向需要改变材质的物体,依据所选择的材质球替换物体的材质;
在识别到用户语音指令为家具时,开启手持交互设备的虚拟光线选取家具,并实时判断用户是否指向家具类型,在获取到触发指令时复制所选取的家具,直至再次获取触发指令确定家具的位置。
具体的,在识别到用户语音指令为材料时,用户持续按压Trigger键使虚拟光线点选材质球时,判断材质球附加的Tag类型,然后依据Tag类型确定后续改变的材质种类,若该物体具有Mesh Renderer组件,则将其中的Material替换为材质球的材质,实现材质的改变。
在识别到用户语音指令为家具时,其交互方式是利用右手的虚拟光线从左手的菜单面板上选取意向家具类型,通过按压Trigger键激活家具,然后家具的位置会跟随虚拟光线末端,直到用户再次按压Trigger键确定家具的位置。代码的具体实现逻辑是在接收到语音命令以后,激活虚拟光线,系统实时判断用户是否指向了菜单中的家具物体,若有按压Trigger的行为发生,则利用Instantiate方法复制Resource中的家具对应预制体Prefab,其后家具的位置跟随射线末端,直到用户再次按压Trigger键确定家具位置。
在一个实施例中,方法还包括:
建立对虚拟建筑场景的虚拟建筑元素进行修改后的本地数据与远程数据的映射关系,以此同步虚拟建筑元素上的变化,将本地数据传输到云端服务器再同步到多个客户端进行远程联机,以实现远程同步和多人交互的虚拟建筑场景。
本实施例中,通过编写联网脚本将本地数据传输到云端,再同步到客户端的方式进行交互数据的远程联机,输出能够实现远程同步和多人交互的虚拟现实建筑场景。
本实施例的主要目的是将本地的虚拟现实建筑场景,通过连接云端服务器进行信息中转的方式,转化为可以远程同步和多人交互的虚拟现实建筑场景。即可设计师和用户一同进入虚拟现实建筑场景,可以提高设计交流和建筑方案修改的效率。
具体操作是按序编写联网反馈脚本和语音通话内容,监控用户交互行为,同步虚拟场景的变化。首先,在Unity场景中导入多人联机开发资源Photon Pun 2和多人联机语音开发资源Photon Voice,两边都设置好App ID。其次,建立网络监控脚本,编写服务器连接方法、房间创建方法、房间提示内容,用于监控玩家是否进入房间并给予提示。然后,设置联网的虚拟现实摄像机。这部分需要建立预制组件Network Player,并且附加位置信息同步组件Photon View和联网声音同步组件Photon Voice View。在该预制件上需要编写映射脚本,将本地的虚拟现实摄像机VR Camera的位置映射到联网的预制体组件Network Player上面,以保证联网用户可以同步看到本地用户的位置变化。最后,在各功能组件部分编写脚本同步传输交互操作信息。这部分需要先给物体附加Photon View组件同步属性,并且利用Raise Event方法向Photon的服务器传输int、string、bool类型的数据,编写接收方法进行数据转换。本地系统根据接收到的联网信号,同步相应的物体变换信息。具体的物体可以通过获取Photon View ID进行查找,并依据传输的信号指令进行变化。
请参考图3,图3为本申请实施例提供的基于虚拟现实技术的建筑模型修改交互系统的结构框图,如图3所示,系统包括:
虚拟场景构建模块210,用于构建可实现虚拟现实漫游的虚拟建筑场景;
交互操作模块220,用于获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改。
可见,上述实施例提供的基于虚拟现实技术的建筑模型修改交互系统,构建了交互式的虚拟建筑场景,能够让用户在方案建成前就进行感知体验,更加直观和深入地呈现了建筑方案。用户在和建筑方案进行交互操作的过程中,可以通过修改建筑元素改变空间效果,直接表达设计的需求。用户的亲身参与和修改,解决了传统设计方法中,用户和设计师的交流障碍,提高了设计讨论的效率。虚拟现实的强交互性,也促进了用户对空间方案的实时修改,进一步发展了用户的需求表达,提高了用户的体验感。
本申请实施例还提供了一种计算机终端,该计算机终端包括一个或多个处理器;存储器,与所述处理器耦接,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述实施例所述的一种基于虚拟现实技术的建筑模型修改交互方法的步骤。处理器可能是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor、DSP)、专用集成电路 (ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行计算机存储介质内一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于执行基于虚拟现实技术的建筑模型修改交互方法的操作。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.基于虚拟现实技术的建筑模型修改交互方法,其特征在于,方法包括:
构建带有三维建筑模型和环境信息的虚拟建筑场景;
获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改,其中,在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行修改时,利用手持交互设备在虚拟建筑场景中执行第二交互操作,以完成对虚拟建筑场景中的虚拟建筑元素修改的交互操作,其中第二交互操作包括删除、建模、墙体和楼板;相应的,在识别到用户语音指令为删除时,开启手持交互设备的虚拟光线,并在检测到用户在手持交互设备所产生的触发指令时,将虚拟光线所指向的物体删除;在识别到用户语音指令为建模时,根据用户第一次产生触发指令时虚拟光线的指向点的三维位置确定为起点,以及用户第二次产生触发指令时虚拟光线的指向点的三维位置确定为终点,将起点与终点之间的中点确定为方块的三维位置,并实时计算手持交互设备和方块的三维位置的差值关系,在手持交互设备和方块的三维位置的任意一个差值的绝对值小于余下两个差值的绝对值,判定手持交互设备的三维位置位于方块的差值的最小方向上,改变方块的比例属性和位置属性,使其跟随手持交互设备进行变化;在识别到用户语音指令为墙体时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体以及在虚拟光线指向的碰撞点处生成一个正立方体,在两个正立方体之间的中点位置自动创建长方体以确定墙体的长度,当再次获取到手持交互设备发出触发指令时,根据手持交互设备发射的虚拟光线的指向高度确定为墙体的高度;在识别到用户语音指令为楼板时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体,根据虚拟光线的碰撞点和手持交互设备的位置的差值来判断虚拟光线的指向点和碰撞点之间的坐标数量关系,根据坐标数量关系生成一个跟随碰撞点的位置实时变化的面板,当用户再次产生触发指令时,基于虚拟光线的指向点的位置确定楼板的大小和位置。
2.根据权利要求1所述的基于虚拟现实技术的建筑模型修改交互方法,其特征在于,构建带有三维建筑模型和环境信息的虚拟建筑场景,具体包括:
获取由多边形面构成的第一三维建筑模型,将第一建筑模型的多边形面转换为三角形面,得到由三角形面构成的第二三维建筑模型;
获取三维图像数据,将第二三维建筑模型与三维图像数据集成,得到带有第二三维建筑模型和环境信息的基础场景;
将带有第二三维建筑模型和环境信息的基础场景转化为虚拟现实场景,得到带有三维建筑模型和环境信息的虚拟建筑场景。
3.根据权利要求2所述的基于虚拟现实技术的建筑模型修改交互方法,其特征在于,将第二三维建筑模型与三维图像数据集成,得到带有三维建筑模型和环境信息的基础场景,具体为:
利用Unity软件的转换操作对第二三维建筑模型和三维图像数据的属性进行修改,其中转换操作包括修改第二三维建筑模型的比例信息、材质信息和光照贴图信息,以及修改三维图像数据的格式;
将属性修改后的第二三维建筑模型和三维图像数据集成在一起,得到带有第二三维建筑模型和环境信息的基础场景,其中环境信息包括天空信息、建筑基地信息和地面信息;
将带有第二三维建筑模型和环境信息的基础场景转化为虚拟现实场景,具体为:通过配置虚拟现实组件的方式将基础场景转化为虚拟建筑场景。
4.根据权利要求1所述的基于虚拟现实技术的建筑模型修改交互方法,其特征在于,获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改,具体包括:
在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行文字绘制和距离测量时,利用手持交互设备在虚拟建筑场景中执行第一交互操作,以完成对虚拟建筑场景中的虚拟建筑元素的文字绘制和距离测量的交互操作,其中第一交互操作包括标注、标签和测量;
在用户语音指令为在虚拟建筑场景中对虚拟装修元素进行调整时,利用手持交互设备在虚拟建筑场景中执行第三交互操作,以完成对虚拟建筑场景中的虚拟装修元素修改的交互操作,其中第三交互操作包括材料和家具。
5.根据权利要求4所述的基于虚拟现实技术的建筑模型修改交互方法,其特征在于,在识别到用户语音指令为标注时,创建一个预制体组件,由用户语音指令激活预制体组件跟随手持交互设备的空间位置,等间隔记录手持交互设备的多个空间位置,并在每个空间位置之间绘制线条;
在识别到用户语音指令为标签时,由用户语音指令激活手持交互设备的虚拟光线,设置预制体组件的位置跟随手持交互设备的空间位置;
在识别到用户语音指令为测量时,在测量起点处生成一个带有碰撞体的第一空物体,在测量终点处生成一个带有碰撞体的第二空物体,在起点与终点之间利用渲染的方式显示线条,并在线条中部上方的位置复制一个文本来显示线条长度数值。
6.根据权利要求4所述的基于虚拟现实技术的建筑模型修改交互方法,其特征在于,在识别到用户语音指令为材料时,开启手持交互设备的虚拟光线选择材质球,并指向需要改变材质的物体,依据所选择的材质球替换物体的材质;
在识别到用户语音指令为家具时,开启手持交互设备的虚拟光线选取家具,并实时判断用户是否指向家具类型,在获取到触发指令时复制所选取的家具,直至再次获取触发指令确定家具的位置。
7.根据权利要求1所述的基于虚拟现实技术的建筑模型修改交互方法,其特征在于,方法还包括:
建立对虚拟建筑场景的虚拟建筑元素进行修改后的本地数据与远程数据的映射关系,以此同步虚拟建筑元素上的变化,将本地数据传输到云端服务器,再同步到多个客户端进行远程联机,以实现远程同步和多人交互的虚拟建筑场景。
8.基于虚拟现实技术的建筑模型修改交互系统,其特征在于,包括:
虚拟场景构建模块,用于构建实现虚拟现实漫游的虚拟建筑场景;
交互操作模块,用于获取用户语音指令,识别用户语音指令执行对应在虚拟建筑场景所配置的交互操作,并同时检测用户利用手持交互设备产生的触发指令,根据用户语音指令对应的交互操作和触发指令对虚拟建筑场景的虚拟建筑元素进行修改,其中,在用户语音指令为在虚拟建筑场景中对虚拟建筑元素进行修改时,利用手持交互设备在虚拟建筑场景中执行第二交互操作,以完成对虚拟建筑场景中的虚拟建筑元素修改的交互操作,其中第二交互操作包括删除、建模、墙体和楼板;相应的,在识别到用户语音指令为删除时,开启手持交互设备的虚拟光线,并在检测到用户在手持交互设备所产生的触发指令时,将虚拟光线所指向的物体删除;在识别到用户语音指令为建模时,根据用户第一次产生触发指令时虚拟光线的指向点的三维位置确定为起点,以及用户第二次产生触发指令时虚拟光线的指向点的三维位置确定为终点,将起点与终点之间的中点确定为方块的三维位置,并实时计算手持交互设备和方块的三维位置的差值关系,在手持交互设备和方块的三维位置的任意一个差值的绝对值小于余下两个差值的绝对值,判定手持交互设备的三维位置位于方块的差值的最小方向上,改变方块的比例属性和位置属性,使其跟随手持交互设备进行变化;在识别到用户语音指令为墙体时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体以及在虚拟光线指向的碰撞点处生成一个正立方体,在两个正立方体之间的中点位置自动创建长方体以确定墙体的长度,当再次获取到手持交互设备发出触发指令时,根据手持交互设备发射的虚拟光线的指向高度确定为墙体的高度;在识别到用户语音指令为楼板时,在获取到手持交互设备发出触发指令时,在虚拟光线指向的碰撞点处生成一个正立方体,根据虚拟光线的碰撞点和手持交互设备的位置的差值来判断虚拟光线的指向点和碰撞点之间的坐标数量关系,根据坐标数量关系生成一个跟随碰撞点的位置实时变化的面板,当用户再次产生触发指令时,基于虚拟光线的指向点的位置确定楼板的大小和位置。
9.一种计算机终端,包括:存储器及处理器,所述存储器上存储有计算机程序,其特征在于,所述计算机程序能够被所述处理器执行,以使得所述处理器实现如权利要求1至7中任一项所述的基于虚拟现实技术的建筑模型修改交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310010456.5A CN115690375B (zh) | 2023-01-05 | 2023-01-05 | 基于虚拟现实技术的建筑模型修改交互方法、系统及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310010456.5A CN115690375B (zh) | 2023-01-05 | 2023-01-05 | 基于虚拟现实技术的建筑模型修改交互方法、系统及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115690375A CN115690375A (zh) | 2023-02-03 |
CN115690375B true CN115690375B (zh) | 2023-04-07 |
Family
ID=85057200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310010456.5A Active CN115690375B (zh) | 2023-01-05 | 2023-01-05 | 基于虚拟现实技术的建筑模型修改交互方法、系统及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115690375B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116152383B (zh) * | 2023-03-06 | 2023-08-11 | 深圳优立全息科技有限公司 | 一种体素模型与图像生成方法、设备及存储介质 |
CN116931797B (zh) * | 2023-08-02 | 2024-03-15 | 广东明星创意动画有限公司 | 一种基于人机交互的3d场景建模方法 |
CN117391822B (zh) * | 2023-12-11 | 2024-03-15 | 中汽传媒(天津)有限公司 | 一种汽车营销的vr虚拟现实数字展示方法及系统 |
CN118153142A (zh) * | 2024-05-13 | 2024-06-07 | 江西旅游商贸职业学院 | 基于虚拟现实的家居设计方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112927355A (zh) * | 2021-03-02 | 2021-06-08 | 南京思丹鼎建筑科技有限公司 | 一种vr虚拟建造系统及其双向实时同步方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9898862B2 (en) * | 2011-03-16 | 2018-02-20 | Oldcastle Buildingenvelope, Inc. | System and method for modeling buildings and building products |
CN107272897A (zh) * | 2017-06-14 | 2017-10-20 | 成都智建新业建筑设计咨询有限公司 | 基于虚拟现实技术的建筑交互系统 |
DK180470B1 (en) * | 2017-08-31 | 2021-05-06 | Apple Inc | Systems, procedures, and graphical user interfaces for interacting with augmented and virtual reality environments |
CN110908497B (zh) * | 2018-09-14 | 2021-11-02 | 青岛海尔工业智能研究院有限公司 | 虚拟种植方法、装置、设备和介质 |
CN110060350A (zh) * | 2019-02-28 | 2019-07-26 | 浙江华越设计股份有限公司 | 一种基于vr技术的建筑设计方法 |
US11494966B2 (en) * | 2020-01-07 | 2022-11-08 | Disney Enterprises, Inc. | Interactive editing of virtual three-dimensional scenes |
US20220067228A1 (en) * | 2020-09-02 | 2022-03-03 | Autodesk, Inc. | Artificial intelligence-based techniques for design generation in virtual environments |
-
2023
- 2023-01-05 CN CN202310010456.5A patent/CN115690375B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112927355A (zh) * | 2021-03-02 | 2021-06-08 | 南京思丹鼎建筑科技有限公司 | 一种vr虚拟建造系统及其双向实时同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115690375A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115690375B (zh) | 基于虚拟现实技术的建筑模型修改交互方法、系统及终端 | |
US11087134B2 (en) | Augmented reality smartglasses for use at cultural sites | |
Lanham | Learn ARCore-Fundamentals of Google ARCore: Learn to build augmented reality apps for Android, Unity, and the web with Google ARCore 1.0 | |
KR101851356B1 (ko) | 3d 디지털액터에 의한 지능형 사용자 인터페이스 제공방법 | |
US20210255328A1 (en) | Methods and systems of a handheld spatially aware mixed-reality projection platform | |
CN112070906A (zh) | 一种增强现实系统及增强现实数据的生成方法、装置 | |
CN103914129A (zh) | 一种人机交互系统及方法 | |
US10748346B2 (en) | Placing and solving constraints on a 3D environment | |
WO2022048677A1 (zh) | 基于云手机的vr应用设计方法及系统 | |
KR102099135B1 (ko) | 가상현실 컨텐츠 제작 시스템 및 제작 방법 | |
CN116610881A (zh) | 一种基于低代码软件的WebGL浏览交互方法 | |
KR102040392B1 (ko) | 클라우드 기반의 증강현실 콘텐츠 서비스 제공 방법 | |
CN113436346A (zh) | 三维空间内的测距方法、装置及存储介质 | |
KR101265121B1 (ko) | 음성엔진과 인터렉티브 3차원 어플리케이션을 실시간으로 연동시키는 3차원 가상현실 컨트롤 미들웨어를 이용하는 3차원 가상현실 컨텐츠의 실시간 제어방법. | |
CN115624740A (zh) | 一种虚拟现实设备及其控制方法、装置、系统及互动系统 | |
WO1998000812A1 (fr) | Appareil et procede de formation d'un espace serveur | |
Shah et al. | A progressive web app for virtual campus tour | |
CN112929685B (zh) | Vr直播间的互动方法、装置、电子设备和存储介质 | |
CN113628324A (zh) | 一种智慧高速公路vr互动教学系统 | |
CN113672280A (zh) | 动画播放程序包编写方法、装置、电子设备及存储介质 | |
Ling et al. | The design and implementation of the 3D virtual campus models | |
KR20130035485A (ko) | 3차원 가상현실 동영상 편집시스템 및 편집방법 | |
Song et al. | Hands-on: rapid interactive application prototyping for media arts and stage production | |
Odom | HoloLens Beginner's Guide | |
CN117437342B (zh) | 一种三维场景渲染方法和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |