vkd3d-shader: Implement shader model 1.0-1.3 texture projection.

This commit is contained in:
Elizabeth Figura
2025-08-09 15:33:46 -05:00
committed by Henri Verbeet
parent 44c80c60b8
commit c50210f230
Notes: Henri Verbeet 2025-11-20 18:37:00 +01:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1814
9 changed files with 209 additions and 9 deletions

View File

@@ -651,6 +651,10 @@ static bool d3d9_runner_draw(struct shader_runner *r,
hr = IDirect3DDevice9_SetTextureStageState(device, i, D3DTSS_BUMPENVLOFFSET,
float_to_int(runner->r.bump[i].luminance_offset));
ok(hr == D3D_OK, "Failed to set texture state, hr %#lx.\n", hr);
hr = IDirect3DDevice9_SetTextureStageState(device, i, D3DTSS_TEXTURETRANSFORMFLAGS,
(runner->r.projected_texture_mask & (1u << i)) ? D3DTTFF_PROJECTED : 0);
ok(hr == D3D_OK, "Failed to set texture state, hr %#lx.\n", hr);
}
hr = IDirect3DDevice9_CreateVertexDeclaration(device, decl_elements, &vertex_declaration);