[发明专利]一种实现双面折射效果的方法及装置有效
申请号: | 200610111892.8 | 申请日: | 2006-09-06 |
公开(公告)号: | CN101140662A | 公开(公告)日: | 2008-03-12 |
发明(设计)人: | 刘皓 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06T15/10 | 分类号: | G06T15/10 |
代理公司: | 北京同达信恒知识产权代理有限公司 | 代理人: | 宋松 |
地址: | 518044广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 双面 折射 效果 方法 装置 | ||
技术领域
本发明涉及图像渲染领域,特别是涉及一种实现双面折射效果的方法及装置。
背景技术
由于光在不同密度的材质中传播的速度不同,所以当光通过不同密度的两种材质之间的界面时,光的传播方向会发生改变。例如:光在空气中传播得比光在水中传播得快很多,所以吸管放入水中时,吸管就像被“折”了一样。
基于物理公式的折射光计算函数已经被整合在了高级着色语言函数库里:
FLOAT3 REFRACT(FLOAT3I,FLOAT3N,FLOATR)
{
FLOAT COSI=DOT(I,N);
FLOAT COST2=1.0F-R*R*(1.0F-COSI*COSI);
FLOAT3 T=R*I-((R*COSI+SQRT(ABS(COST2)))*N);
RETURN T*(FLOAT3)(COST2>0);
}
其中I为入射光方向,N为着色点的法线方向。R为相对折射指数,即两材质的折射率之比。
现有的实时图形折射处理是仅处理观察点一侧(即物体上表面)的折射,而忽略物体下表面的折射。
单次折射的原理图,参见图1所示。A为物体上表面折射点的位置,Eye为观察点位置,Normal_A为A点的法线方向,由于光路是可逆的,Refraction为折射光的入射方向。由于单次折射仅计算一次光的折射(发生在物体的上表面),所以产生的效果是不精确的,其效果图参见图2所示。
双面折射是指模拟透明物体的正面和背面的两次折射。但是现有的实时图形折射处理技术无法实现双面折射效果。
发明内容
本发明提供一种实现双面折射效果的方法及装置,用以解决现有的单次折射处理技术产生的折射效果不精确的问题。
本发明方法包括:
从观察侧获取物体下表面折射点的模拟位置,并据此得到物体下表面折射点的模拟法线方向;以及根据物体下表面折射点的模拟法线方向得到入射光的模拟方向,并据此实现双面折射效果。
进一步,所述从观察侧获取物体下表面折射点的模拟位置,包括下列步骤:取物体上表面折射点的位置;延折射光方向,从物体上表面折射点向下表面偏移单位向量,并定位该点为C;将观察点到所述C点的线段延长,该延长线与下表面的交点为D;取物体上表面折射点到所述D点的向量长度,并与单位向量相乘;之后再与物体上表面折射点位置求和,得到物体下表面折射点的模拟位置。
又进一步,所述单位向量通过折射函数获得。
又进一步,所述D点位置的获取包括:以物体的位置为输出,渲染物体的下表面,得到物体下表面的位置图P_Map;将C点位置投影到屏幕空间,并对P_Map进行采样,得到D点的位置。
综上所述,所述根据物体下表面折射点的模拟位置得到物体下表面折射点的模拟法线方向包括:以物体的法线为输出,渲染物体的下表面,得到物体下表面的法线图N_Map;将物体下表面折射点的模拟位置投影到屏幕空间,并对N_Map进行采样,得到物体下表面折射点的模拟法线方向。
更进一步,根据物体下表面折射点的模拟法线方向以及单位向量得到入射光的模拟方向,并据此实现双面折射效果。
本发明的装置,包括:
B点位置获取单元,用于从观察侧获取物体下表面折射点的模拟位置;
法线方向获取单元,用于根据B点位置获取单元输入的模拟位置,得出物体下表面折射点的模拟法线方向;
入射光方向获取单元,用于根据法线方向获取单元输入的法线方向,得出入射光的模拟方向。
其中,所述B点位置获取单元中包括:
A点位置获取子单元,用于以观察侧为准,获取物体上表面折射点的位置;
C点位置获取子单元,用于计算单位向量,并延折射光方向,从物体上表面折射点向下表面偏移单位向量,得到C点的位置;
D点位置获取子单元,用于获取观察点到C点的线段延长线与下表面的交点D的位置;
向量长度获取子单元,用于根据物体上表面折射点的位置和D点位置得出物体上表面折射点到D点的向量长度;
计算子单元,用于将所述向量长度获取子单元输入的向量长度与单位向量相乘;之后再与物体上表面折射点位置求和。
本发明有益效果如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610111892.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:宽带接入系统中实现多播通道建立、预注册、释放的方法
- 下一篇:灌装控制器