WoW:GxApi: Difference between revisions

No edit summary
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
GxApi is a cross-platform graphics API that is part of the World of Warcraft engine.
GxApi is a cross-platform graphics API that is part of the World of Warcraft engine. It:


* Creates/destroys the window in which the game runs, which starts the game being able to read input events
* Creates/destroys the window in which the game runs, which starts the game being able to read input events
Line 7: Line 7:
* Creates/destroys textures
* Creates/destroys textures


* Draws to the window.
* Draws to the window


== Devices ==
== Graphics device ==


GxApi supports multiple low-level graphics APIs such as OpenGL and Direct3D (DirectX) 9. It does this by wrapping an base interface class, <code>CGxDevice</code>, whose
GxApi supports multiple low-level graphics APIs such as OpenGL and Direct3D (DirectX) 9. It does this by wrapping an base interface class, <code>CGxDevice</code>, whose
virtual member functions handle the actual calls to the graphics driver.
virtual member functions handle the actual calls to the graphics driver.
=== Windows device ===


On Windows, the derived classes include:
On Windows, the derived classes include:


;
;
; <code>CGxDeviceOpenGl</code> : OpenGL implementation.
; <code>CGxDeviceOpenGl</code> : OpenGL implementation. Enabled by passing <code>-opengl</code> as a command-line argument, or by setting a [[WoW:CVar|CVar]] prior to launch: <code>SET gxApi "OpenGL"</code>
; <code>CGxDeviceD3d</code> : Direct3D 9 (DirectX) implementation.
; <code>CGxDeviceD3d</code> : Direct3D 9 (DirectX) implementation. Enabled by passing <code>-d3d</code> as a command-line argument, or by setting a [[WoW:CVar|CVar]] prior to launch: <code>SET gxApi "D3D9"</code>
; <code>CGxDeviceD3d9Ex</code> : Direct3D 9Ex (DirectX) implementation
; <code>CGxDeviceD3d9Ex</code> : Direct3D 9Ex (DirectX) implementation. Enabled by  passing <code>-d3d9ex</code> as a command-line argument, or by setting a [[WoW:CVar|CVar]] prior to launch: <code>SET gxApi "D3D9Ex"</code>