|
| D3DHost_FrameBuffer () |
| Empty constructor. More...
|
|
| ~D3DHost_FrameBuffer () |
| Destructor, should be called after Release(). More...
|
|
virtual void | Release (OpenGl_Context *theCtx) override |
| Releases D3D and OpenGL resources. More...
|
|
Standard_Boolean | Init (const Handle< OpenGl_Context > &theCtx, IDirect3DDevice9 *theD3DDevice, const Standard_Boolean theIsD3dEx, const Standard_Integer theSizeX, const Standard_Integer theSizeY) |
| Initializes OpenGL FBO for Direct3D interoperability or in fallback mode. Color pixel format is always GL_RGBA8/D3DFMT_X8R8G8B8, no MSAA; depth-stencil pixel format is GL_DEPTH24_STENCIL8. More...
|
|
Standard_Boolean | InitD3dInterop (const Handle< OpenGl_Context > &theCtx, IDirect3DDevice9 *theD3DDevice, const Standard_Boolean theIsD3dEx, const Standard_Integer theSizeX, const Standard_Integer theSizeY, const Standard_Integer theDepthFormat) |
| Initializes OpenGL FBO for Direct3D interoperability. Color pixel format is always GL_RGBA8/D3DFMT_X8R8G8B8, no MSAA. More...
|
|
Standard_Boolean | InitD3dFallback (const Handle< OpenGl_Context > &theCtx, IDirect3DDevice9 *theD3DDevice, const Standard_Boolean theIsD3dEx, const Standard_Integer theSizeX, const Standard_Integer theSizeY, const Standard_Integer theDepthFormat) |
| Initializes OpenGL FBO + Direct3D surface for copying memory using fallback. Color pixel format is always GL_RGBA8/D3DFMT_X8R8G8B8, no MSAA. More...
|
|
Standard_Boolean | registerD3dBuffer (const Handle< OpenGl_Context > &theCtx) |
| Binds Direct3D color buffer to OpenGL texture. More...
|
|
virtual void | BindBuffer (const Handle< OpenGl_Context > &theCtx) override |
| Binds Direct3D objects for OpenGL drawing. Should be called before LockSurface() and followed by UnlockSurface();. More...
|
|
virtual void | LockSurface (const Handle< OpenGl_Context > &theCtx) |
| Acquires D3D resource for OpenGL usage. More...
|
|
virtual void | UnlockSurface (const Handle< OpenGl_Context > &theCtx) |
| Releases D3D resource. More...
|
|
IDirect3DSurface9 * | D3dColorSurface () |
| Returns D3D surface used as color buffer. More...
|
|
void * | D3dColorSurfaceShare () |
| Returns WDDM handle for D3D color surface. More...
|
|
Standard_Boolean | D3dFallback () const |
| Returns TRUE if FBO has been initialized without WGL/D3D interop. More...
|
|
Standard_Boolean | IsSRGBReady () const |
| Returns TRUE if color buffer is sRGB ready; FALSE by default. Requires D3DSAMP_SRGBTEXTURE sampler parameter being set on D3D level for rendering D3D surface. More...
|
|
void | SetSRGBReady (Standard_Boolean theIsReady) |
| Set if color buffer is sRGB ready. More...
|
|
| OpenGl_FrameBuffer () |
| Empty constructor. More...
|
|
virtual | ~OpenGl_FrameBuffer () |
| Destructor. More...
|
|
Standard_Integer | NbSamples () const |
| Number of multisampling samples. More...
|
|
Standard_Integer | NbColorBuffers () const |
| Number of color buffers. More...
|
|
bool | HasColor () const |
| Return true if FBO has been created with color attachment. More...
|
|
bool | HasDepth () const |
| Return true if FBO has been created with depth attachment. More...
|
|
Graphic3d_Vec2i | GetSize () const |
| Return textures width x height. More...
|
|
Standard_Integer | GetSizeX () const |
| Textures width. More...
|
|
Standard_Integer | GetSizeY () const |
| Textures height. More...
|
|
Graphic3d_Vec2i | GetVPSize () const |
| Return viewport width x height. More...
|
|
Standard_Integer | GetVPSizeX () const |
| Viewport width. More...
|
|
Standard_Integer | GetVPSizeY () const |
| Viewport height. More...
|
|
Graphic3d_Vec2i | GetInitVPSize () const |
| Return viewport width x height. More...
|
|
Standard_Integer | GetInitVPSizeX () const |
| Viewport width. More...
|
|
Standard_Integer | GetInitVPSizeY () const |
| Viewport height. More...
|
|
Standard_Boolean | IsValid () const |
| Returns true if current object was initialized. More...
|
|
Standard_Boolean | Init (const Handle< OpenGl_Context > &theGlCtx, const Graphic3d_Vec2i &theSize, const OpenGl_ColorFormats &theColorFormats, const Handle< OpenGl_Texture > &theDepthStencilTexture, const Standard_Integer theNbSamples=0) |
| Initialize FBO for rendering into single/multiple color buffer and depth textures. More...
|
|
Standard_Boolean | Init (const Handle< OpenGl_Context > &theGlCtx, const Graphic3d_Vec2i &theSize, const Standard_Integer theColorFormat, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| Initialize FBO for rendering into textures. More...
|
|
Standard_Boolean | Init (const Handle< OpenGl_Context > &theGlCtx, const Graphic3d_Vec2i &theSize, const OpenGl_ColorFormats &theColorFormats, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| Initialize FBO for rendering into single/multiple color buffer and depth textures. More...
|
|
Standard_Boolean | InitLazy (const Handle< OpenGl_Context > &theGlCtx, const Graphic3d_Vec2i &theViewportSize, const Standard_Integer theColorFormat, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| (Re-)initialize FBO with specified dimensions. More...
|
|
Standard_Boolean | InitLazy (const Handle< OpenGl_Context > &theGlCtx, const Graphic3d_Vec2i &theViewportSize, const OpenGl_ColorFormats &theColorFormats, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| (Re-)initialize FBO with specified dimensions. More...
|
|
Standard_Boolean | InitLazy (const Handle< OpenGl_Context > &theGlCtx, const OpenGl_FrameBuffer &theFbo) |
| (Re-)initialize FBO with properties taken from another FBO. More...
|
|
Standard_Boolean | InitWithRB (const Handle< OpenGl_Context > &theGlCtx, const Graphic3d_Vec2i &theSize, const Standard_Integer theColorFormat, const Standard_Integer theDepthFormat, const unsigned int theColorRBufferFromWindow=0) |
| (Re-)initialize FBO with specified dimensions. The Render Buffer Objects will be used for Color, Depth and Stencil attachments (as opposite to textures). More...
|
|
Standard_Boolean | InitWrapper (const Handle< OpenGl_Context > &theGlCtx) |
| Initialize class from currently bound FBO. Retrieved OpenGL objects will not be destroyed on Release. More...
|
|
Standard_Boolean | InitWrapper (const Handle< OpenGl_Context > &theGlContext, const NCollection_Sequence< Handle< OpenGl_Texture >> &theColorTextures, const Handle< OpenGl_Texture > &theDepthTexture=Handle< OpenGl_Texture >()) |
| Wrap existing color textures. More...
|
|
void | SetupViewport (const Handle< OpenGl_Context > &theGlCtx) |
| Setup viewport to render into FBO. More...
|
|
void | ChangeViewport (const Standard_Integer theVPSizeX, const Standard_Integer theVPSizeY) |
| Override viewport settings. More...
|
|
virtual void | BindDrawBuffer (const Handle< OpenGl_Context > &theGlCtx) |
| Bind frame buffer for drawing GL_DRAW_FRAMEBUFFER (to render into the texture). More...
|
|
virtual void | BindReadBuffer (const Handle< OpenGl_Context > &theGlCtx) |
| Bind frame buffer for reading GL_READ_FRAMEBUFFER. More...
|
|
virtual void | UnbindBuffer (const Handle< OpenGl_Context > &theGlCtx) |
| Unbind frame buffer. More...
|
|
const Handle< OpenGl_Texture > & | ColorTexture (const Standard_Integer theColorBufferIndex=0) const |
| Returns the color texture for the given color buffer index. More...
|
|
const Handle< OpenGl_Texture > & | DepthStencilTexture () const |
| Returns the depth-stencil texture. More...
|
|
unsigned int | ColorRenderBuffer () const |
| Returns the color Render Buffer. More...
|
|
unsigned int | DepthStencilRenderBuffer () const |
| Returns the depth Render Buffer. More...
|
|
virtual Standard_Size | EstimatedDataSize () const override |
| Returns estimated GPU memory usage for holding data without considering overheads and allocation alignment rules. More...
|
|
bool | Init (const Handle< OpenGl_Context > &theGlCtx, const Standard_Integer theSizeX, const Standard_Integer theSizeY, const OpenGl_ColorFormats &theColorFormats, const Handle< OpenGl_Texture > &theDepthStencilTexture, const Standard_Integer theNbSamples=0) |
| Initialize FBO for rendering into single/multiple color buffer and depth textures. More...
|
|
bool | Init (const Handle< OpenGl_Context > &theGlCtx, const Standard_Integer theSizeX, const Standard_Integer theSizeY, const Standard_Integer theColorFormat, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| Initialize FBO for rendering into textures. More...
|
|
bool | Init (const Handle< OpenGl_Context > &theGlCtx, const Standard_Integer theSizeX, const Standard_Integer theSizeY, const OpenGl_ColorFormats &theColorFormats, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| Initialize FBO for rendering into single/multiple color buffer and depth textures. More...
|
|
bool | InitLazy (const Handle< OpenGl_Context > &theGlCtx, const Standard_Integer theViewportSizeX, const Standard_Integer theViewportSizeY, const Standard_Integer theColorFormat, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| (Re-)initialize FBO with specified dimensions. More...
|
|
bool | InitLazy (const Handle< OpenGl_Context > &theGlCtx, const Standard_Integer theViewportSizeX, const Standard_Integer theViewportSizeY, const OpenGl_ColorFormats &theColorFormats, const Standard_Integer theDepthFormat, const Standard_Integer theNbSamples=0) |
| (Re-)initialize FBO with specified dimensions. More...
|
|
bool | InitWithRB (const Handle< OpenGl_Context > &theGlCtx, const Standard_Integer theSizeX, const Standard_Integer theSizeY, const Standard_Integer theColorFormat, const Standard_Integer theDepthFormat, const unsigned int theColorRBufferFromWindow=0) |
| (Re-)initialize FBO with specified dimensions. The Render Buffer Objects will be used for Color, Depth and Stencil attachments (as opposite to textures). More...
|
|
| OpenGl_Resource () |
| Empty constructor. More...
|
|
virtual | ~OpenGl_Resource () |
| Destructor. Inheritors should call Clean (NULL) within it. More...
|
|
virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
| Dumps the content of me into the stream. More...
|
|
Public Member Functions inherited from Standard_Transient |
| Standard_Transient () |
| Empty constructor. More...
|
|
| Standard_Transient (const Standard_Transient &) |
| Copy constructor – does nothing. More...
|
|
Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. More...
|
|
virtual | ~Standard_Transient () |
| Destructor must be virtual. More...
|
|
virtual void | Delete () const |
| Memory deallocator for transient classes. More...
|
|
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. More...
|
|
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. More...
|
|
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| Returns a true value if this is an instance of TypeName. More...
|
|
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
|
|
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
|
|
Standard_Transient * | This () const |
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...
|
|
Standard_Integer | GetRefCount () const |
| Get the reference counter of this object. More...
|
|
void | IncrementRefCounter () const |
| Increments the reference counter of this object. More...
|
|
Standard_Integer | DecrementRefCounter () const |
| Decrements the reference counter of this object; returns the decremented value. More...
|
|
Implements bridge FBO for direct rendering to Direct3D surfaces.