Difference between revisions of "Vkd3d-todo"
From WineHQ Wiki
Line 30: | Line 30: | ||
* Test and fix copying between BC and other compatible formats. | * Test and fix copying between BC and other compatible formats. | ||
* State decay for resources and queue ownership transfer for resources. | * State decay for resources and queue ownership transfer for resources. | ||
+ | * Raytracing? | ||
== libvkd3d-shader == | == libvkd3d-shader == |
Revision as of 11:02, 23 May 2019
libvkd3d-shader release
- Finish API for flexible shader parameters.
- Add API for enabling optional features/extensions, e.g. SPIR-V extensions, GLSL extensions.
- Avoid artificial limits in the API, e.g. VKD3D_SHADER_MAX_UNORDERED_ACCESS_VIEWS.
- Should shader translation to GLSL use the same exported function as SPIR-V translator?
- Should DXIL use the same exported function as TPF (DXBC)?
- Consider renaming vkd3d_shader_compile_dxbc() to vkd3d_shader_compile_tpf() (Tokenized Program Format).
- Consider addding tests for OpenGL SPIR-V.
- Review API for consistency and extensibility.
- Add support for resource arrays.
- Add or consider support for Shader Model 5.1 and 6.0+.
- Add or consider support for UAV in vertex processing shader stages.
- Finish API for scanning/gathering info from shaders (registers used, bindings used, parameters used, required limits, extensions).
libvkd3d
- Re-implement descriptor heaps on top of VK_EXT_descriptor_indexing.
- Try to use VK_EXT_buffer_device_address for GPU addresses (re-implement root descriptors).
- Implement ID3D12Resource::ReadFromSubresource() for Metro Exodus.
- Emulate wait-before-signal.
- Emulate NULL SRVs and UAVs.
- Add tests for out-of-bounds access with vertex buffers.
- Improve multi-queue support.
- Fix all Vulkan validation errors.
- Test ClearRTV() with UINT formats.
- Implement UAVs in vertex processing shader stages.
- Implement support for multiple viewports.
- Implement ID3D12GraphicsCommandList::SetPredication().
- Test and fix copying between BC and other compatible formats.
- State decay for resources and queue ownership transfer for resources.
- Raytracing?
libvkd3d-shader
- Add support for capturing components with stream output.
- Add support for unlimited registers (SM5.1).
- Finish and fix tessellation shaders.
- Import SM4 to GLSL shader translation from wined3d.
- Start working on DXIL.
TPF validation
- Interpolation mode is the same for all variables in the register.