CN107092354B - Sketchup模型虚拟现实转化技术的方法 - Google Patents
Sketchup模型虚拟现实转化技术的方法 Download PDFInfo
- Publication number
- CN107092354B CN107092354B CN201710214817.2A CN201710214817A CN107092354B CN 107092354 B CN107092354 B CN 107092354B CN 201710214817 A CN201710214817 A CN 201710214817A CN 107092354 B CN107092354 B CN 107092354B
- Authority
- CN
- China
- Prior art keywords
- data
- model
- sketchup
- information
- file
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
Abstract
本发明公开了一种Sketchup模型虚拟现实转化技术的方法,使用Microsoft Visual Studio 2010在Windows下开发,其中Skp模型文件中提取出数据技术,主要使用Sketchup提供的接口SketchUp C API。本发明的有益效果是操作流程简单,是真正的建筑运用到VR虚拟现实交互的改革,让设计师可以进行全沉浸式VR交互,用户通过佩戴VR设备,可以深入到所创建的Sketchup模型转化的VR虚拟现实世界中去,身临其境,能够极大的方便原有Sketchup相关从业者的设计与工作。
Description
技术领域
本发明涉及Sketchup模型领域,特别是一种Sketchup模型虚拟现实转化技术的方法。
背景技术
现有的Sketchup模型转换成VR的相关技术,是光辉城市 smart+平台研发的上传SU模型转换VR虚拟现实技术,但实际上光辉城市是将Sketchup模型上传云平台烘焙出图,并不是真正的VR,存在诸多缺点,主要有以下两点:
a、光辉城市技术出来的只是相当于模型的一个360度全景漫游模式,所谓的漫游也是要手动设置模型热点后才能旋转观察,并且佩戴VR头盔后不能实现自由在虚拟世界走动等交互,而真正的VR应该是可以通过VR头盔中装载的传感器检测并持续跟踪体验者头部和视线的移动,实现体验者在虚拟现实世界中的导航问题,并让体验者能够与周围环境进行互动,借此为体验者提供身临其境的感觉。人与环境的“交互”体验,是区分深度多媒体体验与VR体验的最重要区别。在VR环境中,体验者能够充当环境的参与者,而不仅仅只是一个旁观者。显然,光辉城市的技术主要是在烘焙出效果图以及全景漫游观察模型而已。
b 、并且光辉城市的平台流程前期需要用户在上传Sketchup模型前,经过正反面处理、材质更换、重面、隐藏面等模型处理,才上传到云端进行烘焙出图,操作相对繁琐并且生产的模型佩戴上VR头盔后也只能用于定点360全景观察而不能用VR设备进行交互,所以其技术只是出模型的全景渲染效果图,并不是真正意义上的VR。
发明内容
为了克服传统Sketchup模型效果差、不能为体验者提供身临其境的感觉、操作相对繁琐等问题,本发明提供了一种Sketchup模型虚拟现实转化技术的方法。
本发明为实现上述目的所采用的技术方案是:使用Microsoft Visual Studio2010在Windows下开发,其中Skp模型文件中提取出数据技术,主要使用Sketchup提供的接口SketchUp C API,
开发流程:
a、先获取所有实体entities,遍历其中的面(SUFaceRef)、组(SUComponentInstanceRef)和群组(SUGroupRef)数据。
b、对面(SUFaceRef)进行计算分析获得相对坐标,法线,正反面材质(SUMaterialRef),以及洞口(SULoopRef),如果有洞口信息则根据需求可以在提取SKP数据阶段就进行三角剖分得到三角形面进行存储,或者直接存该含有洞口的面轮廓信息以及洞口的轮廓信息。
c、使用SUGroupGetEntities提取群组内的所有实体entities,继续从a步骤开始递归循环。
d、使用SUComponentInstanceGetDefinition提取组件内的所有实体entities,继续从a步骤开始递归循环。
通过上述步骤使用C++语言封装好获取数据的接口后,可以获得Sketchup模型的模型几何和材质信息。
接下来有两种实现方式:
方式一
a、通过二次开发从Skp模型文件中提取出数据,包括但不仅限于几何数据,并进行数据分析。
b、将数据转换到模型文件,包括但不限于 .obj、.3ds、. fbx、.mb、.mal、.maxl、.dae等格式。
c、从转换得到的模型文件中读取数据,使用Unity3D引擎转换成VR。
通过方式一进行转换,则是调用封装好的接口写入用户选择的第三方文件如.obj、.3ds、. fbx、.mb等,比如写入.obj可以使用写入文本文件的方式写入,并且写入生产mtl材质库文件,最后生成obj和mtl两种格式的文件,接下来在底层自动读取obj和mtl文件,使用的是C#语言,通过Unity引擎开发提供的接口对文件进行读取,主要读取obj中的点集合,面集合以及面对应的UV坐标,生成模型的集合信息,最后读入mtl材质库的材质信息进行渲染即可,其中每种材质包含了Ambient Color、Diffuser Color、Specular Color、Shininess以及Diffuse的纹理贴图信息。方式一的优点主要在于生成第三方文件,容量小,可以代替skp文件,方便传播。
方式二
a、通过二次开发从Skp模型文件中提取出数据,包括但不仅限于几何数据,并进行数据分析。
b、直接用接口得到的数据,使用Unity的接口编程实现创建mesh并且设置mesh 的顶点数据包括顶点坐标,顶点法线,以及贴图UV等信息生成VR模型。
通过方式二直接调用封装的提取SKP文件的C++接口,则是直接可以获取点,面(可以获取的同时决定是否将复杂多边形剖分成三角形),材质详细信息进行转化,这种方式会比方式一更直接,并且速度更快,并且获取的可以更多,更详细,因为如果借助第三方文件如obj,则因文件数据格式原因,能导的模型详细程度没有方式二高。
本发明是真正意义上的Sketchup模型虚拟现实转化技术的方法,主要实现的功能就是可以读取Sketchup模型文件,对其进行转化计算,从而可以在多种设备,包括但不仅限于Oculus、GearVR、OpenVR(SteamVR/HTC vive)以及PS VR等设备上进行VR全沉浸式VR交互,可以使用户在佩戴设备后能够在模型的虚拟世界里行走观察并且进行交互。
本发明优势在于实现的是真正意义上的VR,不同于光辉城市单纯360度全景漫游的伪VR,是真正的建筑运用到VR虚拟现实交互的改革,让设计师不再局限于PC端或其他设备上的单纯360度全景观察,而是可以进行全沉浸式VR交互,用户通过佩戴VR设备,可以深入到所创建的Sketchup模型转化的VR虚拟现实世界中去,身临其境,像平时生活中一样在里面随意走动,并可以进行一系列操作,包括但不限于如通过VR设备点击视觉中的虚拟物体查看属性,修改属性等。能够极大的方便原有Sketchup相关从业者的设计与工作。
与光辉城市的繁琐操作对比,本发明操作流程简单,用户只需选定需要转换的sketchup模型文件,点击就可以转换于VR设备中,进行全浸式VR交互,无需繁琐操作。
附图说明
图1是本发明的Sketchup模型虚拟现实转化技术的方法实施例一原理框图。
图2是本发明的Sketchup模型虚拟现实转化技术的方法实施例二原理框图。
具体实施方式
本技术实现使用Microsoft Visual Studio 2010在Windows下开发,其中Skp模型文件中提取出数据技术,主要使用Sketchup提供的接口SketchUp C API,
开发流程:
a、先获取所有实体entities,遍历其中的面(SUFaceRef)、组(SUComponentInstanceRef)和群组(SUGroupRef)数据。
b、对面(SUFaceRef)进行计算分析获得相对坐标,法线,正反面材质(SUMaterialRef),以及洞口(SULoopRef),如果有洞口信息则根据需求可以在提取SKP数据阶段就进行三角剖分得到三角形面进行存储,或者直接存该含有洞口的面轮廓信息以及洞口的轮廓信息。
c、使用SUGroupGetEntities提取群组内的所有实体entities,继续从a步骤开始递归循环。
d、使用SUComponentInstanceGetDefinition提取组件内的所有实体entities,继续从a步骤开始递归循环。
通过上述步骤使用C++语言封装好获取数据的接口后,可以获得Sketchup模型的模型几何和材质信息。
接下来有两种实现方式:
实施例一
如图1所示,
a、通过二次开发从Skp模型文件中提取出数据,包括但不仅限于几何数据,并进行数据分析。
b、将数据转换到模型文件,包括但不限于 .obj、.3ds、. fbx、.mb、.mal、.maxl、.dae等格式。
c、从转换得到的模型文件中读取数据,使用Unity3D引擎转换成VR。
通过实施例一进行转换,则是调用封装好的接口写入用户选择的第三方文件如.obj、.3ds、. fbx、.mb等,比如写入.obj可以使用写入文本文件的方式写入,并且写入生产mtl材质库文件,最后生成obj和mtl两种格式的文件,接下来在底层自动读取obj和mtl文件,使用的是C#语言,通过Unity引擎开发提供的接口对文件进行读取,主要读取obj中的点集合,面集合以及面对应的UV坐标,生成模型的集合信息,最后读入mtl材质库的材质信息进行渲染即可,其中每种材质包含了Ambient Color、Diffuser Color、Specular Color、Shininess以及Diffuse的纹理贴图信息。实施例一的优点主要在于生成第三方文件,容量小,可以代替skp文件,方便传播。
实施例二
如图2所示,
a、通过二次开发从Skp模型文件中提取出数据,包括但不仅限于几何数据,并进行数据分析。
b、直接用接口得到的数据,使用Unity的接口编程实现创建mesh并且设置mesh 的顶点数据包括顶点坐标,顶点法线,以及贴图UV等信息生成VR模型。
通过实施例二直接调用封装的提取SKP文件的C++接口,则是直接可以获取点,面(可以获取的同时决定是否将复杂多边形剖分成三角形),材质详细信息进行转化,这种方式会比方式一更直接,并且速度更快,并且获取的可以更多,更详细,因为如果借助第三方文件如obj,则因文件数据格式原因,能导的模型详细程度没有实施例二高。
Claims (4)
1.Sketchup模型虚拟现实转化方法,其特征在于:使用Microsoft Visual Studio2010在Windows下开发,其中Skp模型文件中提取出数据,使用Sketchup提供的接口SketchUp C API,具体步骤如下:
a、先获取所有实体entities,遍历其中的面(SUFaceRef)、组(SUComponentInstanceRef)和群组(SUGroupRef)数据,根据遍历得到三种类型信息做如下b、c、d三种二次开发处理;
b、对面(SUFaceRef)进行计算分析获得相对坐标,法线,正反面材质(SUMaterialRef),以及洞口(SULoopRef),如果有洞口信息则根据需求在提取SKP数据阶段进行三角剖分得到三角形面进行存储,或者直接存该含有洞口的面轮廓信息以及洞口的轮廓信息;
c、使用SUGroupGetEntities提取群组内的所有实体entities,继续从a步骤开始递归循环;
d、使用SUComponentInstanceGetDefinition提取组件内的所有实体entities,继续从a步骤开始递归循环;
e、通过二次开发从Skp模型文件中提取出数据,包括几何数据,并进行数据分析;
f、将数据转换到模型文件,包括.obj、.3ds、.fbx、.mb、.mal、.maxl、.dae格式;
g、从转换得到的模型文件中读取数据,使用Unity3D引擎转换成VR。
2.根据权利要求1所述Sketchup模型虚拟现实转化方法,其特征在于:所述步骤e,写入.obj格式,具体步骤为:使用写入文本文件的方式写入,并且写入生产mtl材质库文件,最后生成obj和mtl两种格式的文件,接下来在底层自动读取obj和mtl文件,使用C#语言,通过Unity引擎开发提供的接口对文件进行读取,主要读取obj中的点集合,面集合以及面对应的UV坐标,生成模型的集合信息,最后读入mtl材质库的材质信息进行渲染即可,其中每种材质包含了Ambient Color、Diffuser Color、Specular Color、Shininess以及 Diffuse的纹理贴图信息。
3.Sketchup模型虚拟现实转化方法,其特征在于:使用Microsoft Visual Studio2010在Windows下开发,其中Skp模型文件中提取出数据,使用Sketchup提供的接口SketchUp C API,具体步骤如下:
a、先获取所有实体entities,遍历其中的面(SUFaceRef)、组(SUComponentInstanceRef)和群组(SUGroupRef)数据,根据遍历得到三种类型信息做如下b、c、d三种二次开发处理;
b、对面(SUFaceRef)进行计算分析获得相对坐标,法线,正反面材质(SUMaterialRef),以及洞口(SULoopRef),如果有洞口信息则根据需求在提取SKP数据阶段进行三角剖分得到三角形面进行存储,或者直接存该含有洞口的面轮廓信息以及洞口的轮廓信息;
c、使用SUGroupGetEntities提取群组内的所有实体entities,继续从a步骤开始递归循环;
d、使用SUComponentInstanceGetDefinition提取组件内的所有实体entities,继续从a步骤开始递归循环;
e、通过二次开发从Skp模型文件中提取出数据,包括几何数据,并进行数据分析;
f、直接用接口得到的数据,使用Unity的接口编程实现创建mesh并且设置mesh的顶点数据包括顶点坐标,顶点法线,以及贴图UV等信息生成VR模型。
4.根据权利要求3所述Sketchup模型虚拟现实转化方法,其特征在于:所述步骤f具体为:直接调用封装的提取SKP文件的C++接口,获取到模型的点,面,材质详细信息后,使用unity的接口编程实现创建mesh并且设置mesh的顶点数据包括顶点坐标,顶点法线,以及贴图UV信息生成VR模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710214817.2A CN107092354B (zh) | 2017-04-01 | 2017-04-01 | Sketchup模型虚拟现实转化技术的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710214817.2A CN107092354B (zh) | 2017-04-01 | 2017-04-01 | Sketchup模型虚拟现实转化技术的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107092354A CN107092354A (zh) | 2017-08-25 |
CN107092354B true CN107092354B (zh) | 2020-09-29 |
Family
ID=59649338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710214817.2A Active CN107092354B (zh) | 2017-04-01 | 2017-04-01 | Sketchup模型虚拟现实转化技术的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107092354B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107610241A (zh) * | 2017-09-15 | 2018-01-19 | 重庆卢浮印象数字科技有限公司 | 虚拟图像的处理方法及系统 |
CN108416824B (zh) * | 2018-01-23 | 2022-05-03 | 网易(杭州)网络有限公司 | Dwf文件贴图方法、装置、计算设备和介质 |
CN108363895A (zh) * | 2018-05-09 | 2018-08-03 | 上海易术家互娱科技有限公司 | 建筑设计三维可视化验证方法 |
CN109933868A (zh) * | 2019-02-27 | 2019-06-25 | 壹仟零壹艺网络科技(北京)有限公司 | SketchUp模型材质贴图自动匹配方法及系统 |
CN111737205B (zh) * | 2019-03-21 | 2024-01-09 | 成都数天下科技有限公司 | 一种3D模型在Power BI组件中的渲染方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955566A (zh) * | 2014-04-10 | 2014-07-30 | 深圳供电规划设计院有限公司 | 一种基于谷歌地球的输电线路三维设计方法及系统 |
CN104599320A (zh) * | 2014-12-31 | 2015-05-06 | 北京邮电大学 | 一种三维模型实时绘制与比对方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8768655B2 (en) * | 2010-09-29 | 2014-07-01 | Sefaira, Inc. | System and method for analyzing and designing an architectural structure using bundles of design strategies applied according to a priority |
-
2017
- 2017-04-01 CN CN201710214817.2A patent/CN107092354B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955566A (zh) * | 2014-04-10 | 2014-07-30 | 深圳供电规划设计院有限公司 | 一种基于谷歌地球的输电线路三维设计方法及系统 |
CN104599320A (zh) * | 2014-12-31 | 2015-05-06 | 北京邮电大学 | 一种三维模型实时绘制与比对方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107092354A (zh) | 2017-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107092354B (zh) | Sketchup模型虚拟现实转化技术的方法 | |
Han et al. | DeepSketch2Face: a deep learning based sketching system for 3D face and caricature modeling | |
Ji et al. | Easy mesh cutting | |
US9704055B2 (en) | Occlusion render mechanism for point clouds | |
CN102096941B (zh) | 虚实融合环境下的光照一致性方法 | |
US20200286301A1 (en) | Facial performance capture in an uncontrolled environment | |
US8134556B2 (en) | Method and apparatus for real-time 3D viewer with ray trace on demand | |
CN108257204B (zh) | 运用于Unity引擎的顶点色绘制烘焙方法及系统 | |
US9189883B1 (en) | Rendering of multiple volumes | |
US20130257856A1 (en) | Determining a View of an Object in a Three-Dimensional Image Viewer | |
Bhattacharjee et al. | A survey on sketch based content creation: from the desktop to virtual and augmented reality | |
US9905045B1 (en) | Statistical hair scattering model | |
CN116228943B (zh) | 虚拟对象面部重建方法、面部重建网络训练方法及装置 | |
Van Nguyen et al. | Reconstruction of 3D digital heritage objects for VR and AR applications | |
Banterle et al. | EnvyDepth: An interface for recovering local natural illumination from environment maps | |
Zhang et al. | Illumination estimation for augmented reality based on a global illumination model | |
CN116596985B (zh) | 一种自适应光照模型建模方法与系统 | |
US9639981B1 (en) | Tetrahedral Shell Generation | |
Zhou et al. | GA‐Sketching: Shape Modeling from Multi‐View Sketching with Geometry‐Aligned Deep Implicit Functions | |
Zhang et al. | Single image 3D reconstruction based on control point grid | |
Yu et al. | A Space-Time Interactive Visualization Approach for Managing Remote Sensing Data. | |
Kadyrov | Developing of USDZ models for 3D digital analysis results visualization in augmented reality | |
Mower | Fast Image‐Space Silhouette Extraction for Non‐Photorealistic Landscape Rendering | |
Camba et al. | Computer-Aided Design, Computer-Aided Engineering, and Visualization | |
Zeng et al. | 3D plants reconstruction based on point cloud |
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 |