System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,更具体地说是涉及一种三维场景渲染处理方法及装置。
技术介绍
1、在如电影和电视制作、游戏开发、建筑可视化、产品设计和科学模拟等三维场景渲染应用中,由于三维场景中各个模型的数据采集方式不一致,导致训练好的各个模型在尺度和姿态上都会有所不同,使得基于各个模型渲染得到的各个画面布局不符合三维场景要求,降低了整个三维场景渲染画面的视觉效果和真实性。
2、为了改善三维场景渲染效果,目前通常是将激光扫描生成的场景mesh(三维模型)作为场景底座,以此为布局标准,先对同一三维场景中的各个模型进行旋转、缩放和平移等变换,生成对应新的模型后,再基于各个新的模型进行场景渲染,使得各个模型对应的渲染画面布局符合三维场景要求。
3、然而,上述三维场景渲染处理方法中,各个模型的变换处理会降低渲染画面质量,且因新模型无法共享到多个三维场景,会造成资源浪费,降低了多个三维场景渲染效率。
技术实现思路
1、鉴于上述问题,本申请提供了以下方案:
2、本申请第一方面提供一种三维场景渲染处理方法,所述方法包括:
3、获取三维场景包含的多个三维模型各自对应的变换矩阵;所述变换矩阵表示对应所述三维模型变换处理后能够满足所述三维场景的布局要求;
4、响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿;
5、基于请求渲染的所述三
6、在一种可能的实现中,所述响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,基于请求渲染的所述三维模型,渲染所述目标渲染位姿对应的目标画面,包括:
7、响应于基于所述三维模型的渲染请求,基于请求渲染的第一三维模型对应的第一变换矩阵,将所述三维场景的初始渲染位姿变换为第一目标渲染位姿,并基于请求渲染的第二三维模型对应的第二变换矩阵,将所述初始渲染位姿变换为第二目标渲染位姿;
8、基于所述第一三维模型渲染所述第一目标渲染位姿对应的第一场景画面,基于所述第二三维模型渲染所述第二目标渲染位姿对应的第二场景画面;
9、将所述第一场景画面与所述第二场景画面叠加,得到请求渲染的目标画面。
10、在一种可能的实现中,所述响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,包括:
11、响应于基于所述三维模型的渲染请求,获取所述三维场景的初始渲染位姿;
12、基于请求渲染的所述三维模型对应的变换矩阵的逆矩阵,对所述初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿。
13、在一种可能的实现中,所述请求渲染的所述三维模型包括所述多个三维模型中的第一三维模型和第二三维模型,所述第一三维模型对应的第一变换矩阵与所述第二三维模型对应的第二变换矩阵之间的关系满足所述三维场景的布局要求。
14、在一种可能的实现中,所述基于请求渲染的所述三维模型对应的变换矩阵的逆矩阵,对所述初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,包括以下任一种:
15、对请求渲染的所述三维模型对应的变换矩阵取逆,利用得到的逆矩阵对所述初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿;
16、调取已存储的与请求渲染的所述三维模型对应的逆矩阵,对所述初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿;所述逆矩阵是在所述渲染请求响应之前,对请求渲染的所述三维模型对应的所述变换矩阵取逆得到。
17、在一种可能的实现中,所述获取三维场景包含的多个三维模型各自对应的变换矩阵,包括:
18、获取三维场景的场景网格,以及用于构建所述三维场景的多个三维模型;
19、基于针对所述多个三维模型在所述三维场景中的布局要求,将所述多个三维模型分别与所述场景网格进行比对,生成所述多个三维模型各自对应的变换矩阵;
20、其中,所述变换矩阵包括指示对应所述三维模型满足所述布局要求时,相对于所述场景网格的缩放矩阵,旋转矩阵以及平移矩阵之中的一种或多种组合。
21、在一种可能的实现中,所述针对所述多个三维模型在所述三维场景中的布局要求的确定方法包括以下任一种:
22、响应于针对所述多个三维模型的布局请求,输出模型布局界面,并在所述模型布局界面呈现多种布局方式,响应于针对至少一组所述三维模型的布局方式选择操作,利用选择的所述布局方式确定相应所述三维模型在所述三维场景中的布局要求;
23、响应于针对所述多个三维模型的布局请求,输出模型布局界面,响应于对所述模型布局界面的布局方式输入操作,得到至少一组所述三维模型在所述三维场景中的布局要求;
24、基于所述三维场景包含的多个待渲染对象之间的布局方式,确定针对所述多个待渲染对象各自对应的所述三维模型在所述三维场景中的布局要求;
25、其中,所述布局方式是指所述多个三维模型对应渲染的场景画面在所述三维场景中的阵列摆放方式;
26、一组所述三维模型包括所述多个三维模型之中的至少两个,不同组所述三维模型之间能够包含相同所述三维模型。
27、在一种可能的实现中,所述获取三维场景的场景网格,以及用于构建所述三维场景的多个三维模型,包括:
28、响应于对三维场景的渲染请求,从多个候选场景网格中,选择请求渲染的所述三维场景的场景网格;
29、响应于对所述三维场景的配置请求,输出三维场景配置界面,并在所述三维场景配置界面中呈现多个候选模型;所述多个候选模型能够通过不同采集方式得到;
30、响应于对所述候选模型的选择操作,将选择的各个所述候选模型确定为用于构建所述三维场景的三维模型。
31、在一种可能的实现中,所述响应于对所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,基于请求渲染的所述三维模型,渲染所述目标渲染位姿对应的场景画面,包括:
32、对所述多个三维模型各自对应的所述变换矩阵取逆,得到对应的逆矩阵;
33、输出所述三维场景的初始场景画面;
34、响应于对所述初始场景画面的视角调整指令,确定调整后的第一视角下的第一三维模型,并获取所述三维场景的初始渲染位姿;
35、基于所述第一三维模型对应的所述逆矩阵,将所述初始渲染位姿变换为第一目标渲染位姿,以基于所述第一三维模型渲染所述第一目标本文档来自技高网...
【技术保护点】
1.一种三维场景渲染处理方法,所述方法包括:
2.根据权利要求1所述的方法,所述响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,基于请求渲染的所述三维模型,渲染所述目标渲染位姿对应的目标画面,包括:
3.根据权利要求1所述的方法,所述响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,包括:
4.根据权利要求3所述的方法,其中:
5.根据权利要求3所述的方法,所述基于请求渲染的所述三维模型对应的变换矩阵的逆矩阵,对所述初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,包括以下任一种:
6.根据权利要求1-5任一项所述的方法,所述获取三维场景包含的多个三维模型各自对应的变换矩阵,包括:
7.根据权利要求6所述的方法,所述针对所述多个三维模型在所述三维场景中的布局要求
8.根据权利要求6所述的方法,所述获取三维场景的场景网格,以及用于构建所述三维场景的多个三维模型,包括:
9.根据权利要求2所述的方法,所述响应于对所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,基于请求渲染的所述三维模型,渲染所述目标渲染位姿对应的场景画面,包括:
10.一种三维场景渲染处理装置,所述装置包括:
...【技术特征摘要】
1.一种三维场景渲染处理方法,所述方法包括:
2.根据权利要求1所述的方法,所述响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,基于请求渲染的所述三维模型,渲染所述目标渲染位姿对应的目标画面,包括:
3.根据权利要求1所述的方法,所述响应于基于所述三维模型的渲染请求,基于请求渲染的所述三维模型对应的变换矩阵,对所述三维场景的初始渲染位姿进行变换处理,得到请求渲染的所述三维模型对应的目标渲染位姿,包括:
4.根据权利要求3所述的方法,其中:
5.根据权利要求3所述的方法,所述基于请求渲染的所述三维模型对应的变换矩阵的逆矩阵,对所述初始渲染位姿进行变换处理,得到请求渲染的所...
【专利技术属性】
技术研发人员:张振飞,刘勖,张彤,
申请(专利权)人:联想上海信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。