Documentation
Public Member Functions |
Static Public Member Functions |
Private Member Functions |
Private Attributes |
Static Private Attributes |
List of all members
Urho3D::Graphics Class Reference
Graphics subsystem. Manages the application window, rendering state and GPU resources. More...
#include <OGLGraphics.h>
Inheritance diagram for Urho3D::Graphics:
Collaboration diagram for Urho3D::Graphics:
Public Member Functions | |
| Graphics (Context *context_) | |
| Construct. | |
| virtual | ~Graphics () |
| Destruct. Release the OpenGL context and close the window. | |
| void | SetExternalWindow (void *window) |
| Set external window handle. Only effective before setting the initial screen mode. On Windows it is necessary to set up OpenGL pixel format manually for the window. | |
| void | SetWindowIcon (Image *windowIcon) |
| Set window icon. | |
| void | SetWindowTitle (const String &windowTitle) |
| Set window title. | |
| void | SetWindowPosition (const IntVector2 &position) |
| Set window position. | |
| void | SetWindowPosition (int x, int y) |
| Set window position. | |
| bool | SetMode (int width, int height, bool fullscreen, bool borderless, bool resizable, bool vsync, bool tripleBuffer, int multiSample) |
| Set screen mode. Return true if successful. | |
| bool | SetMode (int width, int height) |
| Set screen resolution only. Return true if successful. | |
| void | SetSRGB (bool enable) |
| Set whether the main window uses sRGB conversion on write. | |
| void | SetFlushGPU (bool enable) |
| Set whether to flush the GPU command buffer to prevent multiple frames being queued and uneven frame timesteps. Not yet implemented on OpenGL. | |
| void | SetForceGL2 (bool enable) |
| Set forced use of OpenGL 2 even if OpenGL 3 is available. Must be called before setting the screen mode for the first time. Default false. | |
| void | SetOrientations (const String &orientations) |
| Set allowed screen orientations as a space-separated list of "LandscapeLeft", "LandscapeRight", "Portrait" and "PortraitUpsideDown". Affects currently only iOS platform. | |
| bool | ToggleFullscreen () |
| Toggle between full screen and windowed mode. Return true if successful. | |
| void | Close () |
| Close the window. | |
| bool | TakeScreenShot (Image &destImage) |
| Take a screenshot. Return true if successful. | |
| bool | BeginFrame () |
| Begin frame rendering. Return true if device available and can render. | |
| void | EndFrame () |
| End frame rendering and swap buffers. | |
| void | Clear (unsigned flags, const Color &color=Color(0.0f, 0.0f, 0.0f, 0.0f), float depth=1.0f, unsigned stencil=0) |
| Clear any or all of rendertarget, depth buffer and stencil buffer. More... | |
| bool | ResolveToTexture (Texture2D *destination, const IntRect &viewport) |
| Resolve multisampled backbuffer to a texture rendertarget. The texture's size should match the viewport size. | |
| void | Draw (PrimitiveType type, unsigned vertexStart, unsigned vertexCount) |
| Draw non-indexed geometry. | |
| void | Draw (PrimitiveType type, unsigned indexStart, unsigned indexCount, unsigned minVertex, unsigned vertexCount) |
| Draw indexed geometry. | |
| void | DrawInstanced (PrimitiveType type, unsigned indexStart, unsigned indexCount, unsigned minVertex, unsigned vertexCount, unsigned instanceCount) |
| Draw indexed, instanced geometry. | |
| void | SetVertexBuffer (VertexBuffer *buffer) |
| Set vertex buffer. | |
| bool | SetVertexBuffers (const PODVector< VertexBuffer * > &buffers, const PODVector< unsigned > &elementMasks, unsigned instanceOffset=0) |
| Set multiple vertex buffers. | |
| bool | SetVertexBuffers (const Vector< SharedPtr< VertexBuffer > > &buffers, const PODVector< unsigned > &elementMasks, unsigned instanceOffset=0) |
| Set multiple vertex buffers. | |
| void | SetIndexBuffer (IndexBuffer *buffer) |
| Set index buffer. | |
| void | SetShaders (ShaderVariation *vs, ShaderVariation *ps) |
| Set shaders. | |
| void | SetShaderParameter (StringHash param, const float *data, unsigned count) |
| Set shader float constants. | |
| void | SetShaderParameter (StringHash param, float value) |
| Set shader float constant. | |
| void | SetShaderParameter (StringHash param, const Color &color) |
| Set shader color constant. | |
| void | SetShaderParameter (StringHash param, const Vector2 &vector) |
| Set shader 2D vector constant. | |
| void | SetShaderParameter (StringHash param, const Matrix3 &matrix) |
| Set shader 3x3 matrix constant. | |
| void | SetShaderParameter (StringHash param, const Vector3 &vector) |
| Set shader 3D vector constant. | |
| void | SetShaderParameter (StringHash param, const Matrix4 &matrix) |
| Set shader 4x4 matrix constant. | |
| void | SetShaderParameter (StringHash param, const Vector4 &vector) |
| Set shader 4D vector constant. | |
| void | SetShaderParameter (StringHash param, const Matrix3x4 &matrix) |
| Set shader 4x3 matrix constant. | |
| void | SetShaderParameter (StringHash param, const Variant &value) |
| Set shader constant from a variant. Supported variant types: bool, float, vector2, vector3, vector4, color. | |
| bool | NeedParameterUpdate (ShaderParameterGroup group, const void *source) |
| Check whether a shader parameter group needs update. Does not actually check whether parameters exist in the shaders. | |
| bool | HasShaderParameter (StringHash param) |
| Check whether a shader parameter exists on the currently set shaders. | |
| bool | HasTextureUnit (TextureUnit unit) |
| Check whether the current shader program uses a texture unit. | |
| void | ClearParameterSource (ShaderParameterGroup group) |
| Clear remembered shader parameter source group. | |
| void | ClearParameterSources () |
| Clear remembered shader parameter sources. | |
| void | ClearTransformSources () |
| Clear remembered transform shader parameter sources. | |
| void | SetTexture (unsigned index, Texture *texture) |
| Set texture. | |
| void | SetTextureForUpdate (Texture *texture) |
| Bind texture unit 0 for update. Called by Texture. | |
| void | SetDefaultTextureFilterMode (TextureFilterMode mode) |
| Set default texture filtering mode. | |
| void | SetTextureAnisotropy (unsigned level) |
| Set texture anisotropy. | |
| void | SetTextureParametersDirty () |
| Dirty texture parameters of all textures (when global settings change.) | |
| void | ResetRenderTargets () |
| Reset all rendertargets, depth-stencil surface and viewport. | |
| void | ResetRenderTarget (unsigned index) |
| Reset specific rendertarget. | |
| void | ResetDepthStencil () |
| Reset depth-stencil surface. | |
| void | SetRenderTarget (unsigned index, RenderSurface *renderTarget) |
| Set rendertarget. | |
| void | SetRenderTarget (unsigned index, Texture2D *texture) |
| Set rendertarget. | |
| void | SetDepthStencil (RenderSurface *depthStencil) |
| Set depth-stencil surface. | |
| void | SetDepthStencil (Texture2D *texture) |
| Set depth-stencil surface. | |
| void | SetViewport (const IntRect &rect) |
| Set viewport. | |
| void | SetBlendMode (BlendMode mode) |
| Set blending mode. | |
| void | SetColorWrite (bool enable) |
| Set color write on/off. | |
| void | SetCullMode (CullMode mode) |
| Set hardware culling mode. | |
| void | SetDepthBias (float constantBias, float slopeScaledBias) |
| Set depth bias. | |
| void | SetDepthTest (CompareMode mode) |
| Set depth compare. | |
| void | SetDepthWrite (bool enable) |
| Set depth write on/off. | |
| void | SetFillMode (FillMode mode) |
| Set polygon fill mode. | |
| void | SetScissorTest (bool enable, const Rect &rect=Rect::FULL, bool borderInclusive=true) |
| Set scissor test. | |
| void | SetScissorTest (bool enable, const IntRect &rect) |
| Set scissor test. | |
| void | SetStencilTest (bool enable, CompareMode mode=CMP_ALWAYS, StencilOp pass=OP_KEEP, StencilOp fail=OP_KEEP, StencilOp zFail=OP_KEEP, unsigned stencilRef=0, unsigned compareMask=M_MAX_UNSIGNED, unsigned writeMask=M_MAX_UNSIGNED) |
| Set stencil test. | |
| void | SetClipPlane (bool enable, const Plane &clipPlane=Plane::UP, const Matrix3x4 &view=Matrix3x4::IDENTITY, const Matrix4 &projection=Matrix4::IDENTITY) |
| Set a custom clipping plane. The plane is specified in world space, but is dependent on the view and projection matrices. | |
| void | BeginDumpShaders (const String &fileName) |
| Begin dumping shader variation names to an XML file for precaching. | |
| void | EndDumpShaders () |
| End dumping shader variations names. | |
| void | PrecacheShaders (Deserializer &source) |
| Precache shader variations from an XML file generated with BeginDumpShaders(). | |
| bool | IsInitialized () const |
| Return whether rendering initialized. | |
| GraphicsImpl * | GetImpl () const |
| Return graphics implementation, which holds the actual API-specific resources. | |
| void * | GetExternalWindow () const |
| Return OS-specific external window handle. Null if not in use. | |
| const String & | GetWindowTitle () const |
| Return window title. | |
| const String & | GetApiName () const |
| Return graphics API name. | |
| IntVector2 | GetWindowPosition () const |
| Return window position. | |
| int | GetWidth () const |
| Return window width. | |
| int | GetHeight () const |
| Return window height. | |
| int | GetMultiSample () const |
| Return multisample mode (1 = no multisampling.) | |
| bool | GetFullscreen () const |
| Return whether window is fullscreen. | |
| bool | GetBorderless () const |
| Return whether window is borderless. | |
| bool | GetResizable () const |
| Return whether window is resizable. | |
| bool | GetVSync () const |
| Return whether vertical sync is on. | |
| bool | GetTripleBuffer () const |
| Return whether triple buffering is enabled. | |
| bool | GetSRGB () const |
| Return whether the main window is using sRGB conversion on write. | |
| bool | GetFlushGPU () const |
| Return whether the GPU command buffer is flushed each frame. Not yet implemented on OpenGL. | |
| bool | GetForceGL2 () const |
| Return whether OpenGL 2 use is forced. | |
| const String & | GetOrientations () const |
| Return allowed screen orientations. | |
| bool | IsDeviceLost () const |
| Return whether device is lost, and can not yet render. | |
| unsigned | GetNumPrimitives () const |
| Return number of primitives drawn this frame. | |
| unsigned | GetNumBatches () const |
| Return number of batches drawn this frame. | |
| unsigned | GetDummyColorFormat () const |
| Return dummy color texture format for shadow maps. 0 if not needed, may be nonzero on OS X to work around an Intel driver issue. | |
| unsigned | GetShadowMapFormat () const |
| Return shadow map depth texture format, or 0 if not supported. | |
| unsigned | GetHiresShadowMapFormat () const |
| Return 24-bit shadow map depth texture format, or 0 if not supported. | |
| bool | GetInstancingSupport () const |
| Return whether hardware instancing is supported. | |
| bool | GetLightPrepassSupport () const |
| Return whether light pre-pass rendering is supported. | |
| bool | GetDeferredSupport () const |
| Return whether deferred rendering is supported. | |
| bool | GetAnisotropySupport () const |
| Return whether anisotropic texture filtering is supported. | |
| bool | GetHardwareShadowSupport () const |
| Return whether shadow map depth compare is done in hardware. Always true on OpenGL. | |
| bool | GetReadableDepthSupport () const |
| Return whether a readable hardware depth format is available. | |
| bool | GetSRGBSupport () const |
| Return whether sRGB conversion on texture sampling is supported. | |
| bool | GetSRGBWriteSupport () const |
| Return whether sRGB conversion on rendertarget writing is supported. | |
| PODVector< IntVector2 > | GetResolutions () const |
| Return supported fullscreen resolutions. Will be empty if listing the resolutions is not supported on the platform (e.g. HTML5.) | |
| PODVector< int > | GetMultiSampleLevels () const |
| Return supported multisampling levels. More... | |
| IntVector2 | GetDesktopResolution () const |
| Return the desktop resolution. | |
| unsigned | GetFormat (CompressedFormat format) const |
| Return hardware format for a compressed image format, or 0 if unsupported. | |
| ShaderVariation * | GetShader (ShaderType type, const String &name, const String &defines=String::EMPTY) const |
| Return a shader variation by name and defines. | |
| ShaderVariation * | GetShader (ShaderType type, const char *name, const char *defines) const |
| Return a shader variation by name and defines. | |
| VertexBuffer * | GetVertexBuffer (unsigned index) const |
| Return current vertex buffer by index. | |
| IndexBuffer * | GetIndexBuffer () const |
| Return index buffer. | |
| ShaderVariation * | GetVertexShader () const |
| Return vertex shader. | |
| ShaderVariation * | GetPixelShader () const |
| Return pixel shader. | |
| ShaderProgram * | GetShaderProgram () const |
| Return shader program. | |
| TextureUnit | GetTextureUnit (const String &name) |
| Return texture unit index by name. | |
| const String & | GetTextureUnitName (TextureUnit unit) |
| Return texture unit name by index. | |
| Texture * | GetTexture (unsigned index) const |
| Return texture by texture unit index. | |
| TextureFilterMode | GetDefaultTextureFilterMode () const |
| Return default texture filtering mode. | |
| RenderSurface * | GetRenderTarget (unsigned index) const |
| Return rendertarget by index. | |
| RenderSurface * | GetDepthStencil () const |
| Return depth-stencil surface. | |
| Texture2D * | GetDepthTexture () const |
| Return readable depth-stencil texture. Not created automatically on OpenGL. | |
| IntRect | GetViewport () const |
| Return the viewport coordinates. | |
| unsigned | GetTextureAnisotropy () const |
| Return texture anisotropy. | |
| BlendMode | GetBlendMode () const |
| Return blending mode. | |
| bool | GetColorWrite () const |
| Return whether color write is enabled. | |
| CullMode | GetCullMode () const |
| Return hardware culling mode. | |
| float | GetDepthConstantBias () const |
| Return depth constant bias. | |
| float | GetDepthSlopeScaledBias () const |
| Return depth slope scaled bias. | |
| CompareMode | GetDepthTest () const |
| Return depth compare mode. | |
| bool | GetDepthWrite () const |
| Return whether depth write is enabled. | |
| FillMode | GetFillMode () const |
| Return polygon fill mode. | |
| bool | GetStencilTest () const |
| Return whether stencil test is enabled. | |
| bool | GetScissorTest () const |
| Return whether scissor test is enabled. | |
| const IntRect & | GetScissorRect () const |
| Return scissor rectangle coordinates. | |
| CompareMode | GetStencilTestMode () const |
| Return stencil compare mode. | |
| StencilOp | GetStencilPass () const |
| Return stencil operation to do if stencil test passes. | |
| StencilOp | GetStencilFail () const |
| Return stencil operation to do if stencil test fails. | |
| StencilOp | GetStencilZFail () const |
| Return stencil operation to do if depth compare fails. | |
| unsigned | GetStencilRef () const |
| Return stencil reference value. | |
| unsigned | GetStencilCompareMask () const |
| Return stencil compare bitmask. | |
| unsigned | GetStencilWriteMask () const |
| Return stencil write bitmask. | |
| bool | GetUseClipPlane () const |
| Return whether a custom clipping plane is in use. | |
| IntVector2 | GetRenderTargetDimensions () const |
| Return rendertarget width and height. | |
| void | WindowResized () |
| Window was resized through user interaction. Called by Input subsystem. | |
| void | WindowMoved () |
| Window was moved through user interaction. Called by Input subsystem. | |
| void | AddGPUObject (GPUObject *object) |
| Add a GPU object to keep track of. Called by GPUObject. | |
| void | RemoveGPUObject (GPUObject *object) |
| Remove a GPU object. Called by GPUObject. | |
| void * | ReserveScratchBuffer (unsigned size) |
| Reserve a CPU-side scratch buffer. | |
| void | FreeScratchBuffer (void *buffer) |
| Free a CPU-side scratch buffer. | |
| void | CleanupScratchBuffers () |
| Clean up too large scratch buffers. | |
| void | CleanupRenderSurface (RenderSurface *surface) |
| Clean up a render surface from all FBOs. | |
| void | CleanupShaderPrograms (ShaderVariation *variation) |
| Clean up shader programs when a shader variation is released or destroyed. | |
| ConstantBuffer * | GetOrCreateConstantBuffer (unsigned bindingIndex, unsigned size) |
| Reserve a constant buffer. | |
| void | Release (bool clearGPUObjects, bool closeWindow) |
| Release/clear GPU objects and optionally close the window. | |
| void | Restore () |
| Restore GPU objects and reinitialize state. Requires an open window. | |
| void | Maximize () |
| Maximize the Window. | |
| void | Minimize () |
| Minimize the Window. | |
| void | MarkFBODirty () |
| Mark the FBO needing an update. | |
| void | SetVBO (unsigned object) |
| Bind a VBO, avoiding redundant operation. | |
| void | SetUBO (unsigned object) |
| Bind a UBO, avoiding redundant operation. | |
Public Member Functions inherited from Urho3D::Object | |
| Object (Context *context) | |
| Construct. | |
| virtual | ~Object () |
| Destruct. Clean up self from event sender & receiver structures. | |
| virtual StringHash | GetType () const =0 |
| Return type hash. | |
| virtual const String & | GetTypeName () const =0 |
| Return type name. | |
| virtual const TypeInfo * | GetTypeInfo () const =0 |
| Return type info. | |
| virtual void | OnEvent (Object *sender, StringHash eventType, VariantMap &eventData) |
| Handle event. | |
| bool | IsInstanceOf (StringHash type) const |
| Check current instance is type of specified type. | |
| bool | IsInstanceOf (const TypeInfo *typeInfo) const |
| Check current instance is type of specified type. | |
| template<typename T > | |
| bool | IsInstanceOf () const |
| Check current instance is type of specified class. | |
| void | SubscribeToEvent (StringHash eventType, EventHandler *handler) |
| Subscribe to an event that can be sent by any sender. | |
| void | SubscribeToEvent (Object *sender, StringHash eventType, EventHandler *handler) |
| Subscribe to a specific sender's event. | |
| void | UnsubscribeFromEvent (StringHash eventType) |
| Unsubscribe from an event. | |
| void | UnsubscribeFromEvent (Object *sender, StringHash eventType) |
| Unsubscribe from a specific sender's event. | |
| void | UnsubscribeFromEvents (Object *sender) |
| Unsubscribe from a specific sender's events. | |
| void | UnsubscribeFromAllEvents () |
| Unsubscribe from all events. | |
| void | UnsubscribeFromAllEventsExcept (const PODVector< StringHash > &exceptions, bool onlyUserData) |
| Unsubscribe from all events except those listed, and optionally only those with userdata (script registered events.) | |
| void | SendEvent (StringHash eventType) |
| Send event to all subscribers. | |
| void | SendEvent (StringHash eventType, VariantMap &eventData) |
| Send event with parameters to all subscribers. More... | |
| VariantMap & | GetEventDataMap () const |
| Return a preallocated map for event data. Used for optimization to avoid constant re-allocation of event data maps. | |
| Context * | GetContext () const |
| Return execution context. | |
| Object * | GetSubsystem (StringHash type) const |
| Return subsystem by type. | |
| Object * | GetEventSender () const |
| Return active event sender. Null outside event handling. | |
| EventHandler * | GetEventHandler () const |
| Return active event handler. Null outside event handling. | |
| bool | HasSubscribedToEvent (StringHash eventType) const |
| Return whether has subscribed to an event without specific sender. | |
| bool | HasSubscribedToEvent (Object *sender, StringHash eventType) const |
| Return whether has subscribed to a specific sender's event. | |
| bool | HasEventHandlers () const |
| Return whether has subscribed to any event. | |
| template<class T > | |
| T * | GetSubsystem () const |
| Template version of returning a subsystem. | |
| const String & | GetCategory () const |
| Return object category. Categories are (optionally) registered along with the object factory. Return an empty string if the object category is not registered. | |
Public Member Functions inherited from Urho3D::RefCounted | |
| RefCounted () | |
| Construct. Allocate the reference count structure and set an initial self weak reference. | |
| virtual | ~RefCounted () |
| Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist. | |
| void | AddRef () |
| Increment reference count. Can also be called outside of a SharedPtr for traditional reference counting. | |
| void | ReleaseRef () |
| Decrement reference count and delete self if no more references. Can also be called outside of a SharedPtr for traditional reference counting. | |
| int | Refs () const |
| Return reference count. | |
| int | WeakRefs () const |
| Return weak reference count. | |
| RefCount * | RefCountPtr () |
| Return pointer to the reference count structure. | |
Static Public Member Functions | |
| static unsigned | GetAlphaFormat () |
| Return the API-specific alpha texture format. | |
| static unsigned | GetLuminanceFormat () |
| Return the API-specific luminance texture format. | |
| static unsigned | GetLuminanceAlphaFormat () |
| Return the API-specific luminance alpha texture format. | |
| static unsigned | GetRGBFormat () |
| Return the API-specific RGB texture format. | |
| static unsigned | GetRGBAFormat () |
| Return the API-specific RGBA texture format. | |
| static unsigned | GetRGBA16Format () |
| Return the API-specific RGBA 16-bit texture format. | |
| static unsigned | GetRGBAFloat16Format () |
| Return the API-specific RGBA 16-bit float texture format. | |
| static unsigned | GetRGBAFloat32Format () |
| Return the API-specific RGBA 32-bit float texture format. | |
| static unsigned | GetRG16Format () |
| Return the API-specific RG 16-bit texture format. | |
| static unsigned | GetRGFloat16Format () |
| Return the API-specific RG 16-bit float texture format. | |
| static unsigned | GetRGFloat32Format () |
| Return the API-specific RG 32-bit float texture format. | |
| static unsigned | GetFloat16Format () |
| Return the API-specific single channel 16-bit float texture format. | |
| static unsigned | GetFloat32Format () |
| Return the API-specific single channel 32-bit float texture format. | |
| static unsigned | GetLinearDepthFormat () |
| Return the API-specific linear depth texture format. | |
| static unsigned | GetDepthStencilFormat () |
| Return the API-specific hardware depth-stencil texture format. | |
| static unsigned | GetReadableDepthFormat () |
| Return the API-specific readable hardware depth format, or 0 if not supported. | |
| static unsigned | GetFormat (const String &formatName) |
| Return the API-specific texture format from a textual description, for example "rgb". | |
| static const Vector2 & | GetPixelUVOffset () |
| Return UV offset required for pixel perfect rendering. | |
| static unsigned | GetMaxBones () |
| Return maximum number of supported bones for skinning. | |
| static bool | GetGL3Support () |
| Return whether is using an OpenGL 3 context. | |
Static Public Member Functions inherited from Urho3D::Object | |
| static const TypeInfo * | GetTypeInfoStatic () |
| Return type info static. | |
| static bool | IsTypeOf (StringHash type) |
| Check current type is type of specified type. | |
| static bool | IsTypeOf (const TypeInfo *typeInfo) |
| Check current type is type of specified type. | |
| template<typename T > | |
| static bool | IsTypeOf () |
| Check current type is type of specified class. | |
Private Member Functions | |
| URHO3D_OBJECT (Graphics, Object) | |
| void | CreateWindowIcon () |
| Create the application window icon. | |
| void | CheckFeatureSupport () |
| Check supported rendering features. | |
| void | PrepareDraw () |
| Prepare for draw call. Update constant buffers and setup the FBO. | |
| void | CleanupFramebuffers () |
| Clean up all framebuffers. Called when destroying the context. | |
| void | ResetCachedState () |
| Reset cached rendering state. | |
| void | SetTextureUnitMappings () |
| Initialize texture unit mappings. | |
| unsigned | CreateFramebuffer () |
| Create a framebuffer using either extension or core functionality. | |
| void | DeleteFramebuffer (unsigned fbo) |
| Delete a framebuffer using either extension or core functionality. | |
| void | BindFramebuffer (unsigned fbo) |
| Bind a framebuffer using either extension or core functionality. | |
| void | BindColorAttachment (unsigned index, unsigned target, unsigned object) |
| Bind a framebuffer color attachment using either extension or core functionality. | |
| void | BindDepthAttachment (unsigned object, bool isRenderBuffer) |
| Bind a framebuffer depth attachment using either extension or core functionality. | |
| void | BindStencilAttachment (unsigned object, bool isRenderBuffer) |
| Bind a framebuffer stencil attachment using either extension or core functionality. | |
| bool | CheckFramebuffer () |
| Check FBO completeness using either extension or core functionality. | |
Private Attributes | |
| Mutex | gpuObjectMutex_ |
| Mutex for accessing the GPU objects vector from several threads. | |
| GraphicsImpl * | impl_ |
| Implementation. | |
| String | windowTitle_ |
| Window title. | |
| Image * | windowIcon_ |
| Window Icon File Name. | |
| void * | externalWindow_ |
| External window, null if not in use (default.) | |
| int | width_ |
| Window width. | |
| int | height_ |
| Window height. | |
| IntVector2 | position_ |
| Window position. | |
| int | multiSample_ |
| Multisampling mode. | |
| bool | fullscreen_ |
| Fullscreen flag. | |
| bool | borderless_ |
| Borderless flag. | |
| bool | resizable_ |
| Resizable flag. | |
| bool | vsync_ |
| Vertical sync flag. | |
| bool | tripleBuffer_ |
| Triple buffering flag. | |
| bool | sRGB_ |
| sRGB conversion on write flag for the main window. | |
| bool | forceGL2_ |
| Force OpenGL 2 use flag. | |
| bool | instancingSupport_ |
| Instancing support flag. | |
| bool | lightPrepassSupport_ |
| Light prepass support flag. | |
| bool | deferredSupport_ |
| Deferred rendering support flag. | |
| bool | anisotropySupport_ |
| Anisotropic filtering support flag. | |
| bool | dxtTextureSupport_ |
| DXT format support flag. | |
| bool | etcTextureSupport_ |
| ETC1 format support flag. | |
| bool | pvrtcTextureSupport_ |
| PVRTC formats support flag. | |
| bool | sRGBSupport_ |
| sRGB conversion on read support flag. | |
| bool | sRGBWriteSupport_ |
| sRGB conversion on write support flag. | |
| unsigned | numPrimitives_ |
| Number of primitives this frame. | |
| unsigned | numBatches_ |
| Number of batches this frame. | |
| unsigned | maxScratchBufferRequest_ |
| Largest scratch buffer request this frame. | |
| PODVector< GPUObject * > | gpuObjects_ |
| GPU objects. | |
| Vector< ScratchBuffer > | scratchBuffers_ |
| Scratch buffers. | |
| unsigned | dummyColorFormat_ |
| Shadow map dummy color texture format. | |
| unsigned | shadowMapFormat_ |
| Shadow map depth texture format. | |
| unsigned | hiresShadowMapFormat_ |
| Shadow map 24-bit depth texture format. | |
| VertexBuffer * | vertexBuffers_ [MAX_VERTEX_STREAMS] |
| Vertex buffers in use. | |
| unsigned | elementMasks_ [MAX_VERTEX_STREAMS] |
| Element mask in use. | |
| IndexBuffer * | indexBuffer_ |
| Index buffer in use. | |
| ShaderVariation * | vertexShader_ |
| Vertex shader in use. | |
| ShaderVariation * | pixelShader_ |
| Pixel shader in use. | |
| ShaderProgram * | shaderProgram_ |
| Shader program in use. | |
| ShaderProgramMap | shaderPrograms_ |
| Linked shader programs. | |
| Texture * | textures_ [MAX_TEXTURE_UNITS] |
| Textures in use. | |
| unsigned | textureTypes_ [MAX_TEXTURE_UNITS] |
| OpenGL texture types in use. | |
| HashMap< String, TextureUnit > | textureUnits_ |
| Texture unit mappings. | |
|
HashMap< unsigned, SharedPtr < ConstantBuffer > > | constantBuffers_ |
| All constant buffers. | |
| ConstantBuffer * | currentConstantBuffers_ [MAX_SHADER_PARAMETER_GROUPS *2] |
| Currently bound constant buffers. | |
| PODVector< ConstantBuffer * > | dirtyConstantBuffers_ |
| Dirty constant buffers. | |
| RenderSurface * | renderTargets_ [MAX_RENDERTARGETS] |
| Rendertargets in use. | |
| RenderSurface * | depthStencil_ |
| Depth-stencil surface in use. | |
| IntRect | viewport_ |
| Viewport coordinates. | |
| unsigned | textureAnisotropy_ |
| Texture anisotropy level. | |
| BlendMode | blendMode_ |
| Blending mode. | |
| bool | colorWrite_ |
| Color write enable. | |
| CullMode | cullMode_ |
| Hardware culling mode. | |
| float | constantDepthBias_ |
| Depth constant bias. | |
| float | slopeScaledDepthBias_ |
| Depth slope scaled bias. | |
| CompareMode | depthTestMode_ |
| Depth compare mode. | |
| bool | depthWrite_ |
| Depth write enable flag. | |
| FillMode | fillMode_ |
| Polygon fill mode. | |
| IntRect | scissorRect_ |
| Scissor test rectangle. | |
| bool | scissorTest_ |
| Scissor test enable flag. | |
| Vector4 | clipPlane_ |
| Current custom clip plane in post-projection space. | |
| CompareMode | stencilTestMode_ |
| Stencil test compare mode. | |
| StencilOp | stencilPass_ |
| Stencil operation on pass. | |
| StencilOp | stencilFail_ |
| Stencil operation on fail. | |
| StencilOp | stencilZFail_ |
| Stencil operation on depth fail. | |
| unsigned | stencilRef_ |
| Stencil test reference value. | |
| unsigned | stencilCompareMask_ |
| Stencil compare bitmask. | |
| unsigned | stencilWriteMask_ |
| Stencil write bitmask. | |
| bool | stencilTest_ |
| Stencil test enable flag. | |
| bool | useClipPlane_ |
| Custom clip plane enable flag. | |
| unsigned | lastInstanceOffset_ |
| Last used instance data offset. | |
| TextureFilterMode | defaultTextureFilterMode_ |
| Default texture filtering mode. | |
|
HashMap< int, SharedPtr < Texture2D > > | depthTextures_ |
| Map for additional depth textures, to emulate Direct3D9 ability to mix render texture and backbuffer rendering. | |
| String | shaderPath_ |
| Base directory for shaders. | |
| String | shaderExtension_ |
| File extension for shaders. | |
| WeakPtr< Shader > | lastShader_ |
| Last used shader in shader variation query. | |
| String | lastShaderName_ |
| Last used shader name in shader variation query. | |
| SharedPtr< ShaderPrecache > | shaderPrecache_ |
| Shader precache utility. | |
| String | orientations_ |
| Allowed screen orientations. | |
| String | apiName_ |
| Graphics API name. | |
Static Private Attributes | |
| static const Vector2 | pixelUVOffset |
| Pixel perfect UV offset. | |
| static bool | gl3Support = false |
| Flag for OpenGL 3 support. | |
Additional Inherited Members | |
Protected Attributes inherited from Urho3D::Object | |
| Context * | context_ |
| Execution context. | |
Detailed Description
Graphics subsystem. Manages the application window, rendering state and GPU resources.
Member Function Documentation
| void Urho3D::Graphics::Clear | ( | unsigned | flags, |
| const Color & | color = Color(0.0f, 0.0f, 0.0f, 0.0f), |
||
| float | depth = 1.0f, |
||
| unsigned | stencil = 0 |
||
| ) |
Clear any or all of rendertarget, depth buffer and stencil buffer.
- Todo:
- Any user-set scissor test will be lost
Here is the call graph for this function:
Here is the caller graph for this function:
| PODVector< int > Urho3D::Graphics::GetMultiSampleLevels | ( | ) | const |
Return supported multisampling levels.
- Todo:
- Implement properly, if possible
Here is the call graph for this function:
The documentation for this class was generated from the following files:
- /home/travis/build/urho3d/Urho3D/Source/Urho3D/Graphics/OpenGL/OGLGraphics.h
- /home/travis/build/urho3d/Urho3D/Source/Urho3D/Graphics/OpenGL/OGLGraphics.cpp

Public Member Functions inherited from