Confirm with hardware test that the high bit of the input form is ignored.
Thanks to Ornox for testing
This commit is contained in:
parent
e1d36f91fc
commit
92e9382e61
|
@ -227,9 +227,7 @@ static T GenerateVertexShader(API_TYPE api_type)
|
|||
out.Write("coord = float4(tex%d.x, tex%d.y, 1.0, 1.0);\n", texinfo.sourcerow - XF_SRCTEX0_INROW, texinfo.sourcerow - XF_SRCTEX0_INROW);
|
||||
break;
|
||||
}
|
||||
// An input form other than ABC1 or AB11 doesn't exist
|
||||
// But the hardware has it as a two bit field
|
||||
_assert_(texinfo.inputform == XF_TEXINPUT_ABC1 || texinfo.inputform == XF_TEXINPUT_AB11);
|
||||
// Input form of AB11 sets z element to 1.0
|
||||
uid_data->texMtxInfo[i].inputform = xfmem.texMtxInfo[i].inputform;
|
||||
if (texinfo.inputform == XF_TEXINPUT_AB11)
|
||||
out.Write("coord.z = 1.0;\n");
|
||||
|
|
|
@ -178,7 +178,8 @@ union TexMtxInfo
|
|||
{
|
||||
u32 unknown : 1;
|
||||
u32 projection : 1; // XF_TEXPROJ_X
|
||||
u32 inputform : 2; // XF_TEXINPUT_X
|
||||
u32 inputform : 1; // XF_TEXINPUT_X
|
||||
u32 unknown2 : 1;
|
||||
u32 texgentype : 3; // XF_TEXGEN_X
|
||||
u32 sourcerow : 5; // XF_SRCGEOM_X
|
||||
u32 embosssourceshift : 3; // what generated texcoord to use
|
||||
|
|
Loading…
Reference in New Issue