Deprecating DirectX 9
We will be removing support for DirectX 9 on the Windows platforms; as a result Windows XP will no longer be supported by default.
When will it happen?
Why is this necessary?
Due to diminishing hardware numbers and the loss of platform support from Microsoft, we have come to the conclusion that continued support of the DirectX 9 API is no longer feasible and is working against us when it comes to developing new features in Unity. It has become increasingly difficult to support and maintain feature parity across several DirectX API versions (9, 11, and 12).
With the rise of new graphics APIs, we feel that Unity continues to have excellent coverage of the hardware and API choices available now and in the future.
What are the next steps?
With Unity 2017.3 both the Unity Editor and the Standalone player will no longer support DirectX 9.
Furthermore, we have investigated the known crash issues related to DirectX 11 and established that these are generally caused by outdated drivers. We intend to find a solution that will prevent these types of crashes in the future and will continue to monitor and resolve issues as they appear.
We would very much like to hear from you if:
- You have workflows or existing setups that require continued use of DirectX 9
- If you are aware of any bugs or feature behavior that previously required a downgrade of graphics API to DirectX 9 (“-force-d3d9” command line argument)
Please use the blog post comment section, our forums, or the Unity Bug Reporter to contact us with any feedback.
How to continue supporting Windows XP:
Continued support for the Windows XP platform is possible by manually setting the Graphics APIs for Windows to use OpenGL.
To do this find the Player Rendering Settings located in the Editor menu: Edit > Project Settings > Player.
Disable the Auto Graphics API for Windows checkbox and select the OpenGL option as Graphics APIs for Windows.
Note that in order to have OpenGL support on Windows XP, the system has to have DX10/GL3 class GPU and fairly recent graphics drivers installed (generally drivers from year 2010 or later should work).