Wine Status DirectX DLL http://www.winehq.org/site/status/directx
See also DirectX and IntegrationProjects
- finish graph control implementation (Run/Pause/Stop)
- extend graph building process by taken into account filters added manually to the filtergraph
implement IReferenceClock in DSound renderer
- windowed mode support in video renderer
- generic splitter using libavformat (ffmpeg)
generic audio & video decoders using libavcodec (ffmpeg)
- understand how plugin distributors work
play by mixing builtin & native components
capture stuff (CaptureGraphBuilder)
[Graphics Rendering Pipelines]
D3D 8.1 pipeline DX 8.1 Pipeline Thanks to Richard Thomson
D3D 9.0 pipeline DX 9.0 Pipeline Thanks to Richard Thomson
D3D 10.0 pipeline DX 10.0 Pipeline also see: Pipeline Stages
[DirectDraw / Direct3DD1-7]
* Missing Functionalities: (General)
- Allow explicit creation and access of front and back buffers for ddraw interfaces earlier than version 7. Current implementation uses dd7's style and prohibits this, which breaks some games.
- Software s3tc handling
Record per-version surface refcounts (see http://bugs.winehq.org/show_bug.cgi?id=23621)
* Improvements: (General)
- YUV overlays
OpenGL(partially there already) and Xrender accelerated DirectDraw
- Completely GL independent 2D operation(lazy linking).
- Write some tests related to configuration
[D3D](d3d8, d3dx8, d3d9, wined3d)
Missing Functionalities: (General)
- Shader translator still needs some cleaning up
- Multisample support, ie FSAA etc. will require changes to (OpenGL child windows)
Finish shaders 3.0 support and make shaders 2.0/3.0 the default using GLSL if the card supports it. see DirectX-Shaders
- Lock/Unlock: Only restore or copy when needed (example no save renders when WRITE_ONLY flags was used)
Improve the heap code and cache data instead of doing HeapAlloc (Resource Caching) the last few results will improve performance.
- Filter wined3d caps in d3d8 :
- We could detect all the card capabilities in wined3d (for a part this is done, for a part the d3d version is detected)
- And in the d3d8 we could show only the caps corresponding to that d3d version.
Caps code to fully support (ps3.0 / vs3.0) see MS Pixel Shader Reference.
- Window sizes / fullscreen support still needs more improvements and testing.
Priority Levels (Should be reasonably easy as opengl has this functionality) o LOD support see: Level-of-Detail White Paper
Support more query types, implement the timestamp queries using GL_nv_fence see: QuerySample User Guide, MSDN Queries
- Proper support for floating point texture formats (for proper deferred shading and HDR support)
- Fixups using vertex shaders instead of software ie, fixed function pipeline replacement.
- Prefer GL_EXT_framebuffer_object over pbuffers.
- Speed up color depth conversions (8bpp) with a shader
Avoid as many GlReadPixel and GlWritePixel calls as possible
- Device interface
EvictManagedResources
ResrceMgrDiscard (needs EvictManagedResources)
- Check* functions
TestCoop support
ValidateDevice (needs better Caps support)
GetInfo (needs better Caps support)
- Visible Z Buffer
Other:
- Get 3dmark 2005, 2006 software to the point of producing valuable output
- Add more testcases, including visual ones
- Test different Cards/Drivers: Nvidia, fglrx, mesa
- Tidy up the WineD3D codebase and add comments and TRACEs
Implement D3DX9_xx.dll's see DirectX-D3DX9
[D3D](d3d10)
List of games with DirectX 10 support on wikipedia
- Create the d3d10 lib and start the .idl file for header generation.
- Write stubs for the functions to allow the app to create all the interfaces.
- Write test cases for reference counting. ddraw and d3d9 show that Microsoft does not stick to its own COM rules.
- Make methods that have already 1:1 equivalents in wined3d call wined3d.
- Add other methods as required to wined3d.
Possibly port D3D10 to Windows XP
Geforce8 features on NV cards useful for testing: Option "RegistryDwords" "8F773984=7; NvEmulate=50"
[DirectSound]
- Hardware accelerated direct sound capture driver support using the Windows CE3 HAL API
- 3D buffer support in software is present but incomplete.
- 3D buffer hardware support
- Sound effects on buffers
- Capture effects
ASIO driver see bug 2161
- Fix stutter problems in 'Emulation' mode.
- Improve support for driver/soundcards that will only let us mmap the card's buffer at a fixed frequency.
- Automatically switch to 'Emulation' mode if the driver/soundcard does not support mmap-ing the card's buffer.
- DX9 support for new PCM formats (24/32 bit and float samples) and for more than 2 channels is not present.
[DirectMusic] (dmime, dmband, dmsynth, dmloader, dmcompos, dmstyle)
cleanup ParseDescriptor/Loading to have share code
- use loaded datas (implementing Getters APIs and begin to play some sounds)
- load wave tracks (dswave)
- More tracks loading
use play APIs in RT play thead (ProcessMsgThread in dmime/performance)
finish processing/dispatch thread (IDirectMusicPerformance)
- better support of unstreams
- implement dmusic32 APIs
[DMScript]
- VB script execution support (actually only source is loaded). Maybe using a generic Wine VB script kernel (as the vbscript.dll seems to provide on windows) using ole32/com (most of the needs are already here)
- Absolute positioning reporting needs verification.
- DXGrab support in OpenGL is still missing.
- Mouse doesn't wrap all the time and "escapes" game window.
- Improve DX8 support (especially joystick)
- Keyboard: Fix remaining layout, dead keys, hotkeys and focus issues.
Real support for DirectPlay (for now dpnet APIs are mainly stubs)
[DevEnum]
Support the creation of special filters (Midi renderer, DSound renderer, WaveOut, WaveIn) and support the binding to these filters.
- The core function Direct3DRMCreate is unimplemented
All other functions in .spec
[DXDiagn]
Fill DirectSound desc container
Fill DirectMusic desc container
Fill DirectInput desc container
Fill DirectPlay desc container
- Fill logical disks desc container
Fill System devices desc container see: IDxDiagContainer Interface
Rewrite wglShareLists() using glXCopyContext and context recreation instead of delaying context creation bug 11436
- WGL_render_depth_texture extension which layers on WGL_render_texture.
Useful tweaking / capability related info

MoinMoin
Python