BPMemory: Use BitField for the GenMode fields.

This commit is contained in:
Tony Wasserka
2014-04-21 22:34:23 +02:00
parent 8e38b1e63b
commit 16d3dbc5ea
2 changed files with 17 additions and 11 deletions

View File

@ -531,16 +531,22 @@ struct FourTexUnits
union GenMode
{
struct
enum CullMode : u32
{
u32 numtexgens : 4; // 0xF
u32 numcolchans : 5; // 0x1E0
u32 multisampling : 1; // 0x200
u32 numtevstages : 4; // 0x3C00
u32 cullmode : 2; // 0xC000
u32 numindstages : 3; // 0x30000
u32 zfreeze : 5; //0x3C0000
CULL_NONE = 0,
CULL_BACK = 1, // cull back-facing primitives
CULL_FRONT = 2, // cull front-facing primitives
CULL_ALL = 3, // cull all primitives
};
BitField< 0,4,u32> numtexgens;
BitField< 4,5,u32> numcolchans;
BitField< 9,1,u32> multisampling;
BitField<10,4,u32> numtevstages;
BitField<14,2,CullMode> cullmode;
BitField<16,3,u32> numindstages;
BitField<19,5,u32> zfreeze;
u32 hex;
};