Hello.
I write this
#define FVF_COLOR (D3DFVF_XYZ | D3DFVF_TEX1 | D3DFVF_NORMAL)
SetFVF(FVF_COLOR)
but see in PIX this
IDirect3DDevice::SetFVF(D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1)
Why?
SetFVF or compiler do this
Those are bit flags and a integer value is passed in. PIX somehow has to analyze the bits from that value and does it in a different order.
The order doesn't matter here. It's the same you passed it.
The order doesn't matter here. It's the same you passed it.
Try this in your compiler and check the result.
int i1 = D3DFVF_XYZ | D3DFVF_TEX1 | D3DFVF_NORMAL;
int i2 = D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1;
int i3 = D3DFVF_TEX1 | D3DFVF_NORMAL | D3DFVF_XYZ;
int i4 = D3DFVF_TEX1 | D3DFVF_XYZ | D3DFVF_NORMAL;
etc..
int i1 = D3DFVF_XYZ | D3DFVF_TEX1 | D3DFVF_NORMAL;
int i2 = D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1;
int i3 = D3DFVF_TEX1 | D3DFVF_NORMAL | D3DFVF_XYZ;
int i4 = D3DFVF_TEX1 | D3DFVF_XYZ | D3DFVF_NORMAL;
etc..
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement