|
发表于 2004-7-21 15:29:00
|
显示全部楼层
Re: 在DX中能这样定义FVF吗?
当然不能这样定义。D3DFVF_TEX2是指有两组纹理坐标,那么D3DFVF_TEX1 | D3DFVF_TEX2这种表达有意义么?
一般是这样:比如有三组纹理坐标,在顶点结构中如下排列:
float tu1,tv1,tu2,tu3,tv3,tw3;
那么关于纹理坐标声明应该如下:
D3DFVF_TEX3|D3DFVF_TEXCOORDSIZE2(0)|D3DFVF_TEXCOORDSIZE1(1)|D3DFVF_TEXCOORDSIZE3(2)
它把6个float划分成了3组纹理坐标,前两个是第一组(2维)第三个是第二组(1维)后三个是第三组(3维)
BTW:其实我更倾向使用DX9中的vertex decl+vertex shader的方法,它的表达更加明确。
|
|