一种三维模型绘制方法及装置、一种计算设备及存储介质制造方法及图纸

技术编号:20821820 阅读:30 留言:0更新日期:2019-04-10 06:27
本申请提供的一种三维模型绘制方法及装置、一种计算设备及存储介质,其中,所述模型包括至少一个三维网格单元,所述方法包括:确定所述至少一个三维网格单元的外表面的像素位置;基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置;基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向;基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制。

【技术实现步骤摘要】
一种三维模型绘制方法及装置、一种计算设备及存储介质
本申请涉及互联网
,特别涉及一种三维模型绘制方法及装置、一种计算设备及计算机可读存储介质。
技术介绍
现有技术的3D画面场景绘制涉及3D建筑物的绘制时,由于需要透过玻璃幕墙或窗户展示其内部结构,往往需要进行三维模型构建计算,这样会带来极大的运算开销。目前,存在一种非建模的3D绘制技术(InteriorMapping)。这种技术通过实时顶点着色,模拟渲染出三维建筑物的内部结构的类似效果,这样,当从建筑物外部观察时,就获得了和三维建模达到的类似的视觉效果,但是采用InteriorMapping技术在进行着色时通过用虚拟四面体模拟建筑物的房间,容易产生空气墙,造成用户体验较差。
技术实现思路
有鉴于此,本申请实施例提供了一种三维模型绘制方法及装置、一种计算设备及计算机可读存储介质,以解决现有技术中存在的技术缺陷。第一方面,本申请实施例公开了一种三维模型绘制方法,所述模型包括至少一个三维网格单元,所述方法包括:确定所述至少一个三维网格单元的外表面的像素位置;基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置;基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向;基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制。可选地,所述三维网格单元为四面体或六面体。可选地,确定所述至少一个三维网格单元的外表面的像素位置之前,还包括:将所述模型转换为像素,并确定所述模型的外表面的像素位置;基于所述模型的外表面的像素位置确定至少一个三维网格单元。可选地,每个所述三维网格单元的外表面像素位置包括第一像素位置、第二像素位置和第三像素位置;所述摄像机位置包括摄像机第一位置、摄像机第二位置和摄像机第三位置;所述对应的网格参数包括第一网格参数、第二网格参数和第三网格参数;每个所述三维网格单元的内表面的预先投影位置包括第一投影位置、第二投影位置和第三投影位置。可选地,基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置包括:基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的第一投影位置、第二投影位置和第三投影位置。可选地,基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置之前,还包括:基于每个所述三维网格单元的外表面像素位置确定对应的网格参数。可选地,基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制,包括:基于每个所述三维网格单元的内表面的法线位置和方向进行光照计算,获得渲染后的每个所述三维网格单元,实现所述模型的绘制,其中,渲染后的每个所述三维网格单元构成渲染后的模型。可选地,所述方法还包括:基于每个所述三维网格单元的内表面的预先投影位置、摄像机位置以及预设的三维网格单元每个面的厚度确定每个所述三维网格单元的内表面的实际投影位置。可选地,基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向包括:基于所述实际投影位置确定每个所述三维网格单元的内表面的法线位置和方向;基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制包括:基于每个所述三维网格单元的内表面的法线位置和方向进行光照计算,获得渲染后的每个所述三维网格单元,实现所述模型的绘制,其中,渲染后的每个所述三维网格单元构成渲染后的模型。第二方面,本申请实施例公开了一种三维模型绘制装置,所述模型包括至少一个三维网格单元,所述装置包括:第一确定模块,被配置为确定所述至少一个三维网格单元的外表面的像素位置;获得模块,被配置为基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置;第二确定模块,被配置为基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向;第一渲染模块,被配置为基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制。可选地,所述三维网格单元为四面体或六面体。可选地,所述装置还包括:转换模块,被配置为将所述模型转换为像素,并确定所述模型的外表面的像素位置;第三确定模块,被配置为基于所述模型的外表面的像素位置确定至少一个三维网格单元。可选地,每个所述三维网格单元的外表面像素位置包括第一像素位置、第二像素位置和第三像素位置;所述摄像机位置包括摄像机第一位置、摄像机第二位置和摄像机第三位置;所述对应的网格参数包括第一网格参数、第二网格参数和第三网格参数;每个所述三维网格单元的内表面的预先投影位置包括第一投影位置、第二投影位置和第三投影位置。可选地,所述获得模块,进一步被配置为:基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的第一投影位置、第二投影位置和第三投影位置。可选地,所述装置还包括:第四确定模块,被配置为基于每个所述三维网格单元的外表面像素位置确定对应的网格参数。可选地,所述第一渲染模块,进一步被配置为:基于每个所述三维网格单元的内表面的法线位置和方向进行光照计算,获得渲染后的每个所述三维网格单元,实现所述模型的绘制,其中,渲染后的每个所述三维网格单元构成渲染后的模型。可选地,所述装置还包括:第五确定模块,被配置为基于每个所述三维网格单元的内表面的预先投影位置、摄像机位置以及预设的三维网格单元每个面的厚度确定每个所述三维网格单元的内表面的实际投影位置。可选地,所述第二确定模块,进一步被配置为基于所述实际投影位置确定每个所述三维网格单元的内表面的法线位置和方向;所述第一渲染模块,进一步被配置为基于每个所述三维网格单元的内表面的法线位置和方向进行光照计算,获得渲染后的每个所述三维网格单元,实现所述模型的绘制,其中,渲染后的每个所述三维网格单元构成渲染后的模型。第三方面,本申请还公开了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现如上所述三维模型绘制方法的步骤。第四方面,本申请还公开了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要如上所述三维模型绘制方法的步骤。本申请提供的一种三维模型绘制方法及装置、一种计算设备及计算机可读存储介质,其中,所述模型包括至少一个三维网格单元,所述方法包括:确定所述至少一个三维网格单元的外表面的像素位置;基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置;基于所述预先投影位置确定每个所述三维网格单元的内表面的本文档来自技高网...

【技术保护点】
1.一种三维模型绘制方法,其特征在于,所述模型包括至少一个三维网格单元,所述方法包括:确定所述至少一个三维网格单元的外表面的像素位置;基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置;基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向;基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制。

【技术特征摘要】
1.一种三维模型绘制方法,其特征在于,所述模型包括至少一个三维网格单元,所述方法包括:确定所述至少一个三维网格单元的外表面的像素位置;基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置;基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向;基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制。2.根据权利要求1所述的方法,其特征在于,所述三维网格单元为四面体或六面体。3.根据权利要求1所述的方法,其特征在于,确定所述至少一个三维网格单元的外表面的像素位置之前,还包括:将所述模型转换为像素,并确定所述模型的外表面的像素位置;基于所述模型的外表面的像素位置确定至少一个三维网格单元。4.根据权利要求1所述的方法,其特征在于,每个所述三维网格单元的外表面像素位置包括第一像素位置、第二像素位置和第三像素位置;所述摄像机位置包括摄像机第一位置、摄像机第二位置和摄像机第三位置;所述对应的网格参数包括第一网格参数、第二网格参数和第三网格参数;每个所述三维网格单元的内表面的预先投影位置包括第一投影位置、第二投影位置和第三投影位置。5.根据权利要求4所述的方法,其特征在于,基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置包括:基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的第一投影位置、第二投影位置和第三投影位置。6.根据权利要求1所述的方法,其特征在于,基于每个所述三维网格单元的外表面像素位置、摄像机位置以及对应的网格参数,得到每个所述三维网格单元的外表面像素位置在每个所述三维网格单元的内表面的预先投影位置之前,还包括:基于每个所述三维网格单元的外表面像素位置确定对应的网格参数。7.根据权利要求1所述的方法,其特征在于,基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制,包括:基于每个所述三维网格单元的内表面的法线位置和方向进行光照计算,获得渲染后的每个所述三维网格单元,实现所述模型的绘制,其中,渲染后的每个所述三维网格单元构成渲染后的模型。8.根据权利要求1所述的方法,其特征在于,还包括:基于每个所述三维网格单元的内表面的预先投影位置、摄像机位置以及预设的三维网格单元每个面的厚度确定每个所述三维网格单元的内表面的实际投影位置。9.根据权利要求8所述的方法,其特征在于,基于所述预先投影位置确定每个所述三维网格单元的内表面的法线位置和方向包括:基于所述实际投影位置确定每个所述三维网格单元的内表面的法线位置和方向;基于每个所述三维网格单元的内表面的法线位置和方向渲染所述三维网格单元,实现所述模型的绘制包括:基于每个所述三维网格单元的内表面的法线位置和方向进行光照计算,获得渲染后的每个所述三维网格单元,实现所述模型的绘制,其中,渲染后的每个所述三维网格单元构成渲染后的模型。...

【专利技术属性】
技术研发人员:黄熠欣
申请(专利权)人:珠海金山网络游戏科技有限公司珠海西山居移动游戏科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1