C# Class Axiom.RenderSystems.OpenGL.GLFBORTTManager

Concrete Factory for GL Frame Buffer Objects, and related things.
Inheritance: GLRTTManager
Afficher le fichier Open project: WolfgangSt/axiom Class Usage Examples

Méthodes publiques

Méthode Description
Bind ( RenderTarget target ) : void

Bind a certain render target if it is a FBO. If it is not a FBO, bind the main frame buffer.

CheckFormat ( PixelFormat format ) : bool

Check if a certain format is usable as FBO rendertarget format

CreateFrameBufferObject ( ) : GLFrameBufferObject

Create a framebuffer object

CreateMultiRenderTarget ( string name ) : Axiom.Graphics.MultiRenderTarget
CreateRenderTexture ( string name, Axiom.RenderSystems.OpenGL.GLSurfaceDesc target, bool writeGamma, int fsaa ) : RenderTexture
DestroyFrameBufferObject ( GLFrameBufferObject fbo ) : void

Destroy a framebuffer object

GetBestDepthStencil ( PixelFormat format, int &depthFormat, int &stencilFormat ) : void

Get best depth and stencil supported for given internalFormat

ReleaseRenderBuffer ( Axiom.RenderSystems.OpenGL.GLSurfaceDesc surface ) : void

Release a render buffer. Ignore silently if surface.buffer is null.

RequestRenderBuffer ( int format, int width, int height ) : Axiom.RenderSystems.OpenGL.GLSurfaceDesc

Request a render buffer. If format is Gl.GL_NONE, return a zero buffer.

RequestRenderBuffer ( Axiom.RenderSystems.OpenGL.GLSurfaceDesc surface ) : void

Request the specific render buffer in case shared somewhere. Ignore silently if surface.buffer is 0.

Unbind ( RenderTarget target ) : void

Unbind a certain render target. No-op for FBOs.

Méthodes protégées

Méthode Description
dispose ( bool disposeManagedResources ) : void

Private Methods

Méthode Description
GLFBORTTManager ( Axiom.RenderSystems.OpenGL.BaseGLSupport glSupport, bool atiMode ) : System
_detectFBOFormats ( ) : void

Detect allowed FBO formats

_tryFormat ( int depthFormat, int stencilFormat ) : bool
_tryPackedFormat ( int packedFormat ) : bool

Method Details

Bind() public méthode

Bind a certain render target if it is a FBO. If it is not a FBO, bind the main frame buffer.
public Bind ( RenderTarget target ) : void
target Axiom.Graphics.RenderTarget
Résultat void

CheckFormat() public méthode

Check if a certain format is usable as FBO rendertarget format
public CheckFormat ( PixelFormat format ) : bool
format PixelFormat
Résultat bool

CreateFrameBufferObject() public méthode

Create a framebuffer object
public CreateFrameBufferObject ( ) : GLFrameBufferObject
Résultat GLFrameBufferObject

CreateMultiRenderTarget() public méthode

public CreateMultiRenderTarget ( string name ) : Axiom.Graphics.MultiRenderTarget
name string
Résultat Axiom.Graphics.MultiRenderTarget

CreateRenderTexture() public méthode

public CreateRenderTexture ( string name, Axiom.RenderSystems.OpenGL.GLSurfaceDesc target, bool writeGamma, int fsaa ) : RenderTexture
name string
target Axiom.RenderSystems.OpenGL.GLSurfaceDesc
writeGamma bool
fsaa int
Résultat Axiom.Graphics.RenderTexture

DestroyFrameBufferObject() public méthode

Destroy a framebuffer object
public DestroyFrameBufferObject ( GLFrameBufferObject fbo ) : void
fbo GLFrameBufferObject
Résultat void

GetBestDepthStencil() public méthode

Get best depth and stencil supported for given internalFormat
public GetBestDepthStencil ( PixelFormat format, int &depthFormat, int &stencilFormat ) : void
format PixelFormat
depthFormat int
stencilFormat int
Résultat void

ReleaseRenderBuffer() public méthode

Release a render buffer. Ignore silently if surface.buffer is null.
public ReleaseRenderBuffer ( Axiom.RenderSystems.OpenGL.GLSurfaceDesc surface ) : void
surface Axiom.RenderSystems.OpenGL.GLSurfaceDesc
Résultat void

RequestRenderBuffer() public méthode

Request a render buffer. If format is Gl.GL_NONE, return a zero buffer.
public RequestRenderBuffer ( int format, int width, int height ) : Axiom.RenderSystems.OpenGL.GLSurfaceDesc
format int
width int
height int
Résultat Axiom.RenderSystems.OpenGL.GLSurfaceDesc

RequestRenderBuffer() public méthode

Request the specific render buffer in case shared somewhere. Ignore silently if surface.buffer is 0.
public RequestRenderBuffer ( Axiom.RenderSystems.OpenGL.GLSurfaceDesc surface ) : void
surface Axiom.RenderSystems.OpenGL.GLSurfaceDesc
Résultat void

Unbind() public méthode

Unbind a certain render target. No-op for FBOs.
public Unbind ( RenderTarget target ) : void
target Axiom.Graphics.RenderTarget
Résultat void

dispose() protected méthode

protected dispose ( bool disposeManagedResources ) : void
disposeManagedResources bool
Résultat void