几何体表面切线计算方法
来源:互联网 发布:java 桌面程序框架 编辑:程序博客网 时间:2024/06/12 01:39
http://blog.csdn.net/sck5711/article/details/4036337
struct vec3
{
float x, y, z;
};
struct texcoord
{
float u,v;
};
//计算切线
void calc_tangent(const vec3& p0,
const vec3& p1,
const vec3& p2,
const texcoord& c0,
const texcoord& c1,
const texcoord& c2,
vec3& out_tangent)
{
vec3 p10;
p10.x = p1.x - p0.x;
p10.y = p1.y - p0.y;
p10.z = p1.z - p0.z;
vec3 p20;
p20.x = p2.x - p0.x;
p20.y = p2.y - p0.y;
p20.z = p2.z - p0.z;
texcoord t10;
t10.u = c1.u - c0.u;
t10.v = c1.v - c0.v;
texcoord t20;
t20.u = c2.u - c0.u;
t20.v = c2.v - c0.v;
float div = t20.u * t10.v - t10.u * t20.v;
vec3 ddiv;
ddiv.x = t10.v * p20.x - t20.v * p10.x;
ddiv.y = t10.v * p20.y - t20.v * p10.y;
ddiv.z = t10.v * p20.z - t20.v * p10.z;
out_tangent.x = ddiv.x / div;
out_tangent.y = ddiv.y / div;
out_tangent.z = ddiv.z / div;
}
- 几何体表面切线计算方法
- 几何体表面切线计算方法
- 计算方法
- 临界切线
- 切线空间
- 几何体类
- 二次几何体
- 自定义几何体
- 基础几何体
- 切线空间的计算
- 切线空间计算
- 切线空间计算
- POJ 1375 圆切线
- poj1375 圆的切线
- 切线空间法线
- Unity-Shader切线空间
- 第十三讲 二次几何体
- OPenGL绘制几何体函数
- Parallax Mapping效果
- WEBFORM中 Calendar控件禁止选择某些日期的方法
- 利用QT_DEBUG_PLUGINS检查Qt的插件问题
- Centos学习笔记--linux用户管理
- 一个老程序员的前途
- 几何体表面切线计算方法
- delphi和c#的MD5加密(32位)
- HDR技术以及如何实现HDR效果
- MTK短信模块研究
- Direct3D中实现图元的鼠标拾取
- javascript滚动新闻代码
- 在thinkpad SL410 笔记本上按照xp/2003的注意事项
- 对MTK中添加资源的研究
- 交叉编译s3c2410用的armlinux