Crazy Eddies GUI System
0.7.2
|
Renderer implementation using Direct3D 10. More...
Public Member Functions | |
IDevice11 & | getDirect3DDevice () |
void | bindTechniquePass (const BlendMode mode) |
low-level function that binds the technique pass ready for use | |
void | setCurrentTextureShaderResource (ID3D11ShaderResourceView *srv) |
low-level function to set the texture shader resource view to be used. | |
void | setProjectionMatrix (D3DXMATRIX &matrix) |
low-level function to set the projection matrix to be used. | |
void | setWorldMatrix (D3DXMATRIX &matrix) |
low-level function to set the world matrix to be used. | |
RenderingRoot & | getDefaultRenderingRoot () |
Return the default rendering root for the renderer. The default rendering root is typically a RenderingRoot that targets the entire screen (or rendering window). More... | |
GeometryBuffer & | createGeometryBuffer () |
Create a new GeometryBuffer and return a reference to it. You should remove the GeometryBuffer from any RenderQueues and call destroyGeometryBuffer when you want to destroy the GeometryBuffer. More... | |
void | destroyGeometryBuffer (const GeometryBuffer &buffer) |
Destroy a GeometryBuffer that was returned when calling the createGeometryBuffer function. Before destroying any GeometryBuffer you should ensure that it has been removed from any RenderQueue that was using it. More... | |
void | destroyAllGeometryBuffers () |
Destroy all GeometryBuffer objects created by this Renderer. | |
TextureTarget * | createTextureTarget () |
Create a TextureTarget that can be used to cache imagery; this is a RenderTarget that does not lose it's content from one frame to another. More... | |
void | destroyTextureTarget (TextureTarget *target) |
Function that cleans up TextureTarget objects created with the createTextureTarget function. More... | |
void | destroyAllTextureTargets () |
Destory all TextureTarget objects created by this Renderer. | |
Texture & | createTexture () |
Create a 'null' Texture object. More... | |
Texture & | createTexture (const String &filename, const String &resourceGroup) |
Create a Texture object using the given image file. More... | |
Texture & | createTexture (const Size &size) |
Create a Texture object with the given pixel dimensions as specified by size. More... | |
void | destroyTexture (Texture &texture) |
Destroy a Texture object that was previously created by calling the createTexture functions. More... | |
void | destroyAllTextures () |
Destroy all Texture objects created by this Renderer. | |
void | beginRendering () |
Perform any operations required to put the system into a state ready for rendering operations to begin. | |
void | endRendering () |
Perform any operations required to finalise rendering. | |
void | setDisplaySize (const Size &sz) |
Set the size of the display or host window in pixels for this Renderer object. More... | |
const Size & | getDisplaySize () const |
Return the size of the display or host window in pixels. More... | |
const Vector2 & | getDisplayDPI () const |
Return the resolution of the display or host window in dots per inch. More... | |
uint | getMaxTextureSize () const |
Return the pixel size of the maximum supported texture. More... | |
const String & | getIdentifierString () const |
Return identification string for the renderer module. More... | |
Public Member Functions inherited from CEGUI::Renderer | |
virtual | ~Renderer () |
Destructor. | |
Static Public Member Functions | |
static Direct3D11Renderer & | bootstrapSystem (ID3D11Device *device, ID3D11DeviceContext *context) |
Convenience function that creates the required objects to initialise the CEGUI system. More... | |
static void | destroySystem () |
Convenience function to cleanup the CEGUI system and related objects that were created by calling the bootstrapSystem function. More... | |
static Direct3D11Renderer & | create (ID3D11Device *device, ID3D11DeviceContext *context) |
Create an Direct3D11Renderer object. | |
static void | destroy (Direct3D11Renderer &renderer) |
Destroy an Direct3D11Renderer object. More... | |
Protected Types | |
typedef std::vector < TextureTarget * > | TextureTargetList |
container type used to hold TextureTargets we create. | |
typedef std::vector < Direct3D11GeometryBuffer * > | GeometryBufferList |
container type used to hold GeometryBuffers we create. | |
typedef std::vector < Direct3D11Texture * > | TextureList |
container type used to hold Textures we create. | |
Protected Member Functions | |
Direct3D11Renderer (ID3D11Device *device, ID3D11DeviceContext *context) | |
constructor | |
~Direct3D11Renderer () | |
destructor. | |
Size | getViewportSize () |
return size of the D3D device viewport. | |
Protected Attributes | |
IDevice11 | d_device |
The D3D device we're using to render with. | |
Size | d_displaySize |
What the renderer considers to be the current display size. | |
Vector2 | d_displayDPI |
What the renderer considers to be the current display DPI resolution. | |
RenderTarget * | d_defaultTarget |
The default RenderTarget (used by d_defaultRoot) | |
RenderingRoot * | d_defaultRoot |
The default rendering root object. | |
TextureTargetList | d_textureTargets |
Container used to track texture targets. | |
GeometryBufferList | d_geometryBuffers |
Container used to track geometry buffers. | |
TextureList | d_textures |
Container used to track textures. | |
ID3DX11Effect * | d_effect |
Effect (shader) used when rendering. | |
ID3DX11EffectTechnique * | d_normalTechnique |
Rendering technique that supplies BM_NORMAL type rendering. | |
ID3DX11EffectTechnique * | d_premultipliedTechnique |
Rendering technique that supplies BM_RTT_PREMULTIPLIED type rendering. | |
ID3D11InputLayout * | d_inputLayout |
D3D10 input layout describing the vertex format we use. | |
ID3DX11EffectShaderResourceVariable * | d_boundTextureVariable |
Variable to access current texture (actually shader resource view) | |
ID3DX11EffectMatrixVariable * | d_worldMatrixVariable |
Variable to access world matrix used in geometry transformation. | |
ID3DX11EffectMatrixVariable * | d_projectionMatrixVariable |
Variable to access projection matrix used in geometry transformation. | |
Static Protected Attributes | |
static String | d_rendererID |
String holding the renderer identification text. | |
Renderer implementation using Direct3D 10.
|
static |
Convenience function that creates the required objects to initialise the CEGUI system.
This will create and initialise the following objects for you: - CEGUI::Direct3D11Renderer - CEGUI::DefaultResourceProvider - CEGUI::System
device | Pointer to the ID3D11Device interface that is to be used for CEGUI rendering operations. |
context | Pointer to the ID3D11DeviceContext interface that is to be used for CEGUI rendering operations. |
|
virtual |
Create a new GeometryBuffer and return a reference to it. You should remove the GeometryBuffer from any RenderQueues and call destroyGeometryBuffer when you want to destroy the GeometryBuffer.
Implements CEGUI::Renderer.
|
virtual |
Create a 'null' Texture object.
Implements CEGUI::Renderer.
|
virtual |
Create a Texture object using the given image file.
filename | String object that specifies the path and filename of the image file to use when creating the texture. |
resourceGroup | String objet that specifies the resource group identifier to be passed to the resource provider when loading the texture file filename. |
Implements CEGUI::Renderer.
Create a Texture object with the given pixel dimensions as specified by size.
size | Size object that describes the desired texture size. |
Implements CEGUI::Renderer.
|
virtual |
Create a TextureTarget that can be used to cache imagery; this is a RenderTarget that does not lose it's content from one frame to another.
If the renderer is unable to offer such a thing, 0 should be returned.
Implements CEGUI::Renderer.
|
static |
Destroy an Direct3D11Renderer object.
renderer | The Direct3D11Renderer object to be destroyed. |
|
virtual |
Destroy a GeometryBuffer that was returned when calling the createGeometryBuffer function. Before destroying any GeometryBuffer you should ensure that it has been removed from any RenderQueue that was using it.
buffer | The GeometryBuffer object to be destroyed. |
Implements CEGUI::Renderer.
|
static |
Convenience function to cleanup the CEGUI system and related objects that were created by calling the bootstrapSystem function.
This function will destroy the following objects for you: - CEGUI::System - CEGUI::DefaultResourceProvider - CEGUI::Direct3D11Renderer
|
virtual |
Destroy a Texture object that was previously created by calling the createTexture functions.
texture | Texture object to be destroyed. |
Implements CEGUI::Renderer.
|
virtual |
Function that cleans up TextureTarget objects created with the createTextureTarget function.
target | A pointer to a TextureTarget object that was previously returned from a call to createTextureTarget. |
Implements CEGUI::Renderer.
|
virtual |
Return the default rendering root for the renderer. The default rendering root is typically a RenderingRoot that targets the entire screen (or rendering window).
Implements CEGUI::Renderer.
|
virtual |
Return the resolution of the display or host window in dots per inch.
Implements CEGUI::Renderer.
|
virtual |
Return the size of the display or host window in pixels.
Implements CEGUI::Renderer.
|
virtual |
Return identification string for the renderer module.
Implements CEGUI::Renderer.
|
virtual |
Return the pixel size of the maximum supported texture.
Implements CEGUI::Renderer.
|
virtual |
Set the size of the display or host window in pixels for this Renderer object.
This is intended to be called by the System as part of the notification process when display size changes are notified to it via the System::notifyDisplaySizeChanged function.
size | Size object describing the dimesions of the current or host window in pixels. |
Implements CEGUI::Renderer.