__BOOLEAN_RS(FOGENABLE),
__BOOLEAN_RS(SPECULARENABLE),
__NO_LIMIT_RS(FOGCOLOR),
- __MASK_RS(FOGTABLEMODE, 0x00000007),
+ __MASK_RS(FOGTABLEMODE, 0x00000003),
__NO_LIMIT_RS(FOGSTART), /* a bit more complex than that, lets ignore */
__NO_LIMIT_RS(FOGEND),
__NO_LIMIT_RS(FOGDENSITY), /* actually should be between 0.0 and 1.0 */
__BOOLEAN_RS(CLIPPING),
__BOOLEAN_RS(LIGHTING),
__NO_LIMIT_RS(AMBIENT),
- __MASK_RS(FOGVERTEXMODE, 0x00000007),
+ __MASK_RS(FOGVERTEXMODE, 0x00000003),
__BOOLEAN_RS(COLORVERTEX),
__BOOLEAN_RS(LOCALVIEWER),
__BOOLEAN_RS(NORMALIZENORMALS),
}
info.fog_enable = device->context.rs[D3DRS_FOGENABLE];
info.fog_mode = device->context.rs[D3DRS_FOGTABLEMODE];
- info.force_color_in_centroid = (key >> 22) & 1;
+ info.force_color_in_centroid = (key >> 23) & 1;
info.add_constants_defs.c_combination =
nine_shader_constant_combination_get(This->c_combinations, (key >> 24) & 0xff);
info.add_constants_defs.int_const_added = &This->int_slots_used;
if (ps->byte_code.version < 0x30) {
key |= ((uint64_t)context->rs[D3DRS_FOGENABLE]) << 20;
- key |= ((uint64_t)context->rs[D3DRS_FOGTABLEMODE]) << 21;
+ key |= ((uint64_t)context->rs[D3DRS_FOGTABLEMODE]) << 21; /* 2 bits */
}
/* centroid interpolation automatically used for color ps inputs */
if (context->rt[0]->base.info.nr_samples)
- key |= ((uint64_t)1) << 22;
+ key |= ((uint64_t)1) << 23;
if ((ps->const_int_slots > 0 || ps->const_bool_slots > 0) && context->inline_constants)
key |= ((uint64_t)nine_shader_constant_combination_key(&ps->c_combinations,