Castor3D
0.11.0
Multiplatform 3D engine
|
Fonctions membres publiques | |
C3D_API | SkyboxBackground (Engine &engine, Scene &scene, castor::String const &name=castor::String{}) |
Constructeur. Plus de détails... | |
virtual C3D_API | ~SkyboxBackground () |
Destructeur. Plus de détails... | |
C3D_API void | loadLeftImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face gauche de la skybox. Plus de détails... | |
C3D_API void | loadRightImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face droite de la skybox. Plus de détails... | |
C3D_API void | loadTopImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face du haut de la skybox. Plus de détails... | |
C3D_API void | loadBottomImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face du bas de la skybox. Plus de détails... | |
C3D_API void | loadFrontImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face avant de la skybox. Plus de détails... | |
C3D_API void | loadBackImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face arrière de la skybox. Plus de détails... | |
C3D_API void | loadFaceImage (castor::Path const &folder, castor::Path const &relative, CubeMapFace face) |
Définit la texture d'une face de la skybox. Plus de détails... | |
C3D_API void | setEquiTexture (TextureLayoutSPtr texture, uint32_t size) |
Définit la texture équirectangulaire de la skybox. Plus de détails... | |
C3D_API void | loadEquiTexture (castor::Path const &folder, castor::Path const &relative, uint32_t size) |
Définit la texture équirectangulaire de la skybox. Plus de détails... | |
C3D_API void | setEquiSize (uint32_t size) |
Définit les dimensions de la skybox extraite depuis la texture équirectangulaire de la skybox. Plus de détails... | |
C3D_API void | loadCrossTexture (castor::Path const &folder, castor::Path const &relative) |
Définit la texture croix de la skybox. Plus de détails... | |
C3D_API void | setCrossTexture (TextureLayoutSPtr texture) |
Définit la texture croix de la skybox. Plus de détails... | |
C3D_API void | accept (BackgroundVisitor &visitor) override |
Fonction d'acceptation de visiteur. Plus de détails... | |
castor::Path const & | getEquiTexturePath () const |
castor::Size const & | getEquiSize () const |
castor::Path const & | getCrossTexturePath () const |
void | setTexture (TextureLayoutSPtr texture) |
Fonctions membres publiques hérités de castor3d::SceneBackground | |
C3D_API | SceneBackground (Engine &engine, Scene &scene, castor::String const &name, BackgroundType type) |
Constructeur. Plus de détails... | |
virtual C3D_API | ~SceneBackground () |
Destructeur. Plus de détails... | |
C3D_API bool | initialise (RenderDevice const &device, ashes::RenderPass const &renderPass, HdrConfigUbo const &hdrConfigUbo) |
Fonction d'initialisation. Plus de détails... | |
C3D_API void | cleanup (RenderDevice const &device) |
Fonction de nettoyage. Plus de détails... | |
C3D_API void | update (CpuUpdater &updater) |
Met à jour le fond, niveau CPU. Plus de détails... | |
C3D_API void | update (GpuUpdater &updater) |
Met à jour le fond, niveau GPU. Plus de détails... | |
C3D_API bool | prepareFrame (ashes::CommandBuffer &commandBuffer, castor::Size const &size, ashes::RenderPass const &renderPass, ashes::FrameBuffer const &frameBuffer) |
Enregistre les commandes utilisées pour dessiner le fond. Plus de détails... | |
C3D_API bool | prepareFrame (ashes::CommandBuffer &commandBuffer, castor::Size const &size, ashes::RenderPass const &renderPass) |
Enregistre les commandes utilisées pour dessiner le fond. Plus de détails... | |
C3D_API bool | prepareFrame (ashes::CommandBuffer &commandBuffer, castor::Size const &size, ashes::RenderPass const &renderPass, ashes::DescriptorSet const &uboDescriptorSet, ashes::DescriptorSet const &texDescriptorSet) const |
Enregistre les commandes utilisées pour dessiner le fond. Plus de détails... | |
virtual C3D_API void | initialiseDescriptorSets (MatrixUbo &matrixUbo, ModelMatrixUbo const &modelMatrixUbo, HdrConfigUbo const &hdrConfigUbo, ashes::DescriptorSet &uboDescriptorSet, ashes::DescriptorSet &texDescriptorSet) const |
Initialise l'ensemble de descripteurs. Plus de détails... | |
C3D_API RenderPassTimerBlock | start () |
Démarre le timer CPU, réinitialise le temps GPU. Plus de détails... | |
C3D_API void | notifyChanged () |
Notifie un changement affectant le GPU pour le fond. Plus de détails... | |
ashes::Semaphore const & | getSemaphore () const |
Scene const & | getScene () const |
Scene & | getScene () |
BackgroundType | getType () const |
TextureLayout const & | getTexture () const |
TextureLayout & | getTexture () |
ashes::Image const & | getImage () const |
ashes::ImageView const & | getView () const |
bool | hasIbl () const |
IblTextures const & | getIbl () const |
ashes::PipelineLayout const & | getPipelineLayout () const |
ashes::GraphicsPipeline const & | getPipeline () const |
ashes::DescriptorSetLayout const & | getUboDescriptorLayout () const |
ashes::DescriptorSetLayout const & | getTexDescriptorLayout () const |
ashes::VertexBuffer< Cube > const & | getVertexBuffer () const |
ashes::Buffer< uint16_t > const & | getIndexBuffer () const |
Membres hérités additionnels | |
Attributs publics hérités de castor3d::SceneBackground | |
OnBackgroundChanged | onChanged |
Attributs protégés hérités de castor3d::SceneBackground | |
Scene & | m_scene |
BackgroundType | m_type |
std::atomic_bool | m_initialised { false } |
bool | m_hdr { true } |
MatrixUbo | m_matrixUbo |
ModelMatrixUbo | m_modelMatrixUbo |
castor::Matrix4x4f | m_mtxModel |
ashes::SemaphorePtr | m_semaphore |
ashes::DescriptorSetLayoutPtr | m_uboDescriptorLayout |
ashes::DescriptorSetPoolPtr | m_uboDescriptorPool |
ashes::DescriptorSetPtr | m_uboDescriptorSet |
ashes::DescriptorSetLayoutPtr | m_texDescriptorLayout |
ashes::DescriptorSetPoolPtr | m_texDescriptorPool |
ashes::DescriptorSetPtr | m_texDescriptorSet |
ashes::PipelineLayoutPtr | m_pipelineLayout |
ashes::GraphicsPipelinePtr | m_pipeline |
ashes::VertexBufferPtr< Cube > | m_vertexBuffer |
ashes::BufferPtr< uint16_t > | m_indexBuffer |
RenderPassTimerSPtr | m_timer |
TextureLayoutSPtr | m_texture |
SamplerWPtr | m_sampler |
std::unique_ptr< IblTextures > | m_ibl |
Attributs protégés statiques hérités de castor3d::SceneBackground | |
static C3D_API uint32_t constexpr | UboSetIdx = 0u |
static C3D_API uint32_t constexpr | MtxUboIdx = 0u |
static C3D_API uint32_t constexpr | MdlMtxUboIdx = 1u |
static C3D_API uint32_t constexpr | HdrCfgUboIdx = 2u |
static C3D_API uint32_t constexpr | TexSetIdx = 1u |
static C3D_API uint32_t constexpr | SkyBoxImgIdx = 0u |
|
explicit |
Constructeur.
[in] | engine | Le moteur. |
[in] | scene | La scène parente. |
name | Le nom du fond. |
|
virtual |
Destructeur.
|
overridevirtual |
Fonction d'acceptation de visiteur.
visitor | Le visiteur. |
Implémente castor3d::SceneBackground.
|
inline |
|
inline |
|
inline |
name Accesseurs.
C3D_API void castor3d::SkyboxBackground::loadBackImage | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture de la face arrière de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::loadBottomImage | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture de la face du bas de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::loadCrossTexture | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture croix de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::loadEquiTexture | ( | castor::Path const & | folder, |
castor::Path const & | relative, | ||
uint32_t | size | ||
) |
Définit la texture équirectangulaire de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
[in] | size | Les dimensions voulues pour la skybox. |
C3D_API void castor3d::SkyboxBackground::loadFaceImage | ( | castor::Path const & | folder, |
castor::Path const & | relative, | ||
CubeMapFace | face | ||
) |
Définit la texture d'une face de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
[in] | face | La face dans laquelle l'image sera chargée. |
C3D_API void castor3d::SkyboxBackground::loadFrontImage | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture de la face avant de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::loadLeftImage | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture de la face gauche de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::loadRightImage | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture de la face droite de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::loadTopImage | ( | castor::Path const & | folder, |
castor::Path const & | relative | ||
) |
Définit la texture de la face du haut de la skybox.
[in] | folder | Le dossier de l'image. |
[in] | relative | Le chemin d'accès à l'image, relatif à folder . |
C3D_API void castor3d::SkyboxBackground::setCrossTexture | ( | TextureLayoutSPtr | texture | ) |
Définit la texture croix de la skybox.
[in] | texture | La texture. |
C3D_API void castor3d::SkyboxBackground::setEquiSize | ( | uint32_t | size | ) |
Définit les dimensions de la skybox extraite depuis la texture équirectangulaire de la skybox.
[in] | size | Les dimensions voulues pour la skybox. |
C3D_API void castor3d::SkyboxBackground::setEquiTexture | ( | TextureLayoutSPtr | texture, |
uint32_t | size | ||
) |
Définit la texture équirectangulaire de la skybox.
[in] | texture | La texture. |
[in] | size | Les dimensions voulues pour la skybox. |
|
inline |
name Mutateurs.
Références castor3d::SceneBackground::m_texture.