Difference between revisions of "User:Eddman"
m |
|||
Line 6: | Line 6: | ||
{{Fixbox|description=Identify the render API being used:|ref=|fix= | {{Fixbox|description=Identify the render API being used:|ref=|fix= | ||
− | + | Use a tool such as [https://learn.microsoft.com/en-us/sysinternals/downloads/process-explorer Process Explorer] to identify the loaded DLL files of the game process while the game is running: | |
− | + | * Does the game load {{file|d3dim700.dll}}? The game uses '''Direct3D 7'''. | |
− | + | * Does the game load {{file|d3dim.dll}}? The game uses '''Direct3D 2-6''', and a tool such as [[dgVoodoo]] must be used for tracing the API calls to determine the exact version. | |
− | + | * Does the game load {{file|ddraw.dll}} '''only'''? The game uses '''DirectDraw 1-7''', and a tool such as [[dgVoodoo]] must be used for tracing the API calls to determine the exact version. | |
− | + | * Does the game load both {{file|d3dim.dll}} and {{file|d3dim700.dll}}? The game uses one for rendering and the other for other purposes. A tool such as [[dgVoodoo]] must be used for tracing the API calls to determine which is used for rendering the game. | |
− | + | * Does a 2D game load {{file|d3dim700.dll}}, despite the 2D graphics? Possible cases are: | |
− | + | *#Direct3D 7 is used to render certain effects which are not possible with DirectDraw alone. | |
− | + | *#The game might not be utilizing Direct3D 7 in any meaningful capacity at all. {{file|d3dim700.dll}} is possibly loaded as a result of a developer mistake, or using dev tools that added the DLL as a dependency by default. | |
− | |||
− | |||
− | |||
− | |||
− | |||
{{ii}}Note that {{file|ddraw.dll}} is always loaded alongside {{file|d3dim.dll}} and {{file|d3dim700.dll}}, since Direct3D 2-7 require DirectDraw to be able to function. | {{ii}}Note that {{file|ddraw.dll}} is always loaded alongside {{file|d3dim.dll}} and {{file|d3dim700.dll}}, since Direct3D 2-7 require DirectDraw to be able to function. |
Revision as of 00:38, 6 April 2024
Direct3D versions
DirectDraw is an obsolete 2D rendering API from Microsoft that was used by game developers mainly before the release of Direct3D 8.
Determine the Direct3D/DirectDraw version for older games
This section is only applicable for DirectDraw and Direct3D 7 or older. For newer render APIs, use a tool such as MSI Afterburner or Special K.
Identify the render API being used: |
---|
Use a tool such as Process Explorer to identify the loaded DLL files of the game process while the game is running:
If dgVoodoo needs to be used, do the following procedure to trace the calls:
You should see a list of interfaces sorted by time. Determine the Direct3D or DirectDraw version using the following tables:
Direct3D version | Interfaces -----------------|----------------------------- 2/3 | Direct3D, Direct3DDevice 5 | Direct3D2, Direct3DDevice2 6 | Direct3D3, Direct3DDevice3 7 | Direct3D7, Direct3DDevice7 DirectDraw version | Interfaces -------------------|--------------------------- 1 | DirectDraw, DirectDrawSurface 2/3 | DirectDraw2, DirectDrawSurface2 5 | DirectDraw2, DirectDrawSurface3 6 | DirectDraw4, DirectDrawSurface4 7 | DirectDraw7, DirectDrawSurface7
|