Castor3D
0.11.0
Multiplatform 3D engine
|
Cache de AnimatedObjectGroup. Plus de détails...
Classes | |
struct | MeshPoolsEntry |
struct | SkeletonPoolsEntry |
Fonctions membres publiques | |
C3D_API | Cache (Engine &engine, Producer &&produce, Initialiser &&initialise=Initialiser{}, Cleaner &&clean=Cleaner{}, Merger &&merge=Merger{}) |
Constructeur. Plus de détails... | |
C3D_API | ~Cache () |
Destructeur. 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 | uploadUbos (ashes::CommandBuffer const &commandBuffer) |
Met à jour les pools d'UBO en VRAM. Plus de détails... | |
C3D_API void | cleanupUbos () |
Nettoie les pools d'UBO. Plus de détails... | |
C3D_API MeshPoolsEntry | getUbos (AnimatedMesh const &mesh) const |
L'entrée relative à l'AnimatedMesh donné. Plus de détails... | |
C3D_API SkeletonPoolsEntry | getUbos (AnimatedSkeleton const &skeleton) const |
L'entrée relative à l'AnimatedSkeleton donné. Plus de détails... | |
C3D_API void | clear (RenderDevice const &device) |
Vide la collection. Plus de détails... | |
C3D_API void | add (ElementPtr element) |
Ajoute un objet. Plus de détails... | |
C3D_API ElementPtr | add (Key const &name) |
Crée un objet. Plus de détails... | |
C3D_API void | remove (Key const &name) |
Retire un objet à partir d'un nom. Plus de détails... | |
Fonctions membres publiques hérités de castor3d::CacheBase< AnimatedObjectGroup, castor::String > | |
CacheBase (Engine &engine, Producer &&produce, Initialiser &&initialise, Cleaner &&clean, Merger &&merge) | |
Constructeur. Plus de détails... | |
~CacheBase () | |
Destructeur. Plus de détails... | |
void | cleanup () |
Met tous les éléments à nettoyer. Plus de détails... | |
void | clear () |
Vide la collection. Plus de détails... | |
bool | isEmpty () const |
ElementPtr | create (Key const &name, Parameters &&... parameters) |
Crée un élément. Plus de détails... | |
ElementPtr | add (Key const &name, ElementPtr element) |
Retire un élément à partir d'un nom. Plus de détails... | |
ElementPtr | add (Key const &name, Parameters &&... parameters) |
Crée un élément. Plus de détails... | |
void | remove (Key const &name) |
Retire un élément à partir d'un nom. Plus de détails... | |
void | mergeInto (MyCacheType &destination) |
void | forEach (FuncType func) const |
Applique une fonction à tous les éléments de ce cache. Plus de détails... | |
void | forEach (FuncType func) |
Applique une fonction à tous les éléments de ce cache. Plus de détails... | |
uint32_t | getObjectCount () const |
Engine * | getEngine () const |
castor::String const & | getObjectTypeName () const |
bool | has (Key const &name) const |
ElementPtr | find (Key const &name) const |
Cherche un élément par son nom. Plus de détails... | |
void | lock () const |
Locke le mutex de la collection. Plus de détails... | |
void | unlock () const |
Délocke le mutex de la collection. Plus de détails... | |
auto | begin () |
auto | begin () const |
auto | end () |
auto | end () const |
Membres hérités additionnels | |
Fonctions membres protégées hérités de castor3d::CacheBase< AnimatedObjectGroup, castor::String > | |
void | doReportCreation (castor::String const &name) |
void | doReportDuplicate (castor::String const &name) |
void | doReportNull () |
Attributs protégés hérités de castor3d::CacheBase< AnimatedObjectGroup, castor::String > | |
Engine & | m_engine |
Collection | m_elements |
Producer | m_produce |
Initialiser | m_initialise |
Cleaner | m_clean |
Merger | m_merge |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Cleaner = typename MyCacheType::Cleaner |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Collection = typename MyCacheType::Collection |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Element = typename MyCacheType::Element |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::ElementPtr = typename MyCacheType::ElementPtr |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Initialiser = typename MyCacheType::Initialiser |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Key = typename MyCacheType::Key |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::LockType = typename MyCacheType::LockType |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Merger = typename MyCacheType::Merger |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::MyCache = CacheBase< AnimatedObjectGroup, castor::String > |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::MyCacheTraits = typename MyCacheType::MyCacheTraits |
using castor3d::Cache< AnimatedObjectGroup, castor::String >::Producer = typename MyCacheType::Producer |
C3D_API castor3d::Cache< AnimatedObjectGroup, castor::String >::Cache | ( | Engine & | engine, |
Producer && | produce, | ||
Initialiser && | initialise = Initialiser{} , |
||
Cleaner && | clean = Cleaner{} , |
||
Merger && | merge = Merger{} |
||
) |
Constructeur.
[in] | engine | Le moteur. |
[in] | produce | Le créateur d'objet. |
[in] | initialise | L'initialiseur d'objet. |
[in] | clean | Le nettoyeur d'objet. |
[in] | merge | Le fusionneur de collection d'objets. |
C3D_API castor3d::Cache< AnimatedObjectGroup, castor::String >::~Cache | ( | ) |
Destructeur.
C3D_API void castor3d::Cache< AnimatedObjectGroup, castor::String >::add | ( | ElementPtr | element | ) |
Ajoute un objet.
[in] | element | L'objet. |
C3D_API ElementPtr castor3d::Cache< AnimatedObjectGroup, castor::String >::add | ( | Key const & | name | ) |
Crée un objet.
[in] | name | Le nom d'objet. |
C3D_API void castor3d::Cache< AnimatedObjectGroup, castor::String >::cleanupUbos | ( | ) |
Nettoie les pools d'UBO.
C3D_API void castor3d::Cache< AnimatedObjectGroup, castor::String >::clear | ( | RenderDevice const & | device | ) |
Vide la collection.
[in] | device | Le device GPU. |
C3D_API MeshPoolsEntry castor3d::Cache< AnimatedObjectGroup, castor::String >::getUbos | ( | AnimatedMesh const & | mesh | ) | const |
L'entrée relative à l'AnimatedMesh donné.
[in] | mesh | Le mesh. |
C3D_API SkeletonPoolsEntry castor3d::Cache< AnimatedObjectGroup, castor::String >::getUbos | ( | AnimatedSkeleton const & | skeleton | ) | const |
L'entrée relative à l'AnimatedSkeleton donné.
[in] | skeleton | Le squelette. |
C3D_API void castor3d::Cache< AnimatedObjectGroup, castor::String >::remove | ( | Key const & | name | ) |
Retire un objet à partir d'un nom.
[in] | name | Le nom d'objet. |
C3D_API void castor3d::Cache< AnimatedObjectGroup, castor::String >::update | ( | CpuUpdater & | updater | ) |
Met à jour la passe de rendu, au niveau CPU.
[in,out] | updater | Les données d'update. |
C3D_API void castor3d::Cache< AnimatedObjectGroup, castor::String >::uploadUbos | ( | ashes::CommandBuffer const & | commandBuffer | ) |
Met à jour les pools d'UBO en VRAM.
[in] | commandBuffer | Le command buffer sur lequel les commandes de transfert sont enregistrées. |