mirror of
https://github.com/reactos/wine.git
synced 2024-11-26 21:20:25 +00:00
ddraw: Set correct HEL and HAL color models.
This commit is contained in:
parent
c3d6061593
commit
9e0baa55ce
@ -3968,6 +3968,9 @@ static HRESULT WINAPI d3d3_EnumDevices(IDirect3D3 *iface, LPD3DENUMDEVICESCALLBA
|
||||
| D3DPTEXTURECAPS_NONPOW2CONDITIONAL | D3DPTEXTURECAPS_PERSPECTIVE);
|
||||
hal_desc.dpcTriCaps.dwTextureCaps &= ~(D3DPTEXTURECAPS_POW2
|
||||
| D3DPTEXTURECAPS_NONPOW2CONDITIONAL | D3DPTEXTURECAPS_PERSPECTIVE);
|
||||
/* RGB, RAMP and MMX devices have a HAL dcmColorModel of 0 */
|
||||
hal_desc.dcmColorModel = 0;
|
||||
|
||||
hr = callback((GUID *)&IID_IDirect3DRGBDevice, reference_description,
|
||||
device_name, &hal_desc, &hel_desc, context);
|
||||
if (hr != D3DENUMRET_OK)
|
||||
@ -3983,11 +3986,15 @@ static HRESULT WINAPI d3d3_EnumDevices(IDirect3D3 *iface, LPD3DENUMDEVICESCALLBA
|
||||
TRACE("Enumerating HAL Direct3D device.\n");
|
||||
hal_desc = device_desc1;
|
||||
hel_desc = device_desc1;
|
||||
|
||||
/* The hal device does not have the pow2 flag set in hel, but in hal. */
|
||||
hel_desc.dpcLineCaps.dwTextureCaps &= ~(D3DPTEXTURECAPS_POW2
|
||||
| D3DPTEXTURECAPS_NONPOW2CONDITIONAL | D3DPTEXTURECAPS_PERSPECTIVE);
|
||||
hel_desc.dpcTriCaps.dwTextureCaps &= ~(D3DPTEXTURECAPS_POW2
|
||||
| D3DPTEXTURECAPS_NONPOW2CONDITIONAL | D3DPTEXTURECAPS_PERSPECTIVE);
|
||||
/* HAL devices have a HEL dcmColorModel of 0 */
|
||||
hel_desc.dcmColorModel = 0;
|
||||
|
||||
hr = callback((GUID *)&IID_IDirect3DHALDevice, wined3d_description,
|
||||
device_name, &hal_desc, &hel_desc, context);
|
||||
if (hr != D3DENUMRET_OK)
|
||||
|
@ -804,10 +804,15 @@ static HRESULT WINAPI enumDevicesCallback(GUID *Guid,LPSTR DeviceDescription,LPS
|
||||
"RGB Device %d hel tri caps does not have D3DPTEXTURECAPS_PERSPECTIVE set\n", ver);
|
||||
ok(hel->dpcTriCaps.dwTextureCaps & D3DPTEXTURECAPS_PERSPECTIVE,
|
||||
"RGB Device %d hel tri caps does not have D3DPTEXTURECAPS_PERSPECTIVE set\n", ver);
|
||||
|
||||
ok(hal->dcmColorModel == 0, "RGB Device %u hal caps has colormodel %u\n", ver, hal->dcmColorModel);
|
||||
ok(hel->dcmColorModel == D3DCOLOR_RGB, "RGB Device %u hel caps has colormodel %u\n", ver, hel->dcmColorModel);
|
||||
}
|
||||
else if(IsEqualGUID(&IID_IDirect3DHALDevice, Guid))
|
||||
{
|
||||
trace("HAL Device %d\n", ver);
|
||||
ok(hal->dcmColorModel == D3DCOLOR_RGB, "HAL Device %u hal caps has colormodel %u\n", ver, hel->dcmColorModel);
|
||||
ok(hel->dcmColorModel == 0, "HAL Device %u hel caps has colormodel %u\n", ver, hel->dcmColorModel);
|
||||
}
|
||||
else if(IsEqualGUID(&IID_IDirect3DRefDevice, Guid))
|
||||
{
|
||||
@ -848,6 +853,10 @@ static HRESULT WINAPI enumDevicesCallback(GUID *Guid,LPSTR DeviceDescription,LPS
|
||||
"Ramp Device %d hel tri caps does not have D3DPTEXTURECAPS_PERSPECTIVE set\n", ver);
|
||||
ok(hel->dpcTriCaps.dwTextureCaps & D3DPTEXTURECAPS_PERSPECTIVE,
|
||||
"Ramp Device %d hel tri caps does not have D3DPTEXTURECAPS_PERSPECTIVE set\n", ver);
|
||||
|
||||
ok(hal->dcmColorModel == 0, "Ramp Device %u hal caps has colormodel %u\n", ver, hal->dcmColorModel);
|
||||
ok(hel->dcmColorModel == D3DCOLOR_MONO, "Ramp Device %u hel caps has colormodel %u\n",
|
||||
ver, hel->dcmColorModel);
|
||||
}
|
||||
else if(IsEqualGUID(&IID_IDirect3DMMXDevice, Guid))
|
||||
{
|
||||
@ -868,6 +877,9 @@ static HRESULT WINAPI enumDevicesCallback(GUID *Guid,LPSTR DeviceDescription,LPS
|
||||
"MMX Device %d hel tri caps does not have D3DPTEXTURECAPS_PERSPECTIVE set\n", ver);
|
||||
ok(hel->dpcTriCaps.dwTextureCaps & D3DPTEXTURECAPS_PERSPECTIVE,
|
||||
"MMX Device %d hel tri caps does not have D3DPTEXTURECAPS_PERSPECTIVE set\n", ver);
|
||||
|
||||
ok(hal->dcmColorModel == 0, "MMX Device %u hal caps has colormodel %u\n", ver, hal->dcmColorModel);
|
||||
ok(hel->dcmColorModel == D3DCOLOR_RGB, "MMX Device %u hel caps has colormodel %u\n", ver, hel->dcmColorModel);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user