[发明专利]三维场景中由透明几何对象产生的面焦散效果的近似绘制方法有效

专利信息
申请号: 201510425208.2 申请日: 2015-07-14
公开(公告)号: CN105096371B 公开(公告)日: 2017-08-22
发明(设计)人: 陈纯毅;杨华民;李华;蒋振刚;曲福恒;李岩芳 申请(专利权)人: 长春理工大学
主分类号: G06T15/06 分类号: G06T15/06
代理公司: 暂无信息 代理人: 暂无信息
地址: 130022 *** 国省代码: 吉林;22
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开一种三维场景中由透明几何对象产生的面焦散效果的近似绘制方法。本方法将三维场景中的几何对象分为透明几何对象和非透明几何对象,分别用不同的场景图进行组织;通过先测试光源采样光线是否与透明几何对象相交,来减少对光源采样光线进行处理操作的计算量。对于由透明几何对象被点光源直接照射而产生的面焦散效果,利用本方法可以明显提高三维场景面焦散效果的绘制速度。
搜索关键词: 三维 场景 透明 几何 对象 产生 面焦散 效果 近似 绘制 方法
【主权项】:
三维场景中由透明几何对象产生的面焦散效果的近似绘制方法,其特征在于,技术解决方案和所需的实现步骤如下:本方法涉及一种数据结构PHOTON,数据结构PHOTON包括位置P0、法向量nv、入射向量Vi、亮度Φi共四个成员变量;本方法涉及一种数据结构SPOINT,数据结构SPOINT包括位置P0、法向量nv、漫反射系数kd共三个成员变量;本方法的技术解决方案:将三维场景中的所有几何对象分为透明几何对象和非透明几何对象;透明几何对象就是光可以透过的几何对象,非透明几何对象就是光完全不能透过的几何对象;将所有透明几何对象用一个场景图SGT来进行组织,将所有非透明几何对象用一个场景图SGF来进行组织;将场景图SGT和场景图SGF都保存在计算机系统的内存中;在计算机系统中执行如下操作:Step001:设置列表LPHOTON为空;根据点光源PS的光照发射强度的空间角度分布,对点光源的光照发射方向进行重要性采样,得到N个采样方向,每个采样方向对应一条从点光源PS发射的光线,从而得到N条从点光源PS发射的光线,对其中的每条光线A001,做如下操作:Step001‑1:判断光线A001是否与场景图SGT中的几何对象相交,如果不相交则转步骤Step001‑9;Step001‑2:计算光线A001与场景图SGT中的几何对象的离点光源PS最近的交点A002;Step001‑3:判断光线A001是否与场景图SGF中的几何对象相交,如果不相交则转步骤Step001‑6;Step001‑4:计算光线A001与场景图SGF中的几何对象的离点光源PS最近的交点A003;Step001‑5:如果交点A002到点光源PS的距离大于交点A003到点光源PS的距离,则转步骤Step001‑9;Step001‑6:基于光线跟踪原理,对光线A001在由场景图SGT和场景图SGF中的所有几何对象组成的三维场景中的传播过程进行跟踪,依次计算光线A001对应的传播路径与三维场景中的几何对象的交点A004,只要发现交点A004所在的几何对象的表面的材质为非透明材质,就立即停止光线跟踪计算,并转步骤Step001‑7;如果对光线A001对应的传播路径跟踪完毕后,未发现所在表面的材质为非透明材质的交点,则转步骤Step001‑9;Step001‑7:如果交点A004所在的几何对象的表面为非漫反射材质,则转步骤Step001‑9;Step001‑8:在计算机系统的内存中创建一个数据结构PHOTON类型的变量A005;把变量A005的位置P0成员变量赋值为交点A004所在的位置;把变量A005的法向量nv成员变量赋值为交点A004所在的位置的表面法向量;把变量A005的入射向量Vi成员变量赋值为光线A001对应的传播路径在交点A004处的单位化后的入射方向向量;根据点光源PS的光照发射功率及光照发射空间角度范围,计算点光源PS发射的光照经光线A001对应的传播路径传输后,入射到交点A004所在的位置的光亮度A006,把变量A005的亮度Φi成员变量赋值为光亮度A006;把变量A005加入到列表LPHOTON中;Step001‑9:针对光线A001的操作结束;Step002:创建一个Nr行、Nc列的二维数组Arr,用于存放数据结构SPOINT类型的变量,Nr是虚拟相机的总像素行数,Nc是虚拟相机的总像素列数,数组Arr的元素与虚拟相机的像素一一对应;创建一个Nr行、Nc列的二维数组IMAG,用于存放虚拟相机的每个像素对应的入射光亮度值,Nr是虚拟相机的总像素行数,Nc是虚拟相机的总像素列数,数组IMAG的元素与虚拟相机的像素一一对应;把场景图SGT和场景图SGF合并为一个场景图SGA;在计算机系统中,利用光线跟踪技术绘制由场景图SGA中的所有几何对象组成的三维场景A007,得到虚拟相机的每个像素A008对应的入射光亮度值Lrt,将每个像素A008对应的数组IMAG的元素赋值为光亮度值Lrt;在光线跟踪过程中,对每条相机光线A009,即从虚拟相机位置出发穿过像素A008的中心位置的光线,除光线跟踪操作外,额外做如下操作:Step002‑1:如果光线A009与三维场景A007中的几何对象不相交,则转步骤Step002‑3;Step002‑2:计算光线A009与三维场景A007中的几何对象的离虚拟相机位置最近的交点A010;创建一个数据结构SPOINT类型的变量A011;将变量A011的位置P0成员变量赋值为交点A010所在的位置,将变量A011的法向量nv成员变量赋值为交点A010所在的位置的表面法向量;如果交点A010所在的位置对应的表面为漫反射材质,则将该表面的漫反射系数赋值给变量A011的漫反射系数kd成员变量,否则将变量A011的漫反射系数kd成员变量赋值为‑1;将光线A009对应的像素A008对应的数组Arr的元素赋值为变量A011的值;转步骤Step002‑4;Step002‑3:创建一个数据结构SPOINT类型的变量A012,将变量A012的位置P0成员变量赋值为位置(0,0,0),将变量A012的法向量nv成员变量赋值为向量(1,0,0),将变量A012的漫反射系数kd成员变量赋值为‑1;将光线A009对应的像素A008对应的数组Arr的元素赋值为变量A012的值;Step002‑4:针对光线A009的操作结束;Step003:对列表LPHOTON中的每个数据结构PHOTON类型的变量B001,做如下操作:Step003‑1:以变量B001的位置P0成员变量表示的位置为球心,确定一个半径为R的球B002;判断数组Arr中是否存在满足如下条件的元素B003:条件COND1:元素B003对应的数据结构SPOINT类型的变量的漫反射系数kd成员变量的值不等于‑1,且元素B003对应的数据结构SPOINT类型的变量的位置P0成员变量表示的位置处于球B002内;如果数组Arr中不存在满足条件COND1的元素,转步骤Step003‑2,否则对数组Arr中满足条件COND1的每个元素B005,做如下操作:①令D等于从元素B005对应的数据结构SPOINT类型的变量的位置P0成员变量表示的位置到变量B001的位置P0成员变量表示的位置的距离;如果R等于0,则令t=2,否则令t=D/R;令令Φp等于变量B001的亮度Φi成员变量的值;令ωi等于变量B001的入射向量Vi成员变量的值;令np等于元素B005对应的数据结构SPOINT类型的变量的法向量nv成员变量的值;令ωo为从元素B005对应的数据结构SPOINT类型的变量的位置P0成员变量表示的位置指向虚拟相机位置的单位向量;令ρ等于元素B005对应的数据结构SPOINT类型的变量的漫反射系数kd成员变量的值;根据漫反射定律计算从ωi表示的方向入射的、亮度为Φp的光经漫反射系数为ρ的漫反射表面反射后,沿ωo表示的方向入射到虚拟相机中的光亮度Lc;令LW等于光亮度Lc与Cκ之乘积;②把元素B005对应的虚拟相机像素对应的数组IMAG的元素赋值为元素B005对应的虚拟相机像素对应的数组IMAG的元素的值与LW之和;③针对元素B005的操作结束;Step003‑2:针对变量B001的操作结束;Step004:把数组IMAG中保存的光亮度值转换成虚拟相机像素的颜色值,并以图像文件的形式输出到计算机系统的磁盘中。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长春理工大学,未经长春理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201510425208.2/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top