游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2135|回复: 6

艾,再问一个:bump map里的tangent space具体怎么算的

[复制链接]

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2005-10-9 11:28:00 | 显示全部楼层 |阅读模式
tangent space有没有介绍比较详细的计算方法的资料??
谢谢了

另外算出来之后,怎么用它来在emboss bump mapping里计算
第二步里反转的半明亮的纹理的朝光的方向的偏移量啊?
谢谢了

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
发表于 2005-10-9 13:49:00 | 显示全部楼层

Re:艾,再问一个:bump map里的tangent space具体怎么算的

你是要求tangent和Binormal吗?

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-10-9 13:55:00 | 显示全部楼层

Re: Re:艾,再问一个:bump map里的tangent space具体怎么算的

nocture: Re:艾,再问一个:bump map里的tangent space具体怎么算的

你是要求tangent和Binormal吗?


是啊,我想应该就是要这两个东西啊
怎么求啊,如果说这两个向量只要垂直于nomal向量就行的话
那会有无穷解的呀

我看nehe教程22里面的一个函数
SetUpBumps(GLfloat *n, GLfloat *c, GLfloat *l, GLfloat *s, GLfloat *t)
它这里的参数s,t是不是用的就是tangent和Binormal啊??
谢谢了

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
发表于 2005-10-9 15:28:00 | 显示全部楼层

Re:艾,再问一个:bump map里的tangent space具体怎么算的

这里有别人的解答:http://www.gameres.com/bbs/showthread.asp?threadid=35119
不过d3d和OGL坐标系不同,叉乘时要注意

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-10-9 17:03:00 | 显示全部楼层

Re: Re:艾,再问一个:bump map里的tangent space具体怎么算的

nocture: Re:艾,再问一个:bump map里的tangent space具体怎么算的

这里有别人的解答:http://www.gameres.com/bbs/showthread.asp?threadid=35119
不过d3d和OGL坐标系不同,叉乘时要注意


float s1 = v1.s - v0.s;
float t1 = v1.t - v0.t;
float s2 = v2.s - v0.s;
float t2 = v2.t - v0.t;

这里的v0,v1,v2是什么?
v0,v1,v2里面的s,t是什么?纹理坐标么?
如果是纹理坐标,怎么计算tangent,binomal会用到纹理坐标的?

64

主题

855

帖子

856

积分

高级会员

Rank: 4

积分
856
QQ
发表于 2005-10-10 09:09:00 | 显示全部楼层

Re:艾,再问一个:bump map里的tangent space具体怎么算的

v:顶点
s、t:顶点的纹理uv坐标
面的切线有无穷个,在Per-Pixel Lighting计算的时候用到的NormalMap是纹理空间下的,故T、B也要对齐到纹理空间下

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-10-10 16:13:00 | 显示全部楼层

Re: Re:艾,再问一个:bump map里的tangent space具体怎么算的

nocture: Re:艾,再问一个:bump map里的tangent space具体怎么算的

v:顶点
s、t:顶点的纹理uv坐标
面的切线有无穷个,在Per-Pixel Lighting计算的时候用到的NormalMap是纹理空间下的,故T、B也要对齐到纹理空间下

谢谢,再问一个
if(fabsf(s1*t2 - s2*t1) <= 0.0001f)
{
tmp = 1.0f;
}

这里tmp为什么取1了??
本来,如果(s1*t2 - s2*t1)很小的话,tmp得到的值应该很大才对的呀
麻烦了,谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-28 03:12

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表