Castor3D  ..
Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor3d::BackBuffersabstract

Classe de tampons d'image de fenêtre. Plus de détails...

+ Graphe d'héritage de castor3d::BackBuffers:
+ Graphe de collaboration de castor3d::BackBuffers:

Fonctions membres publiques

C3D_API BackBuffers (Engine &engine)
 Constructeur. Plus de détails...
 
virtual C3D_API ~BackBuffers ()
 Destructeur. Plus de détails...
 
C3D_API bool initialise (castor::Size const &size, castor::PixelFormat format)
 Initialise le tampon interne, en mémoire RAM. Plus de détails...
 
virtual C3D_API void bind (WindowBuffer buffer, FrameBufferTarget target) const =0
 Fonction d'activation, pour dire au GPU qu'il est activé. Plus de détails...
 
C3D_API RenderBufferAttachmentSPtr createAttachment (RenderBufferSPtr renderBuffer) const override
 Crée une attache à un tampon de rendu. Plus de détails...
 
C3D_API TextureAttachmentSPtr createAttachment (TextureLayoutSPtr texture) const override
 Crée une attache à une texture. Plus de détails...
 
C3D_API TextureAttachmentSPtr createAttachment (TextureLayoutSPtr texture, uint32_t mipLevel) const override
 Crée une attache à un mipmap d'une texture. Plus de détails...
 
C3D_API TextureAttachmentSPtr createAttachment (TextureLayoutSPtr texture, CubeMapFace face) const override
 Crée une attache à une face d'une texture cube. Plus de détails...
 
C3D_API TextureAttachmentSPtr createAttachment (TextureLayoutSPtr texture, CubeMapFace face, uint32_t mipLevel) const override
 Crée une attache à un mipmap d'une face d'une texture cube. Plus de détails...
 
C3D_API bool isComplete () const override
 Vérifies i le FBO est complet. Plus de détails...
 
- Fonctions membres publiques hérités de castor3d::FrameBuffer
 DECLARE_VECTOR (FrameBufferAttachmentSPtr, Attach)
 
C3D_API FrameBuffer (Engine &engine)
 Constructeur. Plus de détails...
 
virtual C3D_API ~FrameBuffer ()
 Destructeur. Plus de détails...
 
virtual C3D_API bool initialise ()=0
 Initialise les tampons de cache de couleur de profondeur. Plus de détails...
 
virtual C3D_API void cleanup ()=0
 Nettoie les tampons de cache. Plus de détails...
 
C3D_API void setClearColour (castor::RgbaColour const &colour)
 Définit la couleur utilisée quand Clear est appelée sur le tampon couleur. Plus de détails...
 
C3D_API void setClearColour (float r, float g, float b, float a)
 Définit la couleur utilisée quand Clear est appelée sur le tampon couleur. Plus de détails...
 
C3D_API void clear (BufferComponents targets) const
 Vide les tampons. Plus de détails...
 
C3D_API void bind (FrameBufferTarget target=FrameBufferTarget::eBoth) const
 Fonction d'activation, pour dire au GPU qu'il est activé Plus de détails...
 
C3D_API void unbind () const
 Fonction de désactivation, pour dire au GPU qu'il est désactivé Plus de détails...
 
C3D_API void blitInto (FrameBuffer const &buffer, castor::Rectangle const &rect, BufferComponents const &components) const
 Blitte ce tampon dans celui donné Plus de détails...
 
C3D_API void stretchInto (FrameBuffer const &buffer, castor::Rectangle const &rectSrc, castor::Rectangle const &rectDst, BufferComponents const &components, InterpolationMode interpolation) const
 Stretche ce tampon dans celui donné. Plus de détails...
 
C3D_API void setDrawBuffers () const
 Définit les buffers dans lesquels le dessin doit être effectué Plus de détails...
 
C3D_API void setDrawBuffer (FrameBufferAttachmentSPtr attach) const
 Définit le tampon de dans lequel le dessin doit être effectué. Plus de détails...
 
C3D_API void attach (AttachmentPoint point, uint8_t index, TextureAttachmentSPtr texture, TextureType target, int layer=0)
 Attache une texture à ce tampon d'image, au point d'attache voulu. Plus de détails...
 
C3D_API void attach (AttachmentPoint point, TextureAttachmentSPtr texture, TextureType target, int layer=0)
 Attache une texture à ce tampon d'image, au point d'attache voulu. Plus de détails...
 
C3D_API void attach (AttachmentPoint point, uint8_t index, RenderBufferAttachmentSPtr renderBuffer)
 Attache un tampon de rendu à ce tampon d'image, au point d'attache voulu. Plus de détails...
 
C3D_API void attach (AttachmentPoint point, RenderBufferAttachmentSPtr renderBuffer)
 Attache un tampon de rendu à ce tampon d'image, au point d'attache voulu. Plus de détails...
 
C3D_API void detach (FrameBufferAttachmentSPtr attach)
 Détache une atache de ce tampon d'image. Plus de détails...
 
C3D_API FrameBufferAttachmentSPtr getAttachment (AttachmentPoint point, uint8_t index)
 Récupère un tampon attaché au point et à l'index d'attache donnés. Plus de détails...
 
C3D_API void detachAll ()
 Détache tous les objets attachés. Plus de détails...
 
C3D_API void resize (castor::Size const &size)
 Redimensionne tous les tampons attachés. Plus de détails...
 
void setSRGB (bool value)
 
bool isSRGB () const
 
virtual C3D_API void setDrawBuffers (AttachArray const &attaches) const =0
 Utilise les attaches données pour ce framebuffer, lors du prochain dessin. Plus de détails...
 
virtual C3D_API void setReadBuffer (AttachmentPoint point, uint8_t index) const =0
 Définit le tampon de couleur source pour la lecture de pixels. Plus de détails...
 
virtual C3D_API ColourRenderBufferSPtr createColourRenderBuffer (castor::PixelFormat format) const =0
 Crée un tampon de rendu couleur. Plus de détails...
 
virtual C3D_API DepthStencilRenderBufferSPtr createDepthStencilRenderBuffer (castor::PixelFormat format) const =0
 Crée un tampon de rendu profondeur/stencil. Plus de détails...
 
virtual C3D_API void downloadBuffer (castor3d::AttachmentPoint point, uint8_t index, castor::PxBufferBaseSPtr buffer) const =0
 Récupère les données du tampon de rendu. Plus de détails...
 

Membres hérités additionnels

- Fonctions membres protégées hérités de castor3d::FrameBuffer
C3D_API castor::PixelFormat doGetPixelFormat (AttachmentPoint point, uint8_t index) const
 
virtual C3D_API void doClear (BufferComponents targets) const =0
 Vide les composantes de tampon données. Plus de détails...
 
virtual C3D_API void doBlitInto (FrameBuffer const &buffer, castor::Rectangle const &rect, BufferComponents const &components) const =0
 Blitte ce tampon dans celui donné Plus de détails...
 
virtual C3D_API void doStretchInto (FrameBuffer const &buffer, castor::Rectangle const &rectSrc, castor::Rectangle const &rectDst, BufferComponents const &components, InterpolationMode interpolation) const =0
 Blitte ce tampon dans celui donné. Plus de détails...
 
- Attributs protégés hérités de castor3d::FrameBuffer
AttachArray m_attaches
 
float m_redClear { 0.0f }
 
float m_greenClear { 0.0f }
 
float m_blueClear { 0.0f }
 
float m_alphaClear { 1.0f }
 
bool m_sRGB { false }
 

Description détaillée

Classe de tampons d'image de fenêtre.

Auteur
Sylvain DOREMUS
Version
0.8.0
Date
20/10/2015
Remarques
Tampons de rendu d'une fenêtre.

Documentation des constructeurs et destructeur

◆ BackBuffers()

C3D_API castor3d::BackBuffers::BackBuffers ( Engine engine)
explicit

Constructeur.

Paramètres
[in]engineLe moteur.

◆ ~BackBuffers()

virtual C3D_API castor3d::BackBuffers::~BackBuffers ( )
virtual

Destructeur.

Documentation des fonctions membres

◆ bind()

virtual C3D_API void castor3d::BackBuffers::bind ( WindowBuffer  buffer,
FrameBufferTarget  target 
) const
pure virtual

Fonction d'activation, pour dire au GPU qu'il est activé.

Paramètres
[in]bufferLe tampon d'image à activer.
[in]targetLa cible d'activation du tampon d'image.

◆ createAttachment() [1/5]

C3D_API RenderBufferAttachmentSPtr castor3d::BackBuffers::createAttachment ( RenderBufferSPtr  renderBuffer) const
inlineoverridevirtual

Crée une attache à un tampon de rendu.

Paramètres
[in]renderBufferLe tampon de rendu
Renvoie
L'attache créée

Implémente castor3d::FrameBuffer.

◆ createAttachment() [2/5]

C3D_API TextureAttachmentSPtr castor3d::BackBuffers::createAttachment ( TextureLayoutSPtr  texture) const
inlineoverridevirtual

Crée une attache à une texture.

Paramètres
[in]textureLa texture
Renvoie
L'attache créée

Implémente castor3d::FrameBuffer.

◆ createAttachment() [3/5]

C3D_API TextureAttachmentSPtr castor3d::BackBuffers::createAttachment ( TextureLayoutSPtr  texture,
uint32_t  mipLevel 
) const
inlineoverridevirtual

Crée une attache à un mipmap d'une texture.

Paramètres
[in]textureLa texture.
[in]mipLevelLe niveau du mipmap.
Renvoie
L'attache créée

Implémente castor3d::FrameBuffer.

◆ createAttachment() [4/5]

C3D_API TextureAttachmentSPtr castor3d::BackBuffers::createAttachment ( TextureLayoutSPtr  texture,
CubeMapFace  face 
) const
inlineoverridevirtual

Crée une attache à une face d'une texture cube.

Paramètres
[in]textureLa texture.
[in]faceLa face.
Renvoie
L'attache créée

Implémente castor3d::FrameBuffer.

◆ createAttachment() [5/5]

C3D_API TextureAttachmentSPtr castor3d::BackBuffers::createAttachment ( TextureLayoutSPtr  texture,
CubeMapFace  face,
uint32_t  mipLevel 
) const
inlineoverridevirtual

Crée une attache à un mipmap d'une face d'une texture cube.

Paramètres
[in]textureLa texture.
[in]faceLa face.
[in]mipLevelLe niveau du mipmap.
Renvoie
L'attache créée

Implémente castor3d::FrameBuffer.

◆ initialise()

C3D_API bool castor3d::BackBuffers::initialise ( castor::Size const &  size,
castor::PixelFormat  format 
)

Initialise le tampon interne, en mémoire RAM.

Paramètres
[in]sizeLes dimensions du tampon.
[in]formatLe format des pixels du tampon.
Renvoie
true si tout s'est bien passé.

◆ isComplete()

C3D_API bool castor3d::BackBuffers::isComplete ( ) const
inlineoverridevirtual

La documentation de cette classe a été générée à partir du fichier suivant :