|
RavEngine
|
Classes | |
| struct | Manager |
Public Member Functions | |
| MeshAsset (const MeshAsset &)=delete | |
| MeshAsset (MeshAsset &&)=delete | |
| auto | GetAttributes () const |
| auto | GetRadius () const |
| auto | GetAllocation () const |
| MeshAsset (const std::string &path, const MeshAssetOptions &options=MeshAssetOptions()) | |
| MeshAsset (const Filesystem::Path &pathOnDisk, const MeshAssetOptions &options=MeshAssetOptions()) | |
| MeshAsset (const RavEngine::Vector< MeshPart > &rawMeshData, const MeshAssetOptions &options=MeshAssetOptions()) | |
| MeshAsset (const MeshPart &mesh, const MeshAssetOptions &options=MeshAssetOptions()) | |
| MeshAsset (const MeshPartView &mesh, const MeshAssetOptions &options=MeshAssetOptions()) | |
| constexpr const decltype(bounds) & | GetBounds () const |
| constexpr const decltype(totalVerts) | GetNumVerts () const |
| constexpr const decltype(totalIndices) | GetNumIndices () const |
| constexpr decltype(systemRAMcopy) & | GetSystemCopy () |
| bool | hasSystemRAMCopy () const |
| void | DeallocSystemCopy () |
Protected Member Functions | |
| void | InitializeFromMeshPartFragments (const RavEngine::Vector< MeshPart > &mp, const MeshAssetOptions &options=MeshAssetOptions()) |
| void | InitializeFromRawMesh (const MeshPart &mp, const MeshAssetOptions &options=MeshAssetOptions()) |
| void | InitializeFromRawMeshView (const MeshPartView &mp, const MeshAssetOptions &options=MeshAssetOptions()) |
| MeshPart | DeserializeMesh (const std::istream &stream) |
| std::pair< MeshPart, uint32_t > | DeserializeMeshFromMemory (const std::span< uint8_t > mem) |
Protected Attributes | |
| size_t | totalVerts = 0 |
| size_t | totalIndices = 0 |
| Bounds | bounds |
| float | radius = 0 |
| MeshAttributes | attributes |
| MeshRange | meshAllocation |
| MeshPart | systemRAMcopy |
Friends | |
| class | RenderEngine |
| RavEngine::MeshAsset::MeshAsset | ( | const std::string & | path, |
| const MeshAssetOptions & | options = MeshAssetOptions() |
||
| ) |
Create a MeshAsset
| path | the path to the asset in the embedded filesystem |
| scale | the scale factor when loading |
| keepCopyInSystemMemory | maintain a copy of the mesh data in system RAM, for use in features that need it like mesh colliders |
|
inline |
Create a MeshAsset from multiple vertex and index lists
| rawMeshData | the index and triangle data |
| keepCopyInSystemMemory | maintain a copy of the mesh data in system RAM, for use in features that need it like mesh colliders |
|
inline |
Create a MeshAsset from a single vertex and index list
| mesh | the index and triangle data |
|
inline |
In case the system memory copy is no longer needed, destroy it. This is not undoable.
|
protected |
Initialize from multiple meshs consisting of a single vertex and index list
| mp | the meshes to initialize from |
|
protected |
Initialize from a complete mesh consisting of a single vertex and index list
| mp | the mesh to initialize from |