d3d9/tests: Test specular lighting with zero shininess.

Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Paul Gofman 2019-03-29 13:56:37 +03:00 committed by Alexandre Julliard
parent 826b67e395
commit a0854362d6

View file

@ -800,7 +800,68 @@ static void test_specular_lighting(void)
{160, 360, 0x00000000},
{320, 360, 0x00000000},
{480, 360, 0x00000000},
},
expected_directional_0[] =
{
{160, 120, 0x00ffffff},
{320, 120, 0x00ffffff},
{480, 120, 0x00ffffff},
{160, 240, 0x00ffffff},
{320, 240, 0x00ffffff},
{480, 240, 0x00ffffff},
{160, 360, 0x00ffffff},
{320, 360, 0x00ffffff},
{480, 360, 0x00ffffff},
},
expected_directional_local_0[] =
{
{160, 120, 0x00ffffff},
{320, 120, 0x00ffffff},
{480, 120, 0x00ffffff},
{160, 240, 0x00ffffff},
{320, 240, 0x00ffffff},
{480, 240, 0x00ffffff},
{160, 360, 0x00ffffff},
{320, 360, 0x00ffffff},
{480, 360, 0x00ffffff},
},
expected_point_0[] =
{
{160, 120, 0x00aaaaaa},
{320, 120, 0x00cccccc},
{480, 120, 0x00aaaaaa},
{160, 240, 0x00cccccc},
{320, 240, 0x00ffffff},
{480, 240, 0x00cccccc},
{160, 360, 0x00aaaaaa},
{320, 360, 0x00cccccc},
{480, 360, 0x00aaaaaa},
},
expected_spot_0[] =
{
{160, 120, 0x00000000},
{320, 120, 0x002e2e2e},
{480, 120, 0x00000000},
{160, 240, 0x002e2e2e},
{320, 240, 0x00ffffff},
{480, 240, 0x002e2e2e},
{160, 360, 0x00000000},
{320, 360, 0x002e2e2e},
{480, 360, 0x00000000},
},
expected_point_range_0[] =
{
{160, 120, 0x00000000},
{320, 120, 0x00cccccc},
{480, 120, 0x00000000},
{160, 240, 0x00cccccc},
{320, 240, 0x00ffffff},
{480, 240, 0x00cccccc},
{160, 360, 0x00000000},
{320, 360, 0x00cccccc},
{480, 360, 0x00000000},
};
static const struct
{
const D3DLIGHT9 *light;
@ -819,6 +880,13 @@ static void test_specular_lighting(void)
{&spot, TRUE, 30.0f, expected_spot_local, ARRAY_SIZE(expected_spot_local)},
{&point_range, FALSE, 30.0f, expected_point_range, ARRAY_SIZE(expected_point_range)},
{&point_side, TRUE, 0.0f, expected_point_side, ARRAY_SIZE(expected_point_side)},
{&directional, FALSE, 0.0f, expected_directional_0, ARRAY_SIZE(expected_directional_0)},
{&directional, TRUE, 0.0f, expected_directional_local_0, ARRAY_SIZE(expected_directional_local_0)},
{&point, FALSE, 0.0f, expected_point_0, ARRAY_SIZE(expected_point_0)},
{&point, TRUE, 0.0f, expected_point_0, ARRAY_SIZE(expected_point_0)},
{&spot, FALSE, 0.0f, expected_spot_0, ARRAY_SIZE(expected_spot_0)},
{&spot, TRUE, 0.0f, expected_spot_0, ARRAY_SIZE(expected_spot_0)},
{&point_range, FALSE, 0.0f, expected_point_range_0, ARRAY_SIZE(expected_point_range_0)},
};
IDirect3DDevice9 *device;
D3DMATERIAL9 material;