CN112181531A - 虚拟现实场景加载方法及虚拟现实系统 - Google Patents
虚拟现实场景加载方法及虚拟现实系统 Download PDFInfo
- Publication number
- CN112181531A CN112181531A CN202011092320.6A CN202011092320A CN112181531A CN 112181531 A CN112181531 A CN 112181531A CN 202011092320 A CN202011092320 A CN 202011092320A CN 112181531 A CN112181531 A CN 112181531A
- Authority
- CN
- China
- Prior art keywords
- rendering
- control
- thread
- virtual reality
- scene
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Abstract
本申请实施例提供一种虚拟现实场景加载方法及虚拟现实系统,通过单独提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,从而利用单独生成的相关渲染控件将应用环境场景和虚拟现实对象单独进行加载渲染,无需考虑虚拟现实对象与应用环境场景之间的交互调用活动即可达到完整渲染效果,从而可以减少瞬时时刻的加载数据量,并且还可以便于针对应用环境场景中的虚拟现实对象进行部分扩展定制操作。
Description
技术领域
本申请涉及虚拟现实技术领域,具体而言,涉及一种虚拟现实场景加载方法及虚拟现实系统。
背景技术
在虚拟现实场景的加载过程中,通常是对虚拟现实模型的整体进行一次性加载,在渲染加载过程中需要考虑到虚拟现实对象与应用环境场景之间的交互调用活动,一方面会导致瞬时时刻的加载数据量巨大,可能会造成相应的渲染卡顿,另一方面,无法针对应用环境场景中的虚拟现实对象进行部分扩展定制操作,一旦需要扩展定制则需要整体进行调整,导致调整工作量较大。
发明内容
为了至少克服现有技术中的上述不足,本申请的目的在于提供一种虚拟现实场景加载方法及虚拟现实系统,通过单独提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,从而利用单独生成的相关渲染控件将应用环境场景和虚拟现实对象单独进行加载渲染,无需考虑虚拟现实对象与应用环境场景之间的交互调用活动即可达到完整渲染效果,从而可以减少瞬时时刻的加载数据量,并且还可以便于针对应用环境场景中的虚拟现实对象进行部分扩展定制操作。
第一方面,本申请提供一种虚拟现实场景加载方法,应用于虚拟现实设备,所述虚拟现实设备与服务器通信连接,所述方法包括:
根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源;
从所述服务器中获取所述多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,其中,所述渲染场景控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件,所述虚拟对象控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件;
根据所述渲染场景控件集合和所述虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合,所述视觉渲染单元的渲染节点集合包括用于表示所述视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点;
根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对所述目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对所述各个目标虚拟现实对象执行对象控制操作。
在第一方面的一种可能的设计中,所述提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合的步骤,包括:
提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的多个场景摄像机;
根据所述多个场景摄像机将所述模型文件输入到所述模型渲染策略中进行图形接口调用处理,得到多个不同渲染类别的图形接口调用参数;
针对所述多个场景摄像机中的每个场景摄像机,从所述多个不同渲染类别的图形接口调用参数中,为所述场景摄像机选择对应渲染类别的图形接口调用参数,并利用所述图形接口调用参数所对应的图形接口调用信息,判断所述场景摄像机是否匹配预设的图形接口调用模板,当所述场景摄像机匹配预设的图形接口调用模板时,保留所述场景摄像机,以得到多个保留的场景摄像机;
将所述模型文件通过所述多个保留的场景摄像机输入到所述模型渲染策略中进行渲染分割,获取对应的渲染分割虚拟对象控件集合及所述渲染分割虚拟对象控件集合中目标对象渲染控件的渲染分割过程信息,并根据所述目标对象渲染控件的渲染分割过程信息确定所述目标对象渲染控件的渲染分割区域;
在所述目标对象渲染控件的渲染分割区域内获取每个目标对象渲染控件的渲染分割位置,并根据所述每个目标对象渲染控件的渲染分割位置的位置置信度进行目标对象渲染控件重组,得到对应的候选视觉渲染单元,并获得所述模型文件在所述候选视觉渲染单元对应的场景渲染控件,以根据所述场景渲染控件建立所述候选视觉渲染单元和对象渲染控件之间的对象渲染控件信息,并以所述对象渲染控件为基准处理每个候选视觉渲染单元,以确定每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息;
根据每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息,确定每个候选视觉渲染单元中的各个视觉渲染单元,以得到所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件以及所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件。
在第一方面的一种可能的设计中,所述根据所述渲染场景控件集合和虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合的步骤,包括:
根据所述渲染场景控件集合和虚拟对象控件集合确定所述模型文件对于每个视觉渲染单元的渲染线程信息,并将所述模型文件对于每个视觉渲染单元的渲染线程信息转换为渲染线程队列;
根据所述渲染线程队列,构建对应的渲染线程拓扑图,并对构建的所述渲染线程拓扑图进行解析,得到多个渲染线程拓扑聚类;
获取各个所述渲染线程拓扑聚类中渲染线程数量的平均值,计算所述渲染线程拓扑聚类中渲染线程数量与所述平均值的差值,以得到所述渲染线程拓扑聚类的渲染线程数量确定值;
将渲染线程数量确定值相关联的多个渲染线程拓扑聚类进行分类,以生成由多个分类的渲染线程拓扑聚类的分类组合组成的对应的分类渲染线程拓扑聚类图;
在所述分类渲染线程拓扑聚类图中选择渲染线程最长的渲染线程拓扑聚类和渲染线程最小的渲染线程拓扑聚类分别作为第一渲染线程拓扑聚类和第二渲染线程拓扑聚类,并分别计算所述分类渲染线程拓扑聚类图中各个渲染线程拓扑聚类与所述第一渲染线程拓扑聚类、所述第二渲染线程拓扑聚类之间的渲染线程数量确定值差异,将与所述第一渲染线程拓扑聚类的渲染线程数量确定值差异小于或者等于与所述第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第一渲染线程拓扑聚类序列,将与所述第一渲染线程拓扑聚类的渲染线程数量确定值差异大于与所述第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第二渲染线程拓扑聚类序列;
计算所述第一渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第一渲染线程拓扑聚类,计算所述第二渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第二渲染线程拓扑聚类;
根据所述第一渲染线程拓扑聚类和所述第二渲染线程拓扑聚类与所述分类渲染线程拓扑聚类图中的各个渲染线程拓扑聚类的重合度确定对应的多个第三渲染线程拓扑聚类和多个第四渲染线程拓扑聚类;
根据所述多个第三渲染线程拓扑聚类和所述多个第四渲染线程拓扑聚类,确定所述渲染线程信息所对应的渲染线程参数信息,并对所述渲染线程参数信息进行解析以获取所述渲染线程参数信息中的渲染线程过程控制信息;
将所述渲染线程过程控制信息的过程控制范围确定为所述视觉渲染单元所对应的过程控制范围,并根据所述视觉渲染单元所对应的过程控制范围和所述渲染线程过程控制信息确定各个视觉渲染单元的渲染节点集合。
在第一方面的一种可能的设计中,所述根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的步骤,包括:
根据所述各个模型文件的渲染场景控件集合和虚拟对象控件集合确定出各个模型文件的加载帧信息,并根据所述加载帧信息确定所述各个模型文件对应的加载控件集合,所述加载控件集合包括场景渲染控件和对象渲染控件;
从各个视觉渲染单元的渲染节点集合获取所述各个模型文件对应的加载控件集合的渲染线程参数,所述渲染线程参数用于表示所述加载控件集合的渲染线程的排列信息;
根据所述渲染线程参数建立所述加载控件集合与排列渲染线程的映射关系,并根据建立的所述加载控件集合与排列渲染线程的映射关系确定所述各个模型文件中每个模型目录资源的多个渲染状态,针对每一个渲染状态,获取每个模型目录资源匹配的其它模型文件的模型目录资源的对应渲染状态的状态标识与每个模型目录资源之后预设数量个模型目录资源的对应渲染状态的状态标识之间的匹配关系,并根据该匹配关系得到每个模型目录资源在该渲染状态处的渲染排列状态配置信息,以得到每个模型目录资源的渲染排列状态配置信息;
根据每个模型目录资源的渲染排列状态配置信息获取每个模型目录资源在渲染过程中的渲染控制状态;
根据所述渲染控制状态得到每个模型目录资源对应的多个渲染加载控制节点,并确定所述多个渲染加载控制节点的第一控制特征信息和第二控制特征信息,所述第一控制特征信息包含所述每个模型目录资源的渲染控制状态为开启状态时的控制特征信息,所述第二控制特征信息包含所述每个模型目录资源的渲染控制状态为关闭状态时的控制特征信息;
确定所述第一控制特征信息在所述渲染加载控制节点中的位置排序,并根据所述位置排序确定所述第一控制特征信息的渲染排列位置,按照所述渲染排列位置分别确定每个模型目录资源对应的排列渲染线程的渲染加载控制节点对应的渲染分支序列,并计算与所述渲染分支序列对应的渲染分支特征,所述渲染分支序列是根据所述模型目录资源对应的排列渲染线程的渲染加载控制节点在渲染过程中对应的基于可渲染部分生成的渲染分支记录信息确定的,不同的可渲染部分对应的渲染分支记录信息不同;
获取每个模型目录资源对应的排列渲染线程对应的线程排序,并根据所述渲染分支特征确定所述渲染分支序列与所述线程排序之间的映射关系,根据确定的所述渲染分支序列与所述线程排序之间的映射关系,从所述渲染分支序列中确定出每个模型目录资源的多个渲染分支以及每个渲染分支对应的渲染顺序;
从所述多个渲染分支中筛选出多个与预设渲染顺序相同的渲染分支,获得多个第一渲染分支,并将所述多个渲染分支中除所述第一渲染分支以外的渲染分支作为第二渲染分支;
根据所述第一渲染分支的数量与所述第二渲染分支的数量之间的第一比值、所有第一渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第二比值以及所有第二渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第三比值确定出针对所述每个模型目录资源的渲染间隔数;
根据所述各个模型文件中每个模型目录资源的渲染间隔数和渲染分支特征,对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象。
在第一方面的一种可能的设计中,所述对所述各个目标虚拟现实对象执行对象控制操作的步骤,包括:
获取每个目标虚拟现实对象对应的对象业务的第一控制信息及所述目标虚拟现实场景对应的场景业务的第二控制信息;
比较所述第一控制信息与所述第二控制信息之间的控制节点关联集合,当所述控制节点关联集合中的任意至少两个关联控制节点的控制行为存在冲突时,确定所述场景业务针对存在冲突的目标关联控制节点的展示对象适配策略;
根据所述展示对象适配策略确定将所述目标虚拟现实对象进行显示控制的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列;
根据确定的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列,对所述目标虚拟现实对象执行对象控制操作。
第二方面,本申请实施例还提供一种虚拟现实场景加载装置,应用于虚拟现实设备,所述虚拟现实设备与服务器通信连接,所述装置包括:
确定模块,用于根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源;
提取模块,用于从所述服务器中获取所述多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,其中,所述渲染场景控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件,所述虚拟对象控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件;
生成模块,用于根据所述渲染场景控件集合和所述虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合,所述视觉渲染单元的渲染节点集合包括用于表示所述视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点;
加载模块,用于根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对所述目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对所述各个目标虚拟现实对象执行对象控制操作。
第三方面,本申请实施例还提供一种虚拟现实系统,所述虚拟现实系统包括虚拟现实设备以及与所述虚拟现实设备通信连接的服务器;
所述虚拟现实设备用于根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源;
所述虚拟现实设备用于从所述服务器中获取所述多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,其中,所述渲染场景控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件,所述虚拟对象控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件;
所述虚拟现实设备用于根据所述渲染场景控件集合和所述虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合,所述视觉渲染单元的渲染节点集合包括用于表示所述视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点;
所述虚拟现实设备用于根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对所述目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对所述各个目标虚拟现实对象执行对象控制操作。
第四方面,本申请实施例还提供一种虚拟现实设备,所述虚拟现实设备包括处理器、机器可读存储介质和网络接口,所述机器可读存储介质、所述网络接口以及所述处理器之间通过总线系统相连,所述网络接口用于与至少一个对象波动范围通信连接,所述机器可读存储介质用于存储程序、指令或代码,所述处理器用于执行所述机器可读存储介质中的程序、指令或代码,以执行第一方面或者第一方面中任意一个可能的设计中的虚拟现实场景加载方法。
第五方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上检测时,使得计算机执行上述第一方面或者第一方面中任意一个可能的设计中的虚拟现实场景加载方法。
基于上述任意一个方面,本申请通过单独提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,从而利用单独生成的相关渲染控件将应用环境场景和虚拟现实对象单独进行加载渲染,无需考虑虚拟现实对象与应用环境场景之间的交互调用活动即可达到完整渲染效果,从而可以减少瞬时时刻的加载数据量,并且还可以便于针对应用环境场景中的虚拟现实对象进行部分扩展定制操作。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的虚拟现实系统的应用场景示意图;
图2为本申请实施例提供的虚拟现实场景加载方法的流程示意图;
图3为本申请实施例提供的虚拟现实场景加载装置的功能模块示意图;
图4为本申请实施例提供的用于实现上述的虚拟现实场景加载方法的虚拟现实设备的结构示意框图。
具体实施方式
下面结合说明书附图对本申请进行具体说明,方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。
图1是本申请一种实施例提供的虚拟现实系统10的交互示意图。虚拟现实系统10可以包括服务器200以及与所述服务器200通信连接的虚拟现实设备100,虚拟现实设备100中可以包括执行指令操作的处理器。图1所示的虚拟现实系统10仅为一种可行的示例,在其它可行的实施例中,该虚拟现实系统10也可以仅包括图1所示组成部分的其中一部分或者还可以包括其它的组成部分。
在一些实施例中,服务器200可以是单个服务器,也可以是一个服务器组。运营服务器组可以是集中式的,也可以是分布式的(例如,服务器200可以是分布式系统)。在一些实施例中,服务器200相对于虚拟现实设备100,可以是本地的、也可以是远程的。例如,服务器200可以经由网络访问存储在虚拟现实设备100以及数据库、或其任意组合中的信息。作为另一示例,服务器200可以直接连接到虚拟现实设备100和数据库中的至少一个,以访问其中存储的信息和/或数据。在一些实施例中,服务器200可以在云平台上实现;仅作为示例,云平台可以包括私有云、公有云、混合云、社区云(community cloud)、分布式云、跨云(inter-cloud)、多云(multi-cloud)等,或者它们的任意组合。
在一些实施例中,服务器200可以包括处理器。处理器可以处理与服务请求有关的信息和/或数据,以执行本申请中描述的一个或多个功能。处理器可以包括一个或多个处理核(例如,单核处理器(S)或多核处理器(S))。仅作为举例,处理器可以包括中央处理单元(Central Processing Unit, CPU)、专用集成电路(Application Specific IntegratedCircuit, ASIC)、专用指令集处理器(Application Specific Instruction-setProcessor, ASIP)、图形处理单元(Graphics Processing Unit, GPU)、物理处理单元(Physics Processing Unit, PPU)、数字信号处理器 (Digital Signal Processor,DSP)、现场可编程门阵列( Field Programmable Gate Array,FPGA)、可编程逻辑器件(Programmable Logic Device, PLD)、控制器、微控制器单元、简化指令集计算机(ReducedInstruction Set Computing, RISC)、或微处理器等,或其任意组合。
网络可以用于信息和/或数据的交换。在一些实施例中,虚拟现实系统10中的一个或多个组件(例如,服务器200,虚拟现实设备100和数据库)可以向其他组件发送信息和/或数据。在一些实施例中,网络可以是任何类型的有线或者无线网络,或者是他们的结合。仅作为示例,网络130可以包括有线网络、无线网络、光纤网络、远程通信网络、内联网、因特网、局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)、无线局域网(Wireless Local Area Networks,WLAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、公共电话交换网(Public Switched Telephone Network,PSTN)、蓝牙网络、ZigBee网络、或近场通信(Near Field Communication, NFC)网络等,或其任意组合。在一些实施例中,网络可以包括一个或多个网络接入点。例如,网络可以包括有线或无线网络接入点,例如基站和/或网络交换节点,虚拟现实系统10的一个或多个组件可以通过该接入点连接到网络以交换数据和/或信息。
前述的数据库可以存储数据和/或指令。在一些实施例中,数据库可以存储向虚拟现实设备100分配的数据。在一些实施例中,数据库可以存储在本申请中描述的示例性方法的数据和/或指令。在一些实施例中,数据库可以包括大容量存储器、可移动存储器、易失性读写存储器、或只读存储器(Read-Only Memory, ROM)等,或其任意组合。作为举例,大容量存储器可以包括磁盘、光盘、固态驱动器等;可移动存储器可包括闪存驱动器、软盘、光盘、存储卡、zip磁盘、磁带等;易失性读写存储器可以包括随机存取存储器(Random AccessMemory, RAM);RAM可以包括动态RAM(Dynamic Random Access Memory, DRAM),双倍数据速率同步动态RAM(Double Date-Rate Synchronous RAM, DDR SDRAM);静态RAM(StaticRandom-Access Memory, SRAM),晶闸管RAM(Thyristor-Based Random Access Memory,T-RAM)和零电容器RAM(Zero-RAM)等。作为举例,ROM可以包括掩模ROM(Mask Read-OnlyMemory, MROM)、可编程ROM( Programmable Read-Only Memory, PROM)、可擦除可编程ROM(Programmable Erasable Read-only Memory , PEROM)、电可擦除可编程ROM(Electrically Erasable Programmable read only memory, EEPROM)、光盘ROM(CD-ROM)、以及数字通用磁盘ROM等。在一些实施例中,数据库可以在云平台上实现。仅作为示例,云平台可以包括私有云、公有云、混合云、社区云、分布式云、跨云、多云或者其它类似的等,或其任意组合。
在一些实施例中,数据库可以连接到网络以与虚拟现实系统10(例如,服务器200,虚拟现实设备100等)中的一个或多个组件通信。虚拟现实系统10中的一个或多个组件可以经由网络访问存储在数据库中的数据或指令。在一些实施例中,数据库可以直接连接到虚拟现实系统10中的一个或多个组件(例如,服务器200,虚拟现实设备100等;或者,在一些实施例中,数据库也可以是服务器200的一部分。
为了解决前述背景技术中的技术问题,图2为本申请实施例提供的虚拟现实场景加载方法的流程示意图,本实施例提供的虚拟现实场景加载方法可以由图1中所示的虚拟现实设备100执行,下面对该虚拟现实场景加载方法进行详细介绍。
步骤S110,根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源。
步骤S120,从服务器200中获取多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合。
步骤S130,根据渲染场景控件集合和虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合。
步骤S140,根据各个模型文件的渲染场景控件集合、虚拟对象控件集合及各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对目标虚拟现实场景和目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对各个目标虚拟现实对象执行对象控制操作。
本实施例中,针对目标虚拟现实场景的加载请求可以通过用户对该虚拟现实设备100的操作进行触发,也可以自动触发,在此不做具体限定。
本实施例中,渲染场景控件集合可以包括模型文件在模型渲染策略中各个视觉渲染单元对应的场景渲染控件,虚拟对象控件集合可以包括模型文件在模型渲染策略中各个视觉渲染单元对应的对象渲染控件,视觉渲染单元的渲染节点集合可以包括用于表示视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点。由此,通过单独提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,从而利用单独生成的相关渲染控件将应用环境场景和虚拟现实对象单独进行加载渲染,无需考虑虚拟现实对象与应用环境场景之间的交互调用活动即可达到完整渲染效果,从而可以减少瞬时时刻的加载数据量,并且还可以便于针对应用环境场景中的虚拟现实对象进行部分扩展定制操作。
在一种可能的设计中,针对步骤S120,为了有效确定模型文件在模型渲染策略中各个视觉渲染单元对应的场景渲染控件以及模型文件在模型渲染策略中各个视觉渲染单元对应的对象渲染控件,本实施例可以提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的多个场景摄像机,并根据多个场景摄像机将模型文件输入到模型渲染策略中进行图形接口调用处理,得到多个不同渲染类别的图形接口调用参数。
接下来,针对多个场景摄像机中的每个场景摄像机,从多个不同渲染类别的图形接口调用参数中,为场景摄像机选择对应渲染类别的图形接口调用参数,并利用图形接口调用参数所对应的图形接口调用信息,判断场景摄像机是否匹配预设的图形接口调用模板,当场景摄像机匹配预设的图形接口调用模板时,保留场景摄像机,以得到多个保留的场景摄像机。
而后,可以将模型文件通过多个保留的场景摄像机输入到模型渲染策略中进行渲染分割,获取对应的渲染分割虚拟对象控件集合及渲染分割虚拟对象控件集合中目标对象渲染控件的渲染分割过程信息,并根据目标对象渲染控件的渲染分割过程信息确定目标对象渲染控件的渲染分割区域,在目标对象渲染控件的渲染分割区域内获取每个目标对象渲染控件的渲染分割位置,并根据每个目标对象渲染控件的渲染分割位置的位置置信度进行目标对象渲染控件重组,得到对应的候选视觉渲染单元,并获得模型文件在候选视觉渲染单元对应的场景渲染控件,以根据场景渲染控件建立候选视觉渲染单元和对象渲染控件之间的对象渲染控件信息,并以对象渲染控件为基准处理每个候选视觉渲染单元,以确定每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息。
由此,可以根据每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息,确定每个候选视觉渲染单元中的各个视觉渲染单元,以得到模型文件在模型渲染策略中各个视觉渲染单元对应的场景渲染控件以及模型文件在模型渲染策略中各个视觉渲染单元对应的对象渲染控件。
在一种可能的设计中,针对步骤S130,为了有效确定各个视觉渲染单元的渲染节点集合,本实施例可以根据渲染场景控件集合和虚拟对象控件集合确定模型文件对于每个视觉渲染单元的渲染线程信息,并将模型文件对于每个视觉渲染单元的渲染线程信息转换为渲染线程队列,然后根据渲染线程队列,构建对应的渲染线程拓扑图,并对构建的渲染线程拓扑图进行解析,得到多个渲染线程拓扑聚类。
接下来,可以获取各个渲染线程拓扑聚类中渲染线程数量的平均值,计算渲染线程拓扑聚类中渲染线程数量与平均值的差值,以得到渲染线程拓扑聚类的渲染线程数量确定值,并将渲染线程数量确定值相关联的多个渲染线程拓扑聚类进行分类,以生成由多个分类的渲染线程拓扑聚类的分类组合组成的对应的分类渲染线程拓扑聚类图。
而后,在分类渲染线程拓扑聚类图中选择渲染线程最长的渲染线程拓扑聚类和渲染线程最小的渲染线程拓扑聚类分别作为第一渲染线程拓扑聚类和第二渲染线程拓扑聚类,并分别计算分类渲染线程拓扑聚类图中各个渲染线程拓扑聚类与第一渲染线程拓扑聚类、第二渲染线程拓扑聚类之间的渲染线程数量确定值差异,将与第一渲染线程拓扑聚类的渲染线程数量确定值差异小于或者等于与第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第一渲染线程拓扑聚类序列,将与第一渲染线程拓扑聚类的渲染线程数量确定值差异大于与第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第二渲染线程拓扑聚类序列。
在此基础上,可以进一步计算第一渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第一渲染线程拓扑聚类,计算第二渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第二渲染线程拓扑聚类,然后根据第一渲染线程拓扑聚类和第二渲染线程拓扑聚类与分类渲染线程拓扑聚类图中的各个渲染线程拓扑聚类的重合度确定对应的多个第三渲染线程拓扑聚类和多个第四渲染线程拓扑聚类。
例如,可以将与分类渲染线程拓扑聚类图中的各个渲染线程拓扑聚类之间的重合度大于设定重合度的渲染线程拓扑聚类分别确定为对应的多个第三渲染线程拓扑聚类和多个第四渲染线程拓扑聚类。
接着,可以根据多个第三渲染线程拓扑聚类和多个第四渲染线程拓扑聚类,确定渲染线程信息所对应的渲染线程参数信息,并对渲染线程参数信息进行解析以获取渲染线程参数信息中的渲染线程过程控制信息,由此将渲染线程过程控制信息的过程控制范围确定为视觉渲染单元所对应的过程控制范围,并根据视觉渲染单元所对应的过程控制范围和渲染线程过程控制信息确定各个视觉渲染单元的渲染节点集合。
例如,作为一种示例,可以根据视觉渲染单元所对应的过程控制范围在渲染线程过程控制信息所对应的渲染线程过程控制节点,确定各个视觉渲染单元的渲染节点集合。
在一种可能的设计中,针对步骤S140,本实施例可以根据各个模型文件的渲染场景控件集合和虚拟对象控件集合确定出各个模型文件的加载帧信息,并根据加载帧信息确定各个模型文件对应的加载控件集合,加载控件集合包括场景渲染控件和对象渲染控件,然后从各个视觉渲染单元的渲染节点集合获取各个模型文件对应的加载控件集合的渲染线程参数,渲染线程参数用于表示加载控件集合的渲染线程的排列信息。
在此基础上,可以根据渲染线程参数建立加载控件集合与排列渲染线程的映射关系,并根据建立的加载控件集合与排列渲染线程的映射关系确定各个模型文件中每个模型目录资源的多个渲染状态,针对每一个渲染状态,获取每个模型目录资源匹配的其它模型文件的模型目录资源的对应渲染状态的状态标识与每个模型目录资源之后预设数量个模型目录资源的对应渲染状态的状态标识之间的匹配关系,并根据该匹配关系得到每个模型目录资源在该渲染状态处的渲染排列状态配置信息,以得到每个模型目录资源的渲染排列状态配置信息。
接下来,可以根据每个模型目录资源的渲染排列状态配置信息获取每个模型目录资源在渲染过程中的渲染控制状态,并根据渲染控制状态得到每个模型目录资源对应的多个渲染加载控制节点。例如,可以将模型目录资源在渲染过程中的渲染控制状态为预设控制状态时的渲染加载控制节点确定为每个模型目录资源对应的多个渲染加载控制节点、
在此基础上,可以进一步确定多个渲染加载控制节点的第一控制特征信息和第二控制特征信息。其中,值得说明的是,第一控制特征信息包含每个模型目录资源的渲染控制状态为开启状态时的控制特征信息,第二控制特征信息包含每个模型目录资源的渲染控制状态为关闭状态时的控制特征信息。
而后,可以确定第一控制特征信息在渲染加载控制节点中的位置排序,并根据位置排序确定第一控制特征信息的渲染排列位置,按照渲染排列位置分别确定每个模型目录资源对应的排列渲染线程的渲染加载控制节点对应的渲染分支序列,并计算与渲染分支序列对应的渲染分支特征,渲染分支序列是根据模型目录资源对应的排列渲染线程的渲染加载控制节点在渲染过程中对应的基于可渲染部分生成的渲染分支记录信息确定的,不同的可渲染部分对应的渲染分支记录信息不同。
接着,可以获取每个模型目录资源对应的排列渲染线程对应的线程排序,并根据渲染分支特征确定渲染分支序列与线程排序之间的映射关系,根据确定的渲染分支序列与线程排序之间的映射关系,从渲染分支序列中确定出每个模型目录资源的多个渲染分支以及每个渲染分支对应的渲染顺序,然后从多个渲染分支中筛选出多个与预设渲染顺序相同的渲染分支,获得多个第一渲染分支,并将多个渲染分支中除第一渲染分支以外的渲染分支作为第二渲染分支,由此可以根据第一渲染分支的数量与第二渲染分支的数量之间的第一比值、所有第一渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第二比值以及所有第二渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第三比值确定出针对每个模型目录资源的渲染间隔数,并根据各个模型文件中每个模型目录资源的渲染间隔数和渲染分支特征,对各个模型文件进行加载,得到加载后的目标虚拟现实场景和目标虚拟现实场景中的各个目标虚拟现实对象。
在一种可能的设计中,仍旧针对步骤S140,为了避免由于应用环境场景和虚拟现实对象在虚拟现实场景中的控制方式不统一导致的虚拟现实对象无法与应用环境场景进行有效适配的情况,提高虚拟现实对象的渲染效果和与应用环境场景的适配度,本实施例还可以获取每个目标虚拟现实对象对应的对象业务的第一控制信息及目标虚拟现实场景对应的场景业务的第二控制信息,然后比较第一控制信息与第二控制信息之间的控制节点关联集合,当控制节点关联集合中的任意至少两个关联控制节点的控制行为存在冲突时,确定场景业务针对存在冲突的目标关联控制节点的展示对象适配策略,由此可以根据展示对象适配策略确定将目标虚拟现实对象进行显示控制的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列,并根据确定的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列,对目标虚拟现实对象执行对象控制操作。
值得说明的是,第一控制信息和第二控制信息分别用于表示每个控制环节的控制指令,具体可以由虚拟显示模型的提供商进行配置。此外,目标对象适配区域可以理解为用于对目标虚拟现实对象在具体展示过程中的进行适配性控制的区域。
在一种可能的设计中,为了有效确定上述展示对象适配策略,提高虚拟现实对象的渲染效果和与应用环境场景的适配度,本实施例可以从场景业务中获取与存在冲突的目标关联控制节点所对应的当前场景空间,然后根据对象适配矩阵,计算当前场景空间所在的第一场景联动空间,并对第一场景联动空间的范围进行模拟更新,获取当前场景空间所在的第二场景联动空间,以将第二场景联动空间为下一场景空间的初始场景联动空间。
接下来,可以将下一场景空间作为当前场景空间,对对象适配矩阵进行更新,获得更新后的对象适配矩阵,根据更新后的对象适配矩阵,对当前场景空间对应的初始场景联动空间进行联动更新,以获得下一场景空间对应的初始场景联动空间,直到场景空间中场景对象全部模拟联动完毕,获得模拟联动结果。
在此基础上,可以根据初始模拟联动参数、场景空间中各个场景对象联动的次数、各个场景对象的总联动次数以及初始场景联动空间的区域配置参数计算对应的动态适配函数。
作为一种可能的示例,本实施例可以根据初始模拟联动参数获取多个模拟联动空间坐标,并获取多个模拟联动空间坐标中每个模拟联动空间坐标的联动坐标值,然后根据每个模拟联动空间坐标的联动坐标值和每个模拟联动空间坐标模拟联动前的模拟联动区间,获取每个模拟联动空间坐标的模拟联动集合头信息。
其中,值得说明的是,模拟联动集合头信息中包括模拟联动区间和对应的各个场景对象联动的次数和总联动次数。
而后,可以根据每个模拟联动空间坐标的模拟联动类型和每个模拟联动空间坐标的模拟联动区间,计算得到每个模拟联动空间坐标的模拟联动区间初始值。例如,模拟联动类型可以与一个区间系数对应,在此基础上,通过将每个模拟联动空间坐标的模拟联动区间与该区间系数进行相乘,即可得到每个模拟联动空间坐标的模拟联动区间初始值。
接着,可以根据每个模拟联动空间坐标的模拟联动区间初始值和对应的各个场景对象联动的次数和总联动次数,查询模拟联动信息表得到多个模拟联动空间坐标的坐标偏移适配参数,然后确定多个模拟联动空间坐标的坐标偏移适配参数以及初始场景联动空间的区域配置参数之间的参数融合信息,得到多个参数融合信息,由此计算多个参数融合信息的模拟联动结果和对应的模拟联动控制参数,根据模拟联动结果中的模拟联动过程节点序列,对模拟联动控制参数进行处理,得到多个模拟联动控制参数集。
而后,依次提取多个模拟联动控制参数集中的模拟联动适配过程,并将多个模拟联动适配过程中的匹配目标作为模拟联动目标,按照模拟联动适配过程,分别依次生成每个模拟联动目标对应的模拟联动集合,从而可以将模拟联动适配过程中的每个匹配目标之间的联动幅度分别与每个模拟联动集合进行匹配。其中,应说明的是,联动幅度与模拟联动集合的序列最大值和序列最小值之间的差值的绝对值相对应。
而后,可以根据与每个模拟联动集合相匹配的联动幅度为每个模拟联动集合设置对应的模拟联动适配节点,并按照模拟联动适配过程对设置有模拟联动适配节点的模拟联动集合进行关联配置,并按照完成关联配置的模拟联动集合对应的模拟联动控制参数集的类别,将完成关联配置的模拟联动集合应用于对应的模拟联动控件中,得到目标模拟联动控件,通过将每个目标模拟联动控件的动态适配函数进行组合,即可得到对应的动态适配函数。
在上述描述的基础上,即可将动态适配函数、模拟联动结果以及场景空间的场景参数作为控制节点关联集合的展示对象适配策略输出。
例如,可以根据动态适配函数对模拟联动结果中每个模拟联动节点进行函数代入,确定出每个模拟联动节点的模拟联动适配坐标点,并根据模拟联动适配坐标点,确定模拟联动节点的主联动适配配置信息,基于主联动适配配置信息查找出模拟联动节点对应的从联动适配配置信息,根据从联动适配配置信息将每个模拟联动节点合并为至少一个空间配置关系链。
然后,可以基于每个空间配置关系链获取每个空间配置关系链对应的用于表征对每个空间配置关系链进行模拟联动的链模拟联动参数,并根据链模拟联动参数确定出每个空间配置关系链在联动模拟联动节点时的联动控制信息,根据每个联动控制信息的联动控制逻辑关系对每个空间配置关系链进行拼接,得到拼接空间配置关系链。
而后,可以根据拼接空间配置关系链上的拼接空间点提取对应的拼接空间点适配信息,将拼接空间点适配信息按照不同对象展示标签分组,计算每个对象展示标签的适配调节信息,并根据适配调节信息选取拼接空间点适配区间,在根据拼接空间点适配区间在拼接空间点适配信息中生成用于对展示对象适配策略进行更新的更新流程时,根据更新流程获取拼接空间点适配区间对应的适配映射脚本,同时生成用于记录适配映射脚本的映射位空间,将适配映射脚本映射至映射位空间,根据拼接空间点适配信息的对象展示标签设置适配映射脚本的映射关联信息。
由此,可以根据映射关联信息判断拼接空间点适配信息是否适配展示对象适配策略,在拼接空间点适配信息适配展示对象适配策略时,根据更新流程确定对展示对象适配策略进行更新的至少一个更新参数,以根据至少一个更新参数更新出展示对象适配策略,其中,展示对象适配策略包括每个单位区域相对应的控制指令。
在一种可能的设计中,本实施例可以对目标虚拟现实对象所涉及的各对象波动范围进行定位,确定目标虚拟现实对象对应的对象控制坐标系,然后根据对象控制坐标系确定波动距离段集合,并提取对象控制坐标系的密集控制区域及以设定阈值为波动区间,提取密集控制区域关联波动距离段集合的集中控制范围。
其中,密集控制区域可以用于表示对象控制坐标系中在单位坐标系中的可控制坐标点数量大于设定数量(例如50个)所形成的区域。
而后,可以根据集中控制范围中关联的至少两个波动距离段坐标,将波动距离段坐标所对应的视觉区域按照视觉移动方向生成多个视觉移动单元,并计算下一个波动距离段坐标中的所有视觉区域与上一个波动距离段坐标中所有视觉区域间的重叠区域,并根据得到的每个重叠区域得到对应的视觉移动方向表。由此,可以根据视觉移动方向表,获取视觉移动方向相匹配且两视觉移动单元的各视觉区域之间的重叠区域小于对象控制坐标系在该重叠区域内的最大持续重叠区域的视觉移动单元以形成波动距离段坐标空间。
在此基础上,可以对每一波动距离段坐标空间中的坐标空间进行适配,得到适配的每一波动距离段坐标空间的适配区间,并根据每一波动距离段坐标空间的适配区间确定将目标虚拟现实对象显示控制的目标对象适配区域,从而根据展示对象适配策略中与每个目标对象适配区域相对应的单位区域的控制指令确定针对每个目标对象适配区域的控制指令序列。
图3为本申请实施例提供的虚拟现实场景加载装置300的功能模块示意图,本实施例可以根据上述方法实施例对该虚拟现实场景加载装置300进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图3示出的虚拟现实场景加载装置300只是一种装置示意图。其中,虚拟现实场景加载装置300可以包括确定模块310、提取模块320、生成模块330以及加载控制模块340,下面分别对该虚拟现实场景加载装置300的各个功能模块的功能进行详细阐述。
确定模块310,用于根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源。
提取模块320,用于从服务器200中获取多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,其中,渲染场景控件集合包括模型文件在模型渲染策略中各个视觉渲染单元对应的场景渲染控件,虚拟对象控件集合包括模型文件在模型渲染策略中各个视觉渲染单元对应的对象渲染控件。
生成模块330,用于根据渲染场景控件集合和虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合,视觉渲染单元的渲染节点集合包括用于表示视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点。
加载模块340,用于根据各个模型文件的渲染场景控件集合、虚拟对象控件集合及各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对目标虚拟现实场景和目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对各个目标虚拟现实对象执行对象控制操作。
进一步地,图4为本申请实施例提供的用于执行上述虚拟现实场景加载方法的虚拟现实设备100的结构示意图。如图4所示,该虚拟现实设备100可包括网络接口110、机器可读存储介质120、处理器130以及总线140。处理器130可以是一个或多个,图4中以一个处理器130为例。网络接口110、机器可读存储介质120以及处理器130可以通过总线140或其他方式连接,图4中以通过总线140连接为例。
机器可读存储介质120作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的虚拟现实场景加载方法对应的程序指令/模块(例如图3中所示的确定模块310、提取模块320、生成模块330以及加载控制模块340)。处理器130通过检测存储在机器可读存储介质120中的软件程序、指令以及模块,从而执行终端设备的各种功能应用以及数据处理,即实现上述的虚拟现实场景加载方法,在此不再赘述。
机器可读存储介质120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,机器可读存储介质120可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合发布节点的存储器。在一些实例中,机器可读存储介质120可进一步包括相对于处理器130远程设置的存储器,这些远程存储器可以通过网络连接至虚拟现实设备100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。
虚拟现实设备100可以通过通信接口110和其它设备(例如服务器200)进行信息交互。通信接口110可以是电路、总线、收发器或者其它任意可以用于进行信息交互的装置。处理器130可以利用通信接口110收发信息。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、虚拟现实设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、虚拟现实设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的虚拟现实设备、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (8)
1.一种虚拟现实场景加载方法,其特征在于,应用于虚拟现实设备,所述虚拟现实设备与服务器通信连接,所述方法包括:
根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源;
从所述服务器中获取所述多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,其中,所述渲染场景控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件,所述虚拟对象控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件;
根据所述渲染场景控件集合和所述虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合,所述视觉渲染单元的渲染节点集合包括用于表示所述视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点;
根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对所述目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对所述各个目标虚拟现实对象执行对象控制操作;
所述对所述各个目标虚拟现实对象执行对象控制操作的步骤,包括:
获取每个目标虚拟现实对象对应的对象业务的第一控制信息及所述目标虚拟现实场景对应的场景业务的第二控制信息;
比较所述第一控制信息与所述第二控制信息之间的控制节点关联集合,当所述控制节点关联集合中的任意至少两个关联控制节点的控制行为存在冲突时,确定所述场景业务针对存在冲突的目标关联控制节点的展示对象适配策略;
根据所述展示对象适配策略确定将所述目标虚拟现实对象进行显示控制的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列;
根据确定的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列,对所述目标虚拟现实对象执行对象控制操作;
第一控制信息和第二控制信息分别用于表示每个控制环节的控制指令,目标对象适配区域为用于对目标虚拟现实对象在具体展示过程中的进行适配性控制的区域。
2.根据权利要求1所述的虚拟现实场景加载方法,其特征在于,所述提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合的步骤,包括:
提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的多个场景摄像机;
根据所述多个场景摄像机将所述模型文件输入到所述模型渲染策略中进行图形接口调用处理,得到多个不同渲染类别的图形接口调用参数;
针对所述多个场景摄像机中的每个场景摄像机,从所述多个不同渲染类别的图形接口调用参数中,为所述场景摄像机选择对应渲染类别的图形接口调用参数,并利用所述图形接口调用参数所对应的图形接口调用信息,判断所述场景摄像机是否匹配预设的图形接口调用模板,当所述场景摄像机匹配预设的图形接口调用模板时,保留所述场景摄像机,以得到多个保留的场景摄像机;
将所述模型文件通过所述多个保留的场景摄像机输入到所述模型渲染策略中进行渲染分割,获取对应的渲染分割虚拟对象控件集合及所述渲染分割虚拟对象控件集合中目标对象渲染控件的渲染分割过程信息,并根据所述目标对象渲染控件的渲染分割过程信息确定所述目标对象渲染控件的渲染分割区域;
在所述目标对象渲染控件的渲染分割区域内获取每个目标对象渲染控件的渲染分割位置,并根据所述每个目标对象渲染控件的渲染分割位置的位置置信度进行目标对象渲染控件重组,得到对应的候选视觉渲染单元,并获得所述模型文件在所述候选视觉渲染单元对应的场景渲染控件,以根据所述场景渲染控件建立所述候选视觉渲染单元和对象渲染控件之间的对象渲染控件信息,并以所述对象渲染控件为基准处理每个候选视觉渲染单元,以确定每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息;
根据每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息,确定每个候选视觉渲染单元中的各个视觉渲染单元,以得到所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件以及所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件。
3.根据权利要求1所述的虚拟现实场景加载方法,其特征在于,所述根据所述渲染场景控件集合和虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合的步骤,包括:
根据所述渲染场景控件集合和虚拟对象控件集合确定所述模型文件对于每个视觉渲染单元的渲染线程信息,并将所述模型文件对于每个视觉渲染单元的渲染线程信息转换为渲染线程队列;
根据所述渲染线程队列,构建对应的渲染线程拓扑图,并对构建的所述渲染线程拓扑图进行解析,得到多个渲染线程拓扑聚类;
获取各个所述渲染线程拓扑聚类中渲染线程数量的平均值,计算所述渲染线程拓扑聚类中渲染线程数量与所述平均值的差值,以得到所述渲染线程拓扑聚类的渲染线程数量确定值;
将渲染线程数量确定值相关联的多个渲染线程拓扑聚类进行分类,以生成由多个分类的渲染线程拓扑聚类的分类组合组成的对应的分类渲染线程拓扑聚类图;
在所述分类渲染线程拓扑聚类图中选择渲染线程最长的渲染线程拓扑聚类和渲染线程最小的渲染线程拓扑聚类分别作为第一渲染线程拓扑聚类和第二渲染线程拓扑聚类,并分别计算所述分类渲染线程拓扑聚类图中各个渲染线程拓扑聚类与所述第一渲染线程拓扑聚类、所述第二渲染线程拓扑聚类之间的渲染线程数量确定值差异,将与所述第一渲染线程拓扑聚类的渲染线程数量确定值差异小于或者等于与所述第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第一渲染线程拓扑聚类序列,将与所述第一渲染线程拓扑聚类的渲染线程数量确定值差异大于与所述第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第二渲染线程拓扑聚类序列;
计算所述第一渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第一渲染线程拓扑聚类,计算所述第二渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第二渲染线程拓扑聚类;
根据所述第一渲染线程拓扑聚类和所述第二渲染线程拓扑聚类与所述分类渲染线程拓扑聚类图中的各个渲染线程拓扑聚类的重合度确定对应的多个第三渲染线程拓扑聚类和多个第四渲染线程拓扑聚类;
根据所述多个第三渲染线程拓扑聚类和所述多个第四渲染线程拓扑聚类,确定所述渲染线程信息所对应的渲染线程参数信息,并对所述渲染线程参数信息进行解析以获取所述渲染线程参数信息中的渲染线程过程控制信息;
将所述渲染线程过程控制信息的过程控制范围确定为所述视觉渲染单元所对应的过程控制范围,并根据所述视觉渲染单元所对应的过程控制范围和所述渲染线程过程控制信息确定各个视觉渲染单元的渲染节点集合。
4.根据权利要求1-3中任意一项所述的虚拟现实场景加载方法,其特征在于,所述根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的步骤,包括:
根据所述各个模型文件的渲染场景控件集合和虚拟对象控件集合确定出各个模型文件的加载帧信息,并根据所述加载帧信息确定所述各个模型文件对应的加载控件集合,所述加载控件集合包括场景渲染控件和对象渲染控件;
从各个视觉渲染单元的渲染节点集合获取所述各个模型文件对应的加载控件集合的渲染线程参数,所述渲染线程参数用于表示所述加载控件集合的渲染线程的排列信息;
根据所述渲染线程参数建立所述加载控件集合与排列渲染线程的映射关系,并根据建立的所述加载控件集合与排列渲染线程的映射关系确定所述各个模型文件中每个模型目录资源的多个渲染状态,针对每一个渲染状态,获取每个模型目录资源匹配的其它模型文件的模型目录资源的对应渲染状态的状态标识与每个模型目录资源之后预设数量个模型目录资源的对应渲染状态的状态标识之间的匹配关系,并根据该匹配关系得到每个模型目录资源在该渲染状态处的渲染排列状态配置信息,以得到每个模型目录资源的渲染排列状态配置信息;
根据每个模型目录资源的渲染排列状态配置信息获取每个模型目录资源在渲染过程中的渲染控制状态;
根据所述渲染控制状态得到每个模型目录资源对应的多个渲染加载控制节点,并确定所述多个渲染加载控制节点的第一控制特征信息和第二控制特征信息,所述第一控制特征信息包含所述每个模型目录资源的渲染控制状态为开启状态时的控制特征信息,所述第二控制特征信息包含所述每个模型目录资源的渲染控制状态为关闭状态时的控制特征信息;
确定所述第一控制特征信息在所述渲染加载控制节点中的位置排序,并根据所述位置排序确定所述第一控制特征信息的渲染排列位置,按照所述渲染排列位置分别确定每个模型目录资源对应的排列渲染线程的渲染加载控制节点对应的渲染分支序列,并计算与所述渲染分支序列对应的渲染分支特征,所述渲染分支序列是根据所述模型目录资源对应的排列渲染线程的渲染加载控制节点在渲染过程中对应的基于可渲染部分生成的渲染分支记录信息确定的,不同的可渲染部分对应的渲染分支记录信息不同;
获取每个模型目录资源对应的排列渲染线程对应的线程排序,并根据所述渲染分支特征确定所述渲染分支序列与所述线程排序之间的映射关系,根据确定的所述渲染分支序列与所述线程排序之间的映射关系,从所述渲染分支序列中确定出每个模型目录资源的多个渲染分支以及每个渲染分支对应的渲染顺序;
从所述多个渲染分支中筛选出多个与预设渲染顺序相同的渲染分支,获得多个第一渲染分支,并将所述多个渲染分支中除所述第一渲染分支以外的渲染分支作为第二渲染分支;
根据所述第一渲染分支的数量与所述第二渲染分支的数量之间的第一比值、所有第一渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第二比值以及所有第二渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第三比值确定出针对所述每个模型目录资源的渲染间隔数;
根据所述各个模型文件中每个模型目录资源的渲染间隔数和渲染分支特征,对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象。
5.一种虚拟现实系统,其特征在于,所述虚拟现实系统包括虚拟现实设备以及与所述虚拟现实设备通信连接的服务器;
所述虚拟现实设备用于根据针对目标虚拟现实场景的加载请求,确定多个待加载虚拟现实模型资源;
所述虚拟现实设备用于从所述服务器中获取所述多个待加载虚拟现实模型资源分别对应的模型文件,并提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合,其中,所述渲染场景控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件,所述虚拟对象控件集合包括所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件;
所述虚拟现实设备用于根据所述渲染场景控件集合和所述虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合,所述视觉渲染单元的渲染节点集合包括用于表示所述视觉渲染单元在渲染对应的场景渲染控件和对象渲染控件的渲染节点;
所述虚拟现实设备用于根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象,并在完成对所述目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的加载后,对所述各个目标虚拟现实对象执行对象控制操作;
所述虚拟现实设备对所述各个目标虚拟现实对象执行对象控制操作的方式,包括:
获取每个目标虚拟现实对象对应的对象业务的第一控制信息及所述目标虚拟现实场景对应的场景业务的第二控制信息;
比较所述第一控制信息与所述第二控制信息之间的控制节点关联集合,当所述控制节点关联集合中的任意至少两个关联控制节点的控制行为存在冲突时,确定所述场景业务针对存在冲突的目标关联控制节点的展示对象适配策略;
根据所述展示对象适配策略确定将所述目标虚拟现实对象进行显示控制的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列;
根据确定的目标对象适配区域以及针对每个目标对象适配区域的控制指令序列,对所述目标虚拟现实对象执行对象控制操作;
第一控制信息和第二控制信息分别用于表示每个控制环节的控制指令,目标对象适配区域为用于对目标虚拟现实对象在具体展示过程中的进行适配性控制的区域。
6.根据权利要求5所述的虚拟现实系统,其特征在于,所述虚拟现实设备提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的渲染场景控件集合和虚拟对象控件集合的方式,包括:
提取每个模型文件在对应的待加载虚拟现实模型资源所对应的模型渲染策略中的多个场景摄像机;
根据所述多个场景摄像机将所述模型文件输入到所述模型渲染策略中进行图形接口调用处理,得到多个不同渲染类别的图形接口调用参数;
针对所述多个场景摄像机中的每个场景摄像机,从所述多个不同渲染类别的图形接口调用参数中,为所述场景摄像机选择对应渲染类别的图形接口调用参数,并利用所述图形接口调用参数所对应的图形接口调用信息,判断所述场景摄像机是否匹配预设的图形接口调用模板,当所述场景摄像机匹配预设的图形接口调用模板时,保留所述场景摄像机,以得到多个保留的场景摄像机;
将所述模型文件通过所述多个保留的场景摄像机输入到所述模型渲染策略中进行渲染分割,获取对应的渲染分割虚拟对象控件集合及所述渲染分割虚拟对象控件集合中目标对象渲染控件的渲染分割过程信息,并根据所述目标对象渲染控件的渲染分割过程信息确定所述目标对象渲染控件的渲染分割区域;
在所述目标对象渲染控件的渲染分割区域内获取每个目标对象渲染控件的渲染分割位置,并根据所述每个目标对象渲染控件的渲染分割位置的位置置信度进行目标对象渲染控件重组,得到对应的候选视觉渲染单元,并获得所述模型文件在所述候选视觉渲染单元对应的场景渲染控件,以根据所述场景渲染控件建立所述候选视觉渲染单元和对象渲染控件之间的对象渲染控件信息,并以所述对象渲染控件为基准处理每个候选视觉渲染单元,以确定每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息;
根据每个候选视觉渲染单元的对象渲染控件信息所对应的渲染分割过程信息,确定每个候选视觉渲染单元中的各个视觉渲染单元,以得到所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的场景渲染控件以及所述模型文件在所述模型渲染策略中各个视觉渲染单元对应的对象渲染控件。
7.根据权利要求5所述的虚拟现实系统,其特征在于,所述虚拟现实设备根据所述渲染场景控件集合和虚拟对象控件集合生成各个视觉渲染单元的渲染节点集合的方式,包括:
根据所述渲染场景控件集合和虚拟对象控件集合确定所述模型文件对于每个视觉渲染单元的渲染线程信息,并将所述模型文件对于每个视觉渲染单元的渲染线程信息转换为渲染线程队列;
根据所述渲染线程队列,构建对应的渲染线程拓扑图,并对构建的所述渲染线程拓扑图进行解析,得到多个渲染线程拓扑聚类;
获取各个所述渲染线程拓扑聚类中渲染线程数量的平均值,计算所述渲染线程拓扑聚类中渲染线程数量与所述平均值的差值,以得到所述渲染线程拓扑聚类的渲染线程数量确定值;
将渲染线程数量确定值相关联的多个渲染线程拓扑聚类进行分类,以生成由多个分类的渲染线程拓扑聚类的分类组合组成的对应的分类渲染线程拓扑聚类图;
在所述分类渲染线程拓扑聚类图中选择渲染线程最长的渲染线程拓扑聚类和渲染线程最小的渲染线程拓扑聚类分别作为第一渲染线程拓扑聚类和第二渲染线程拓扑聚类,并分别计算所述分类渲染线程拓扑聚类图中各个渲染线程拓扑聚类与所述第一渲染线程拓扑聚类、所述第二渲染线程拓扑聚类之间的渲染线程数量确定值差异,将与所述第一渲染线程拓扑聚类的渲染线程数量确定值差异小于或者等于与所述第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第一渲染线程拓扑聚类序列,将与所述第一渲染线程拓扑聚类的渲染线程数量确定值差异大于与所述第二渲染线程拓扑聚类的渲染线程数量确定值差异的渲染线程拓扑聚类分配至第二渲染线程拓扑聚类序列;
计算所述第一渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第一渲染线程拓扑聚类,计算所述第二渲染线程拓扑聚类序列中所有渲染线程拓扑聚类的渲染线程数量确定值的平均值,获得以实际渲染线程数量确定值的平均值为区域的第二渲染线程拓扑聚类;
根据所述第一渲染线程拓扑聚类和所述第二渲染线程拓扑聚类与所述分类渲染线程拓扑聚类图中的各个渲染线程拓扑聚类的重合度确定对应的多个第三渲染线程拓扑聚类和多个第四渲染线程拓扑聚类;
根据所述多个第三渲染线程拓扑聚类和所述多个第四渲染线程拓扑聚类,确定所述渲染线程信息所对应的渲染线程参数信息,并对所述渲染线程参数信息进行解析以获取所述渲染线程参数信息中的渲染线程过程控制信息;
将所述渲染线程过程控制信息的过程控制范围确定为所述视觉渲染单元所对应的过程控制范围,并根据所述视觉渲染单元所对应的过程控制范围和所述渲染线程过程控制信息确定各个视觉渲染单元的渲染节点集合。
8.根据权利要求5-7中任意一项所述的虚拟现实系统,其特征在于,所述虚拟现实设备根据各个模型文件的渲染场景控件集合、所述虚拟对象控件集合及所述各个视觉渲染单元的渲染节点集合对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象的方式,包括:
根据所述各个模型文件的渲染场景控件集合和虚拟对象控件集合确定出各个模型文件的加载帧信息,并根据所述加载帧信息确定所述各个模型文件对应的加载控件集合,所述加载控件集合包括场景渲染控件和对象渲染控件;
从各个视觉渲染单元的渲染节点集合获取所述各个模型文件对应的加载控件集合的渲染线程参数,所述渲染线程参数用于表示所述加载控件集合的渲染线程的排列信息;
根据所述渲染线程参数建立所述加载控件集合与排列渲染线程的映射关系,并根据建立的所述加载控件集合与排列渲染线程的映射关系确定所述各个模型文件中每个模型目录资源的多个渲染状态,针对每一个渲染状态,获取每个模型目录资源匹配的其它模型文件的模型目录资源的对应渲染状态的状态标识与每个模型目录资源之后预设数量个模型目录资源的对应渲染状态的状态标识之间的匹配关系,并根据该匹配关系得到每个模型目录资源在该渲染状态处的渲染排列状态配置信息,以得到每个模型目录资源的渲染排列状态配置信息;
根据每个模型目录资源的渲染排列状态配置信息获取每个模型目录资源在渲染过程中的渲染控制状态;
根据所述渲染控制状态得到每个模型目录资源对应的多个渲染加载控制节点,并确定所述多个渲染加载控制节点的第一控制特征信息和第二控制特征信息,所述第一控制特征信息包含所述每个模型目录资源的渲染控制状态为开启状态时的控制特征信息,所述第二控制特征信息包含所述每个模型目录资源的渲染控制状态为关闭状态时的控制特征信息;
确定所述第一控制特征信息在所述渲染加载控制节点中的位置排序,并根据所述位置排序确定所述第一控制特征信息的渲染排列位置,按照所述渲染排列位置分别确定每个模型目录资源对应的排列渲染线程的渲染加载控制节点对应的渲染分支序列,并计算与所述渲染分支序列对应的渲染分支特征,所述渲染分支序列是根据所述模型目录资源对应的排列渲染线程的渲染加载控制节点在渲染过程中对应的基于可渲染部分生成的渲染分支记录信息确定的,不同的可渲染部分对应的渲染分支记录信息不同;
获取每个模型目录资源对应的排列渲染线程对应的线程排序,并根据所述渲染分支特征确定所述渲染分支序列与所述线程排序之间的映射关系,根据确定的所述渲染分支序列与所述线程排序之间的映射关系,从所述渲染分支序列中确定出每个模型目录资源的多个渲染分支以及每个渲染分支对应的渲染顺序;
从所述多个渲染分支中筛选出多个与预设渲染顺序相同的渲染分支,获得多个第一渲染分支,并将所述多个渲染分支中除所述第一渲染分支以外的渲染分支作为第二渲染分支;
根据所述第一渲染分支的数量与所述第二渲染分支的数量之间的第一比值、所有第一渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第二比值以及所有第二渲染分支中的第一渲染顺序的数量与第二渲染顺序的数量的第三比值确定出针对所述每个模型目录资源的渲染间隔数;
根据所述各个模型文件中每个模型目录资源的渲染间隔数和渲染分支特征,对各个模型文件进行加载,得到加载后的目标虚拟现实场景和所述目标虚拟现实场景中的各个目标虚拟现实对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011092320.6A CN112181531A (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法及虚拟现实系统 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010159574.9A CN111352670B (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法、装置、虚拟现实系统及设备 |
CN202011092320.6A CN112181531A (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法及虚拟现实系统 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010159574.9A Division CN111352670B (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法、装置、虚拟现实系统及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112181531A true CN112181531A (zh) | 2021-01-05 |
Family
ID=71196192
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010159574.9A Active CN111352670B (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法、装置、虚拟现实系统及设备 |
CN202011092319.3A Withdrawn CN112181530A (zh) | 2020-03-10 | 2020-03-10 | 基于云平台的虚拟现实场景加载方法及虚拟现实系统 |
CN202011092320.6A Withdrawn CN112181531A (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法及虚拟现实系统 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010159574.9A Active CN111352670B (zh) | 2020-03-10 | 2020-03-10 | 虚拟现实场景加载方法、装置、虚拟现实系统及设备 |
CN202011092319.3A Withdrawn CN112181530A (zh) | 2020-03-10 | 2020-03-10 | 基于云平台的虚拟现实场景加载方法及虚拟现实系统 |
Country Status (1)
Country | Link |
---|---|
CN (3) | CN111352670B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024031977A1 (zh) * | 2022-08-11 | 2024-02-15 | 华为云计算技术有限公司 | 一种图像渲染方法、装置及设备 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112529995B (zh) * | 2020-12-28 | 2023-03-31 | Oppo(重庆)智能科技有限公司 | 图像渲染计算方法、装置、存储介质以及终端 |
WO2023185476A1 (zh) * | 2022-03-29 | 2023-10-05 | 北京字跳网络技术有限公司 | 对象渲染方法、装置、电子设备、存储介质及程序产品 |
CN114870407B (zh) * | 2022-04-29 | 2023-02-14 | 深圳市中视典数字科技有限公司 | 一种基于虚拟现实的数字人体数据采集系统及方法 |
CN115795342B (zh) * | 2022-11-15 | 2024-02-06 | 支付宝(杭州)信息技术有限公司 | 一种业务场景分类的方法、装置、存储介质及电子设备 |
CN116681869B (zh) * | 2023-06-21 | 2023-12-19 | 西安交通大学城市学院 | 基于虚拟现实应用的文物3d展示处理方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9323055B2 (en) * | 2006-05-26 | 2016-04-26 | Exelis, Inc. | System and method to display maintenance and operational instructions of an apparatus using augmented reality |
CN103076919B (zh) * | 2012-12-29 | 2016-04-13 | 广东志成冠军集团有限公司 | 一种无线触摸遥控方法和系统 |
CN103106680B (zh) * | 2013-02-16 | 2015-05-06 | 赞奇科技发展有限公司 | 基于云计算架构的三维图形渲染的实现方法及云服务系统 |
US9947139B2 (en) * | 2014-06-20 | 2018-04-17 | Sony Interactive Entertainment America Llc | Method and apparatus for providing hybrid reality environment |
CN105069020B (zh) * | 2015-07-14 | 2018-09-21 | 国家信息中心 | 自然资源数据三维可视化方法和系统 |
CN106502654B (zh) * | 2016-09-30 | 2019-09-17 | 歌尔科技有限公司 | 虚拟现实场景加载方法及设备 |
US10127290B1 (en) * | 2017-07-19 | 2018-11-13 | Facebook, Inc. | Systems and methods for distributing augmented-reality effects |
US10565802B2 (en) * | 2017-08-31 | 2020-02-18 | Disney Enterprises, Inc. | Collaborative multi-modal mixed-reality system and methods leveraging reconfigurable tangible user interfaces for the production of immersive, cinematic, and interactive content |
CN108319478B (zh) * | 2018-01-22 | 2020-11-10 | 腾讯科技(深圳)有限公司 | 对象的属性的调整方法、装置、存储介质和电子装置 |
CN108479067B (zh) * | 2018-04-12 | 2019-09-20 | 网易(杭州)网络有限公司 | 游戏画面的渲染方法和装置 |
CN109388245A (zh) * | 2018-11-06 | 2019-02-26 | 杭州炽橙文创科技有限公司 | 一种虚拟现实应用的共享资源实时交互系统 |
CN110060341B (zh) * | 2019-04-29 | 2023-11-17 | 网易(杭州)网络有限公司 | 一种游戏模型渲染的方法和装置 |
CN110363839B (zh) * | 2019-06-19 | 2023-08-11 | 深圳市彬讯科技有限公司 | 模型渲染方法、装置、计算机设备及存储介质 |
CN110570505B (zh) * | 2019-09-11 | 2020-11-17 | 腾讯科技(深圳)有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
CN110665219A (zh) * | 2019-10-14 | 2020-01-10 | 网易(杭州)网络有限公司 | 一种虚拟现实游戏的操作控制方法及装置 |
CN110743168B (zh) * | 2019-10-21 | 2023-10-20 | 腾讯科技(深圳)有限公司 | 虚拟场景中的虚拟对象控制方法、计算机设备及存储介质 |
-
2020
- 2020-03-10 CN CN202010159574.9A patent/CN111352670B/zh active Active
- 2020-03-10 CN CN202011092319.3A patent/CN112181530A/zh not_active Withdrawn
- 2020-03-10 CN CN202011092320.6A patent/CN112181531A/zh not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024031977A1 (zh) * | 2022-08-11 | 2024-02-15 | 华为云计算技术有限公司 | 一种图像渲染方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112181530A (zh) | 2021-01-05 |
CN111352670A (zh) | 2020-06-30 |
CN111352670B (zh) | 2021-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111352670B (zh) | 虚拟现实场景加载方法、装置、虚拟现实系统及设备 | |
CN111104291B (zh) | 基于物联网的环境监测方法、装置、系统及监测服务器 | |
CN111371856B (zh) | 云计算任务调度方法、装置、云计算系统及服务器 | |
CN111312406A (zh) | 一种疫情标签数据处理方法及系统 | |
CN111476875B (zh) | 智慧建筑楼宇物联网对象模拟方法及楼宇云服务器 | |
CN111209336A (zh) | 基于区块链的数据分配方法、装置及服务器 | |
CN111367414B (zh) | 虚拟现实对象控制方法、装置、虚拟现实系统及设备 | |
CN108833592A (zh) | 云主机调度器优化方法、装置、设备及存储介质 | |
CN111105076A (zh) | 天气预报数据的生成方法、装置、计算机设备和存储介质 | |
CN111210198A (zh) | 信息投递方法、装置及服务器 | |
CN111209074B (zh) | 浏览器视图加载方法、装置、系统及服务器 | |
CN111327706B (zh) | 远程抄表数据处理方法、装置、燃气表系统及燃气云平台 | |
CN112417668B (zh) | 一种生态保护智能预警方法、装置及服务器 | |
CN111367528B (zh) | 软件开发包的编译方法、装置、软件开发系统及服务器 | |
CN111476886B (zh) | 智慧建筑楼宇三维模型渲染方法及楼宇云服务器 | |
CN111209509B (zh) | 基于大数据平台的信息展示方法、装置及大数据平台 | |
CN111340683B (zh) | 图像数据处理方法、装置、图像处理系统及服务器 | |
CN112364515B (zh) | 一种生态环境智能监控方法、装置及服务器 | |
CN112380493B (zh) | 一种土壤成分含量检测智能分析方法、装置及服务器 | |
CN112486615A (zh) | 基于拓扑路径的决策流执行方法、装置、设备及存储介质 | |
CN112613535A (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210105 |