昨天花了一天時間做了GPU Gems中的環(huán)境遮蔽的預(yù)處理程序
遺憾的是處理的結(jié)果及其糟糕,幾乎所有頂點的遮蔽信息都是完全遮蔽,
今天又花了不少時間調(diào)試發(fā)現(xiàn)那段從網(wǎng)上找來的射線與三角形相交檢測的函數(shù)有問題,
又Google了一番發(fā)現(xiàn)D3DX果然是帶了這個功能的函數(shù)的,具體聲明如下:
BOOL ::D3DXIntersectTri(const D3DXVECTOR3 *p0,
const D3DXVECTOR3 *p1,
const D3DXVECTOR3 *p2,
const D3DXVECTOR3 *position,
const D3DXVECTOR3 *direction,
float *u,
float *v,
float *distance);
其中p0, p1, p2分別指向三角形的三個頂點,position為射線起點,direction為射線方向向量,u,v,為交點重心坐標(biāo)(我是沒弄明白這是個什么東東),distance為起點到交點距離
成功返回TRUE,失敗返回FALSE。
代到程序里一試,果然成功了~~~于是把這個貼出來,不知道的人看到也能少走點彎路~
另外希望把代碼貼到網(wǎng)上的人也應(yīng)該先確認(rèn)其正確性了再貼。
posted on 2009-08-26 19:51
Vertexer 閱讀(1507)
評論(2) 編輯 收藏 引用