wined3d: Handle the ps_3_0 vPos field.

This commit is contained in:
H. Verbeet 2007-05-03 21:01:09 +02:00 committed by Alexandre Julliard
parent 5d00923017
commit 89245248c7
2 changed files with 20 additions and 0 deletions

View File

@ -519,6 +519,7 @@ void shader_dump_param(
IWineD3DBaseShaderImpl* This = (IWineD3DBaseShaderImpl*) iface;
static const char * const rastout_reg_names[] = { "oPos", "oFog", "oPts" };
static const char * const misctype_reg_names[] = { "vPos", "vFace"};
char swizzle_reg_chars[4];
DWORD reg = param & WINED3DSP_REGNUM_MASK;
@ -611,6 +612,13 @@ void shader_dump_param(
case WINED3DSPR_SAMPLER:
TRACE("s%u", reg);
break;
case WINED3DSPR_MISCTYPE:
if (reg > 1) {
FIXME("Unhandled misctype register %d\n", reg);
} else {
TRACE("%s", misctype_reg_names[reg]);
}
break;
case WINED3DSPR_PREDICATE:
TRACE("p%u", reg);
break;

View File

@ -690,6 +690,18 @@ static void shader_glsl_get_register_name(
else
sprintf(tmpStr, "gl_TexCoord[%u]", reg);
break;
case WINED3DSPR_MISCTYPE:
if (reg == 0) {
/* vPos */
sprintf(tmpStr, "gl_FragCoord");
} else {
/* gl_FrontFacing could be used for vFace, but note that
* gl_FrontFacing is a bool, while vFace is a float for
* which the sign determines front/back */
FIXME("Unhandled misctype register %d\n", reg);
sprintf(tmpStr, "unrecognized_register");
}
break;
default:
FIXME("Unhandled register name Type(%d)\n", regtype);
sprintf(tmpStr, "unrecognized_register");