Castor3D 0.16.0
Multiplatform 3D engine
|
#include <Skybox.hpp>
Fonctions membres publiques | |
C3D_API | SkyboxBackground (Engine &engine, Scene &scene, castor::String const &name=castor::String{}) |
Constructeur. | |
C3D_API void | accept (BackgroundVisitor &visitor) override |
Fonction d'acceptation de visiteur. | |
C3D_API void | accept (ConfigurationVisitorBase &visitor) override |
Fonction d'acceptation de visiteur. | |
C3D_API bool | write (castor::String const &tabs, castor::Path const &folder, castor::StringStream &stream) const override |
Ecrit le fond dans un flux texte. | |
C3D_API void | setLeftImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face gauche de la skybox. | |
C3D_API void | setRightImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face droite de la skybox. | |
C3D_API void | setTopImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face du haut de la skybox. | |
C3D_API void | setBottomImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face du bas de la skybox. | |
C3D_API void | setFrontImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face avant de la skybox. | |
C3D_API void | setBackImage (castor::Path const &folder, castor::Path const &relative) |
Définit la texture de la face arrière de la skybox. | |
C3D_API void | setFaceTexture (castor::Path const &folder, castor::Path const &relative, SkyboxFace face) |
Définit la texture d'une face de la skybox. | |
C3D_API void | setEquiTexture (castor::Path const &folder, castor::Path const &relative, uint32_t size) |
Définit la texture équirectangulaire de la skybox. | |
C3D_API void | setEquiSize (uint32_t size) |
Définit les dimensions de la skybox extraite depuis la texture équirectangulaire de la skybox. | |
C3D_API void | setCrossTexture (castor::Path const &folder, castor::Path const &relative) |
Définit la texture croix de la skybox. | |
castor::Path const & | getEquiTexturePath () const |
castor::Size const & | getEquiSize () const |
castor::Path const & | getCrossTexturePath () const |
castor::Array< castor::Path, 6u > const & | getLayerTexturePath () const |
Fonctions membres publiques hérités de castor3d::SceneBackground | |
C3D_API | SceneBackground (Engine &engine, Scene &scene, castor::String const &name, castor::String type, bool hasIBLSupport) |
Constructeur. | |
virtual C3D_API | ~SceneBackground () |
Destructeur. | |
C3D_API bool | initialise (RenderDevice const &device) |
Fonction d'initialisation. | |
C3D_API void | cleanup () |
Fonction de nettoyage. | |
C3D_API void | update (CpuUpdater &updater) const |
Met à jour le fond, niveau CPU. | |
C3D_API void | update (GpuUpdater &updater) const |
Met à jour le fond, niveau GPU. | |
C3D_API void | upload (UploadData &uploader) |
Upload les données d'image dans le buffer de la texture. | |
C3D_API void | notifyChanged () |
Notifie un changement affectant le GPU pour le fond. | |
virtual C3D_API crg::FramePass & | createBackgroundPass (crg::FramePassGroup &graph, RenderDevice const &device, ProgressBar *progress, VkExtent2D const &size, crg::ImageViewIdArray const &colour, crg::ImageViewIdArray const &depth, crg::ImageViewId const *depthObj, UniformBufferOffsetT< ModelBufferConfiguration > const &modelUbo, CameraUbo const &cameraUbo, HdrConfigUbo const &hdrConfigUbo, SceneUbo const &sceneUbo, bool clearColour, bool clearDepth, bool forceVisible, BackgroundPassBase *&backgroundPass) |
Crée la passe de rendu du fond. | |
C3D_API void | addPassBindings (crg::FramePass &pass, crg::ImageViewIdArray const &targetImage, uint32_t &index) const |
Ajoute les bindings spécifiques au fond à une passe de frame. | |
C3D_API void | addBindings (ashes::VkDescriptorSetLayoutBindingArray &bindings, VkShaderStageFlags shaderStages, uint32_t &index) const |
Ajoute les bindings spécifiques au fond. | |
C3D_API void | addDescriptors (ashes::WriteDescriptorSetArray &descriptorWrites, crg::ImageViewIdArray const &targetImage, uint32_t &index) const |
Ajoute les descripteurs spécifiques au fond. | |
virtual C3D_API castor::String const & | getModelName () const |
C3D_API BackgroundModelID | getModelID () const |
void | setVisible (bool v) noexcept |
virtual bool | isDepthSampled () const noexcept |
virtual bool | hasScattering () const noexcept |
Scene & | getScene () const noexcept |
castor::String const & | getType () const noexcept |
TextureLayout & | getTexture () const noexcept |
ashes::Image const & | getImage () const |
bool | isHdr () const noexcept |
bool | isSRGB () const noexcept |
bool | hasIbl () const noexcept |
bool | isInitialised () const noexcept |
bool | isVisible () const noexcept |
IblTextures const & | getIbl () const noexcept |
Sampler const & | getSampler () const noexcept |
uint32_t const & | getPassIndex (bool forceVisible) const noexcept |
Fonctions membres publiques hérités de castor::OwnedBy< Engine > | |
Engine * | getOwner () const |
L'objet propriétaire. | |
Fonctions membres publiques hérités de castor::NamedBaseT< T > | |
NamedBaseT (T name) noexcept | |
Constructeur. | |
T const & | getName () const noexcept |
Récupère le nom. | |
void | rename (T name) noexcept |
Membres hérités additionnels | |
Attributs publics hérités de castor3d::SceneBackground | |
OnBackgroundChanged | onChanged |
Attributs publics statiques hérités de castor3d::SceneBackground | |
static uint32_t constexpr | VisiblePassIndex = 0u |
static uint32_t constexpr | HiddenPassIndex = 1u |
Fonctions membres protégées hérités de castor::OwnedBy< Engine > | |
OwnedBy (Engine &owner) | |
Constructeur. | |
Fonctions membres protégées statiques hérités de castor3d::SceneBackground | |
static C3D_API castor::PxBufferBaseUPtr | adaptBuffer (castor::PxBufferBase const &buffer, castor::String const &name, bool generateMips) |
static C3D_API castor::ImageUPtr | loadImage (Engine &engine, castor::String const &name, castor::Path const &folder, castor::Path const &relative, bool generateMips) |
Attributs protégés hérités de castor3d::SceneBackground | |
Scene & | m_scene |
castor::String | m_type |
std::atomic_bool | m_initialised { false } |
bool | m_hdr { true } |
bool | m_srgb { false } |
Texture | m_textureId |
TextureLayoutUPtr | m_texture |
SamplerObs | m_sampler {} |
castor::RawUniquePtr< IblTextures > | m_ibl |
bool | m_hasIBLSupport |
bool | m_visible { true } |
uint32_t | m_passIndex { 0u } |
bool | m_needsUpload {} |
Attributs protégés hérités de castor::NamedBaseT< T > | |
T | m_name |
|
explicit |
Constructeur.
[in] | engine | Le moteur. |
[in] | scene | La scène parente. |
name | Le nom du fond. |
|
overridevirtual |
Fonction d'acceptation de visiteur.
visitor | Le visiteur. |
Implémente castor3d::SceneBackground.
|
overridevirtual |
Fonction d'acceptation de visiteur.
visitor | Le visiteur. |
Implémente castor3d::SceneBackground.
|
inline |
|
inline |
|
inline |
name Accesseurs.
|
inline |
C3D_API void castor3d::SkyboxBackground::setBackImage | ( | 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::setBottomImage | ( | 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::setCrossTexture | ( | 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::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 | ( | 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::setFaceTexture | ( | castor::Path const & | folder, |
castor::Path const & | relative, | ||
SkyboxFace | 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::setFrontImage | ( | 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::setLeftImage | ( | 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::setRightImage | ( | 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::setTopImage | ( | 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 . |
|
overridevirtual |
Ecrit le fond dans un flux texte.
tabs | L'indentation actuelle. |
folder | Le dossier de travail. |
stream | Le flux. |
Implémente castor3d::SceneBackground.