CN102411792A - 虚拟仿真场景多水平动态加载卸载方法 - Google Patents
虚拟仿真场景多水平动态加载卸载方法 Download PDFInfo
- Publication number
- CN102411792A CN102411792A CN2011102058395A CN201110205839A CN102411792A CN 102411792 A CN102411792 A CN 102411792A CN 2011102058395 A CN2011102058395 A CN 2011102058395A CN 201110205839 A CN201110205839 A CN 201110205839A CN 102411792 A CN102411792 A CN 102411792A
- Authority
- CN
- China
- Prior art keywords
- scene
- axle
- length
- piece
- radius
- 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.)
- Pending
Links
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种虚拟仿真场景多水平动态加载卸载方法,根据用户电脑配置定义一个半径参数a,在建模软件的三维坐标系中,以长度b将整个场景在Z轴上划分为若干个水平块,根据长度c将上述若干个水平块在X轴上划分为若干段,根据长度d将上述若干个水平块在Y轴上划分为若干段,即将整个三维场景划分为位于不同水平的若干个场景块,当摄像机在Z轴上的高度处于某一水平块的Z轴范围内时,若摄像机与此块内的某一场景块的距离小于半径a,程序即加载此场景块,否则程序即卸载此场景块。本发明减轻了程序运行的负担,提高了运行效率,取得了较好的实际应用效果。
Description
技术领域
本发明涉及一种虚拟仿真方法。
背景技术
在虚拟仿真开发中,经常会遇到由于场景面积大、内容复杂、精度高而导致场景模型面数多、贴图量大,进而导致运行效率低、对电脑配置要求高的问题。在实际应用中往往需要想方设法解决上述问题,才能顺利完成此类项目,并尽可能的降低对电脑配置的需求和提高运行效率。
王永君、龚健雅在2003年发表在《测绘学院学报》上的文章《用于大范围虚拟地形环境的动态场景管理方法》阐述了一种大规模场景资源管理方法,该方法采用规则网络切片对虚拟场景进行剖分,把大规模场景分成若干场景块,根据视点参数确定当前应该调度和进行渲染的网络单元,实现分步加载渲染。上述方法较好解决了大规模场景资源管理的问题,但是没有考虑到多水平的问题,这种不分水平的资源调度和渲染带来了不小的与当前需要渲染的场景资源无关的其它水平的冗余场景资源。
发明内容
为了克服现有技术存在冗余场景资源的不足,本发明提供一种虚拟仿真大规模多水平场景资源管理方法,该方法可达到多水平资源管理的无冗余。
本发明解决其技术问题所采用的技术方案包括以下步骤:
(1)为了能让虚拟仿真系统同时载入的场景资源在用户电脑上可以顺畅运行,首先需要根据用户电脑配置定义一个半径参数a,a的取值范围在2到20之间为宜,具体值可根据用户电脑配置来定,如果用户电脑的配置高,则可以将载入半径参数a设定大一些,反之,则可以将载入半径参数a设定小一些。
(2)在建模软件的三维坐标系中,假设场景高度在Z轴上,长度在X轴上,宽度在Y轴上。以长度b将整个场景在Z轴上划分为若干个水平块,并给每一个水平块一个唯一的编号;长度b的取值范围在2到10之间为宜,具体可根据以下两点确定:第一是场景总高度,第二是场景在不同水平段上的数量多少。场景在不同水平上分布越均匀,此长度越小,反之此长度越大,但是不能超过场景总高度。
(3)在三维坐标系的X轴上根据长度c将上述若干个水平块在X轴上划分为若干段,并给每一段给一个唯一的编号;长度c的取值范围比较广,根据场景的大小可在大于1的所有整数中取值,具体可根据以下二个因素确定:第一是长度c分割后的每一个X轴上的块的长度不大于步骤(1)中所确定的半径a,第二要保证在尽可能小的时间里加载尽可能大的场景块,因此如果项目场景比较复杂,物体摆放密度比较大,此长度就要设置的小一些,反之尽可能将此长度设置得大一些,可以减小场景的加载和卸载频率。
(4)在三维坐标系的Y轴上根据长度d将上述若干个水平块在Y轴上划分为若干段,并给每一段给一个唯一的编号,此时步骤(2)和步骤(3)中所述的唯一的编号不再有意义;此处的长度d的确定方法与步骤(3)中长度c的设定方法相同。
(5)上述步骤完成后即可将整个三维场景划分为位于不同水平的若干个场景块,并且每一个场景块都有唯一的坐标信息和名称信息;当摄像机在此场景中运动的时候,当摄像机在Z轴上的高度处于某一水平块的Z轴范围内时,若摄像机与此块内的某一场景块的距离小于步骤(1)中确定的半径a时,程序即加载此场景块,否则程序即卸载此场景块。
本发明的有益效果是:本发明采用了在Z轴上进行参数控制的方法,因此克服了场景资源的冗余加载卸载,使大规模多水平场景资源管理更加有效,减轻了程序运行的负担,提高了运行效率,取得了较好的实际应用效果。此方法可以在面积大、内容复杂、精度高,而且有多个水平的虚拟仿真中使用,使精细场景顺利呈现,降低了对电脑配置的要求。此方法工作性能稳定可靠,使用面较为广泛。
下面结合实施例对本发明进一步说明。
具体实施方式
基于以上技术方案,现采用quest3d虚拟仿真平台为例描述具体实施方式。步骤如下:
例1:
(1)为了能让quest3d虚拟仿真平台同时载入的场景资源在用户电脑上可以顺畅运行,由于电脑配置较差,此处确定半径为2,以保证场景可以顺畅运行。
(2)此三维场景的总高度为H,在此三维坐标系的Z轴上根据长度h=H/2将整个三维场景划分为2个水平块,并给每一个水平从上到下进行的编号M1、M2;
(3)若场景在X轴上长度为200,在三维坐标系的X轴上将上述若干个水平块在X轴上划分为300段,保证每一段的长度不大于步骤(1)中所确定半径2,并给每一段给一个唯一的编号;M1N1、M1N2、M1N3依次类推,M2N1、M2N2、M2N3依次类推。
(4)若场景在Y轴上长度为200,在三维坐标系的Y轴上将上述若干个水平快在Y轴上划分为300段,保证每一段的长度不大于步骤(1)中所确定半径2,并给每一段给一个唯一的编号M1N1K1、M1N1K2依次类推,M1N2K1、M1N2K2依次类推,M1N3K1、M1N3K2依次类推,M2N1K1、M2N1K2依次类推,M2N2K1、M2N2K2依次类推,M2N3K1、M2N3K2依次类推;此时步骤(2)和步骤(3)中所述的唯一的编号不再有意义;
(5)上述步骤完成后即可将整个三维场景划分为位于不同水平的2*300*300=180000个场景块,并且每一个场景块都有唯一的坐标信息和名称信息;当摄像机在此三维场景中运动的时候,当摄像机在Z轴上的高度处于H/2时,若摄像机与M1N1K1、M1N1K2依次类推,M1N2K1、M1N2K2依次类推,M1N3K1、M1N3K2依次类推中的某一场景块的距离小于步骤(1)中确定的半径2时,程序即采用Lua脚本语言加载此场景块,否则程序即采用Lua卸载此场景块。当摄像机在Z轴上的高度处于H/2到H时,若摄像机与MM2N1K1、M2N1K2依次类推,M2N2K1、M2N2K2依次类推,M2N3K1、M2N3K2依次类推中的某一场景块的距离小于步骤(1)中确定的半径2时,程序即采用Lua脚本语言加载此场景块,否则程序即采用Lua卸载此场景块。
例2:
(1)为了能让quest3d虚拟仿真平台同时载入的场景资源在用户电脑上可以顺畅运行,由于电脑配置较好,此处确定半径为20,以保证场景可以顺畅运行。
(2)此三维场景的总高度为H,在此三维坐标系的Z轴上根据长度h=H/10将整个三维场景划分为10个水平块,并给每一个水平从上到下进行的编号M1、M2、M3依次类推;
(3)若场景在X轴上长度为200,在三维坐标系的X轴上将上述若干个水平块在X轴上划分为30段,保证每一段的长度不大于步骤(1)中所确定半径20,并给每一段给一个唯一的编号;M1N1、M1N2、M1N3依次类推,M2N1、M2N2、M2N3依次类推。
(4)若场景在Y轴上长度为200,在三维坐标系的Y轴上将上述若干个水平快在Y轴上划分为30段,保证每一段的长度不大于步骤(1)中所确定半径20,并给每一段给一个唯一的编号M1N1K1、M1N1K2依次类推,M1N2K1、M1N2K2依次类推,M1N3K1、M1N3K2依次类推,M2N1K1、M2N1K2依次类推,M2N2K1、M2N2K2依次类推,M2N3K1、M2N3K2依次类推;此时步骤(2)和步骤(3)中所述的唯一的编号不再有意义;
(5)上述步骤完成后即可将整个三维场景划分为位于不同水平的10*30*30=1800个场景块,并且每一个场景块都有唯一的坐标信息和名称信息;当摄像机在此三维场景中运动的时候,当摄像机在Z轴上的高度处于0到H/10时,若摄像机与M1N1K1、M1N1K2依次类推,M1N2K1、M1N2K2依次类推,M1N3K1、M1N3K2依次类推中的某一场景块的距离小于步骤(1)中确定的半径20时,程序即采用Lua脚本语言加载此场景块,否则程序即采用Lua卸载此场景块。当摄像机在Z轴上的高度处于H/10到H/5时,若摄像机与M2N1K1、M2N1K2依次类推,M2N2K1、M2N2K2依次类推,M2N3K1、M2N3K2依次类推中的某一场景块的距离小于步骤(1)中确定的半径20时,程序即采用Lua脚本语言加载此场景块,否则程序即采用Lua卸载此场景块。依次类推。
例3:
(1)为了能让quest3d虚拟仿真平台同时载入的场景资源在用户电脑上可以顺畅运行,由于电脑配置一般,此处确定半径为10,以保证场景可以顺畅运行。
(2)此三维场景的总高度为H,在此三维坐标系的Z轴上根据长度h=H/5将整个三维场景划分为5个水平块,并给每一个水平从上到下进行的编号M1、M2、M3依次类推;
(3)若场景在X轴上长度为200,在三维坐标系的X轴上将上述若干个水平块在X轴上划分为40段,保证每一段的长度不大于步骤(1)中所确定半径10,并给每一段给一个唯一的编号;M1N1、M1N2、M1N3依次类推,M2N1、M2N2、M2N3依次类推。
(4)若场景在Y轴上长度为200,在三维坐标系的Y轴上将上述若干个水平快在Y轴上划分为40段,保证每一段的长度不大于步骤(1)中所确定半径10,并给每一段给一个唯一的编号M1N1K1、M1N1K2依次类推,M1N2K1、M1N2K2依次类推,M1N3K1、M1N3K2依次类推,M2N1K1、M2N1K2依次类推,M2N2K1、M2N2K2依次类推,M2N3K1、M2N3K2依次类推;此时步骤(2)和步骤(3)中所述的唯一的编号不再有意义;
(5)上述步骤完成后即可将整个三维场景划分为位于不同水平的10*40*40=16000个场景块,并且每一个场景块都有唯一的坐标信息和名称信息;当摄像机在此三维场景中运动的时候,当摄像机在Z轴上的高度处于0到H/5时,若摄像机与M1N1K1、M1N1K2依次类推,M1N2K1、M1N2K2依次类推,M1N3K1、M1N3K2依次类推中的某一场景块的距离小于步骤(1)中确定的半径10时,程序即采用Lua脚本语言加载此场景块,否则程序即采用Lua卸载此场景块。当摄像机在Z轴上的高度处于H/5到2*H/5时,若摄像机与M2N1K1、M2N1K2依次类推,M2N2K1、M2N2K2依次类推,M2N3K1、M2N3K2依次类推中的某一场景块的距离小于步骤(1)中确定的半径10时,程序即采用Lua脚本语言加载此场景块,否则程序即采用Lua卸载此场景块。依次类推。
采用了在Z轴上进行参数控制的方法,因此克服了场景资源的冗余加载卸载,使大规模多水平场景资源管理更加有效,减轻了程序运行的负担,提高了运行效率,取得了较好的实际应用效果。
Claims (1)
1.一种虚拟仿真场景多水平动态加载卸载方法,其特征在于包括下述步骤:
(1)根据用户电脑配置定义一个半径参数a,a的取值范围在2到20之间;
(2)在建模软件的三维坐标系中,假设场景高度在Z轴上,长度在X轴上,宽度在Y轴上,以长度b将整个场景在Z轴上划分为若干个水平块,并给每一个水平块一个唯一的编号;长度b的取值范围在2到10之间,且不超过场景总高度;
(3)在三维坐标系的X轴上根据长度c将上述若干个水平块在X轴上划分为若干段,并给每一段给一个唯一的编号;长度c为大于1的整数,且不大于步骤(1)中所确定的半径a;
(4)在三维坐标系的Y轴上根据长度d将上述若干个水平块在Y轴上划分为若干段,并给每一段给一个唯一的编号,长度d为大于1的整数,且不大于步骤(1)中所确定的半径a;
(5)上述步骤完成后即可将整个三维场景划分为位于不同水平的若干个场景块,并且每一个场景块都有唯一的坐标信息和名称信息;当摄像机在Z轴上的高度处于某一水平块的Z轴范围内时,若摄像机与此块内的某一场景块的距离小于步骤
(1)中确定的半径a,程序即加载此场景块,否则程序即卸载此场景块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102058395A CN102411792A (zh) | 2011-07-21 | 2011-07-21 | 虚拟仿真场景多水平动态加载卸载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102058395A CN102411792A (zh) | 2011-07-21 | 2011-07-21 | 虚拟仿真场景多水平动态加载卸载方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102411792A true CN102411792A (zh) | 2012-04-11 |
Family
ID=45913856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011102058395A Pending CN102411792A (zh) | 2011-07-21 | 2011-07-21 | 虚拟仿真场景多水平动态加载卸载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102411792A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103021016A (zh) * | 2012-12-05 | 2013-04-03 | 上海创图网络科技发展有限公司 | 一种渲染过程中海量三维地理信息数据处理方法 |
CN106340051A (zh) * | 2016-08-22 | 2017-01-18 | 厦门汇利伟业科技有限公司 | 3d场景分块加载方法及其系统 |
CN107045550A (zh) * | 2017-04-25 | 2017-08-15 | 深圳市蜗牛窝科技有限公司 | 虚拟场景加载的方法和装置 |
CN110716766A (zh) * | 2019-10-17 | 2020-01-21 | 网易(杭州)网络有限公司 | 游戏场景加载方法、装置、计算机可读介质及电子设备 |
CN113516769A (zh) * | 2021-07-28 | 2021-10-19 | 自然资源部国土卫星遥感应用中心 | 虚拟现实三维场景加载与渲染方法、装置和终端设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6664962B1 (en) * | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Shadow mapping in a low cost graphics system |
US20100013829A1 (en) * | 2004-05-07 | 2010-01-21 | TerraMetrics, Inc. | Method and system for progressive mesh storage and reconstruction using wavelet-encoded height fields |
-
2011
- 2011-07-21 CN CN2011102058395A patent/CN102411792A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6664962B1 (en) * | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Shadow mapping in a low cost graphics system |
US20100013829A1 (en) * | 2004-05-07 | 2010-01-21 | TerraMetrics, Inc. | Method and system for progressive mesh storage and reconstruction using wavelet-encoded height fields |
Non-Patent Citations (2)
Title |
---|
张在德 等: "基于VRML的虚拟大场景分割调度技术", 《计算机应用与软件》 * |
张晶 等: "地里信息系统的虚拟环境系统构造方法", 《哈尔滨工业大学学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103021016A (zh) * | 2012-12-05 | 2013-04-03 | 上海创图网络科技发展有限公司 | 一种渲染过程中海量三维地理信息数据处理方法 |
CN106340051A (zh) * | 2016-08-22 | 2017-01-18 | 厦门汇利伟业科技有限公司 | 3d场景分块加载方法及其系统 |
CN106340051B (zh) * | 2016-08-22 | 2019-04-02 | 厦门汇利伟业科技有限公司 | 3d场景分块加载方法及其系统 |
CN107045550A (zh) * | 2017-04-25 | 2017-08-15 | 深圳市蜗牛窝科技有限公司 | 虚拟场景加载的方法和装置 |
CN110716766A (zh) * | 2019-10-17 | 2020-01-21 | 网易(杭州)网络有限公司 | 游戏场景加载方法、装置、计算机可读介质及电子设备 |
CN113516769A (zh) * | 2021-07-28 | 2021-10-19 | 自然资源部国土卫星遥感应用中心 | 虚拟现实三维场景加载与渲染方法、装置和终端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107193911B (zh) | 一种基于bim模型的三维可视化引擎及web应用程序调用方法 | |
CN103093499B (zh) | 一种适用于网络传输的城市三维模型数据组织方法 | |
CN102663801B (zh) | 一种提高三维模型渲染性能的方法 | |
CN102508989B (zh) | 一种基于虚拟现实的电网全景动态展示系统 | |
CN102411792A (zh) | 虚拟仿真场景多水平动态加载卸载方法 | |
CN102289839A (zh) | 一种面向三维数字城市的高效多细节层次渲染方法 | |
CN107480922A (zh) | 两端式同轨双车运行模式下货位分配调度模型建立方法 | |
CN105260230B (zh) | 基于分段服务等级协议的数据中心虚拟机资源调度方法 | |
CN107193640B (zh) | 一种基于Rendezvous哈希算法的虚拟机初始放置策略方法 | |
CN103942306A (zh) | 三维城市模型自适应调度方法 | |
CN103188521A (zh) | 转码分配方法及装置,转码方法及设备 | |
CN102194043A (zh) | 地图图像与虚拟地图的产生方法及虚拟地图产生器 | |
CN106055590A (zh) | 基于大数据及图数据库的电力网络数据处理方法和系统 | |
US10719985B2 (en) | Model object building method, server, and system | |
CN103903507A (zh) | 一种地图道路渲染方法及系统 | |
CN102902742A (zh) | 一种云环境下的空间数据划分方法 | |
CN108415766B (zh) | 一种渲染任务动态调度方法 | |
CN109289198B (zh) | 一种感兴趣区域确定方法和装置 | |
CN107301094A (zh) | 面向大规模动态事务查询的动态自适应数据模型 | |
CN102779215A (zh) | 基于b/s架构和缓存技术的网络化三维吊装仿真方法 | |
CN104504469A (zh) | 基于三维移动模式序列与多智能体遗传算法的装箱方法 | |
CN104794316A (zh) | 一种3d模型拆分与组合的方法 | |
CN108304261A (zh) | 一种基于6D-Torus网络的作业调度方法和装置 | |
CN103488844A (zh) | 一种基于厂站地理信息的电网网架图自动布线方法 | |
US10484249B1 (en) | Dynamic distribution of simulation load |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120411 |