Castor3D  0.11.0
Multiplatform 3D engine
Types publics | Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::PostEffectabstract
Graphe d'héritage de castor3d::PostEffect:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::PostEffect:
Collaboration graph
[légende]

Types publics

enum  Kind { Kind::eHDR, Kind::eSRGB, Kind::eOverlay }
 

Fonctions membres publiques

virtual C3D_API ~PostEffect ()
 Destructeur. Plus de détails...
 
C3D_API bool writeInto (castor::TextFile &file, castor::String const &tabs)
 Ecrit l'effet dans un fichier texte. Plus de détails...
 
C3D_API bool initialise (castor3d::RenderDevice const &device, TextureLayout const &texture)
 Fonction d'initialisation. Plus de détails...
 
C3D_API void cleanup (castor3d::RenderDevice const &device)
 Fonction de nettoyage. Plus de détails...
 
C3D_API RenderPassTimerBlock start ()
 Démarre le rendu de l'effet. Plus de détails...
 
virtual C3D_API void update (CpuUpdater &updater)
 Met à jour la passe de rendu, au niveau CPU. Plus de détails...
 
virtual C3D_API void update (GpuUpdater &updater)
 Met à jour la passe de rendu, au niveau GPU. Plus de détails...
 
virtual C3D_API void accept (PipelineVisitorBase &visitor)=0
 Fonction d'acceptation de visiteur. Plus de détails...
 
CommandsSemaphoreArray const & getCommands () const
 
bool isAfterToneMapping () const
 
TextureLayout const & getResult () const
 
castor::String const & getFullName () const
 

Fonctions membres protégées

C3D_API PostEffect (castor::String const &name, castor::String const &fullName, RenderTarget &renderTarget, RenderSystem &renderSystem, Parameters const &parameters, uint32_t passesCount=1u, Kind kind=Kind::eHDR)
 Constructeur. Plus de détails...
 
C3D_API void doCopyResultToTarget (ashes::ImageView const &result, ashes::CommandBuffer &commandBuffer)
 

Attributs protégés

castor::String m_fullName
 
RenderTargetm_renderTarget
 
uint32_t m_passesCount { 1u }
 
uint32_t m_currentPass { 0u }
 
std::unique_ptr< RenderPassTimerm_timer
 
Kind m_kind { Kind::eHDR }
 
TextureLayout const * m_target { nullptr }
 
CommandsSemaphoreArray m_commands
 
TextureLayout const * m_result { nullptr }
 

Documentation des énumérations membres

◆ Kind

Valeurs énumérées
eHDR 
eSRGB 
eOverlay 

Documentation des constructeurs et destructeur

◆ PostEffect()

C3D_API castor3d::PostEffect::PostEffect ( castor::String const &  name,
castor::String const &  fullName,
RenderTarget renderTarget,
RenderSystem renderSystem,
Parameters const &  parameters,
uint32_t  passesCount = 1u,
Kind  kind = Kind::eHDR 
)
protected

Constructeur.

Paramètres
[in]nameLe nom de l'effet.
[in]fullNameLe nom complet (et joli) de l'effet.
[in]renderTargetLa cible de rendu sur laquelle cet effet s'applique.
[in]renderSystemLe render system.
[in]parametersLes paramètres optionnels.
[in]passesCountLe nombre de passes pour cet effet.
[in]kindLe type d'effet.

◆ ~PostEffect()

virtual C3D_API castor3d::PostEffect::~PostEffect ( )
virtual

Destructeur.

Documentation des fonctions membres

◆ accept()

virtual C3D_API void castor3d::PostEffect::accept ( PipelineVisitorBase visitor)
pure virtual

Fonction d'acceptation de visiteur.

Paramètres
visitorLe ... visiteur.

◆ cleanup()

C3D_API void castor3d::PostEffect::cleanup ( castor3d::RenderDevice const &  device)

Fonction de nettoyage.

Paramètres
[in]deviceLe device GPU.

◆ doCopyResultToTarget()

C3D_API void castor3d::PostEffect::doCopyResultToTarget ( ashes::ImageView const &  result,
ashes::CommandBuffer &  commandBuffer 
)
protected

◆ getCommands()

CommandsSemaphoreArray const& castor3d::PostEffect::getCommands ( ) const
inline

name Accesseurs.

Références m_commands.

◆ getFullName()

castor::String const& castor3d::PostEffect::getFullName ( ) const
inline

Références m_fullName.

◆ getResult()

TextureLayout const& castor3d::PostEffect::getResult ( ) const
inline

Références m_result.

◆ initialise()

C3D_API bool castor3d::PostEffect::initialise ( castor3d::RenderDevice const &  device,
TextureLayout const &  texture 
)

Fonction d'initialisation.

Paramètres
[in]deviceLe device GPU.
[in]textureLa texture cible.
Renvoie
true if ok.

◆ isAfterToneMapping()

bool castor3d::PostEffect::isAfterToneMapping ( ) const
inline

Références eSRGB, et m_kind.

◆ start()

C3D_API RenderPassTimerBlock castor3d::PostEffect::start ( )

Démarre le rendu de l'effet.

◆ update() [1/2]

virtual C3D_API void castor3d::PostEffect::update ( CpuUpdater updater)
virtual

Met à jour la passe de rendu, au niveau CPU.

Paramètres
[in,out]updaterLes données d'update.

◆ update() [2/2]

virtual C3D_API void castor3d::PostEffect::update ( GpuUpdater updater)
virtual

Met à jour la passe de rendu, au niveau GPU.

Paramètres
[in,out]updaterLes données d'update.

◆ writeInto()

C3D_API bool castor3d::PostEffect::writeInto ( castor::TextFile &  file,
castor::String const &  tabs 
)

Ecrit l'effet dans un fichier texte.

Paramètres
[in]fileLe fichier.
[in]tabsL'indentation actuelle.

Documentation des données membres

◆ m_commands

CommandsSemaphoreArray castor3d::PostEffect::m_commands
protected

Référencé par getCommands().

◆ m_currentPass

uint32_t castor3d::PostEffect::m_currentPass { 0u }
protected

◆ m_fullName

castor::String castor3d::PostEffect::m_fullName
protected

Référencé par getFullName().

◆ m_kind

Kind castor3d::PostEffect::m_kind { Kind::eHDR }
protected

Référencé par isAfterToneMapping().

◆ m_passesCount

uint32_t castor3d::PostEffect::m_passesCount { 1u }
protected

◆ m_renderTarget

RenderTarget& castor3d::PostEffect::m_renderTarget
protected

◆ m_result

TextureLayout const* castor3d::PostEffect::m_result { nullptr }
protected

Référencé par getResult().

◆ m_target

TextureLayout const* castor3d::PostEffect::m_target { nullptr }
protected

◆ m_timer

std::unique_ptr< RenderPassTimer > castor3d::PostEffect::m_timer
protected

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