Castor3D 0.14.0
Multiplatform 3D engine
|
#include <RenderTechnique.hpp>
Types publics | |
using | ShadowMapArray = std::vector< ShadowMapUPtr > |
Fonctions membres publiques | |
C3D_API | RenderTechnique (castor::String const &name, RenderTarget &renderTarget, RenderDevice const &device, QueueData const &queueData, Parameters const ¶meters, SsaoConfig const &ssaoConfig, ProgressBar *progress, bool deferred, bool visbuffer, bool weightedBlended) |
Constructeur. Plus de détails... | |
C3D_API | ~RenderTechnique () |
Destructeur. Plus de détails... | |
C3D_API void | listIntermediates (std::vector< IntermediateView > &intermediates) |
Liste les vues intermédiaires utilisées par toute la technique. Plus de détails... | |
C3D_API void | update (CpuUpdater &updater) |
Met à jour la passe de rendu, au niveau CPU. Plus de détails... | |
C3D_API void | update (GpuUpdater &updater) |
Met à jour la passe de rendu, au niveau GPU. Plus de détails... | |
C3D_API crg::SemaphoreWaitArray | preRender (crg::SemaphoreWaitArray const &toWait, ashes::Queue const &queue) |
Dessine les textures nécessaires au rendu. Plus de détails... | |
C3D_API bool | writeInto (castor::TextFile &file) |
Ecrit la technique dans un fichier texte. Plus de détails... | |
C3D_API void | accept (RenderTechniqueVisitor &visitor) |
Fonction d'acceptation de visiteur. Plus de détails... | |
C3D_API crg::FramePass const & | getLastPass () const |
C3D_API SsaoConfig const & | getSsaoConfig () const |
C3D_API SsaoConfig & | getSsaoConfig () |
C3D_API Texture const & | getSsaoResult () const |
C3D_API Texture const & | getFirstVctBounce () const |
C3D_API Texture const & | getSecondaryVctBounce () const |
C3D_API crg::ImageViewId const & | getLightDepthImgView () const |
C3D_API TechniquePassVector | getCustomRenderPasses () const |
C3D_API Texture const & | getDiffuseLightingResult () const |
C3D_API Texture const & | getBaseColourResult () const |
castor::Size const & | getSize () const |
Texture const & | getResult () const |
Texture const & | getNormal () const |
Texture const & | getDepth () const |
Texture const & | getDepthObj () const |
ashes::Buffer< int32_t > const & | getDepthRange () const |
void | setNeedsDepthRange (bool v) |
ShadowMapResult const & | getDirectionalShadowPassResult () const |
ShadowMapResult const & | getPointShadowPassResult () const |
ShadowMapResult const & | getSpotShadowPassResult () const |
LightVolumePassResult const & | getLpvResult () const |
LightVolumePassResultArray const & | getLlpvResult () const |
MatrixUbo const & | getMatrixUbo () const |
MatrixUbo & | getMatrixUbo () |
SceneUbo const & | getSceneUbo () const |
SceneUbo & | getSceneUbo () |
GpInfoUbo const & | getGpInfoUbo () const |
LpvGridConfigUbo const & | getLpvConfigUbo () const |
LayeredLpvGridConfigUbo const & | getLlpvConfigUbo () const |
VoxelizerUbo const & | getVctConfigUbo () const |
ShadowMapLightTypeArray const & | getShadowMaps () const |
RenderTarget const & | getRenderTarget () const |
RenderTarget & | getRenderTarget () |
bool | isMultisampling () const |
ashes::Buffer< uint32_t > const & | getMaterialsCounts () const |
ashes::Buffer< uint32_t > const & | getMaterialsStarts () const |
ashes::Buffer< castor::Point2ui > const & | getPixelXY () const |
bool | hasVisibility () const |
OpaquePassResult const & | getOpaqueResult () const |
Texture const & | getVisibilityResult () const |
Fonctions membres publiques statiques | |
static C3D_API uint32_t | countInitialisationSteps () |
Amis | |
class | RenderTechniquePass |
using castor3d::RenderTechnique::ShadowMapArray = std::vector< ShadowMapUPtr > |
C3D_API castor3d::RenderTechnique::RenderTechnique | ( | castor::String const & | name, |
RenderTarget & | renderTarget, | ||
RenderDevice const & | device, | ||
QueueData const & | queueData, | ||
Parameters const & | parameters, | ||
SsaoConfig const & | ssaoConfig, | ||
ProgressBar * | progress, | ||
bool | deferred, | ||
bool | visbuffer, | ||
bool | weightedBlended | ||
) |
Constructeur.
[in] | name | Le nom de la technique. |
[in] | renderTarget | La render target pour cette technique. |
[in] | device | Le device GPU. |
[in] | queueData | La queue recevant les commandes GPU. |
[in] | parameters | Les paramètres de la technique. |
[in] | ssaoConfig | La configuration du SSAO. |
[in] | progress | La barre de progression optionnelle. |
[in] | deferred | true pour activer le deferred rendering. |
[in] | visbuffer | true pour activer le visibility buffer. |
[in] | weightedBlended | true pour activer le weighed blended rendering. |
C3D_API castor3d::RenderTechnique::~RenderTechnique | ( | ) |
Destructeur.
C3D_API void castor3d::RenderTechnique::accept | ( | RenderTechniqueVisitor & | visitor | ) |
Fonction d'acceptation de visiteur.
visitor | Le ... visiteur. |
|
static |
C3D_API TechniquePassVector castor3d::RenderTechnique::getCustomRenderPasses | ( | ) | const |
|
inline |
|
inline |
|
inline |
Références castor3d::PrepassRendering::getDepthRange().
|
inline |
|
inline |
C3D_API crg::FramePass const & castor3d::RenderTechnique::getLastPass | ( | ) | const |
name Accesseurs.
C3D_API crg::ImageViewId const & castor3d::RenderTechnique::getLightDepthImgView | ( | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Références castor3d::OpaqueRendering::getMaterialsCounts().
|
inline |
Références castor3d::OpaqueRendering::getMaterialsStarts().
|
inline |
|
inline |
|
inline |
|
inline |
Références castor3d::OpaqueRendering::getOpaqueResult().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
C3D_API SsaoConfig & castor3d::RenderTechnique::getSsaoConfig | ( | ) |
C3D_API SsaoConfig const & castor3d::RenderTechnique::getSsaoConfig | ( | ) | const |
|
inline |
|
inline |
Références castor3d::PrepassRendering::getVisibility().
|
inline |
Références castor3d::PrepassRendering::hasVisibility().
|
inline |
C3D_API void castor3d::RenderTechnique::listIntermediates | ( | std::vector< IntermediateView > & | intermediates | ) |
Liste les vues intermédiaires utilisées par toute la technique.
[out] | intermediates | Reçoit les vues intermédiaires. |
C3D_API crg::SemaphoreWaitArray castor3d::RenderTechnique::preRender | ( | crg::SemaphoreWaitArray const & | toWait, |
ashes::Queue const & | queue | ||
) |
Dessine les textures nécessaires au rendu.
[in] | toWait | Les sémaphores à attendre. |
[in] | queue | The queue recevant les commandes de dessin. |
|
inline |
Références castor3d::PrepassRendering::setNeedsDepthRange().
C3D_API void castor3d::RenderTechnique::update | ( | CpuUpdater & | updater | ) |
Met à jour la passe de rendu, au niveau CPU.
[in,out] | updater | Les données d'update. |
C3D_API void castor3d::RenderTechnique::update | ( | GpuUpdater & | updater | ) |
Met à jour la passe de rendu, au niveau GPU.
[in,out] | updater | Les données d'update. |
C3D_API bool castor3d::RenderTechnique::writeInto | ( | castor::TextFile & | file | ) |
Ecrit la technique dans un fichier texte.
[in] | file | Le fichier. |
|
friend |