|
Vulkan Schnee 0.0.1
High-performance rendering engine
|
Stores collision shape properties imported from Blender. More...
#include <GltfLoader.h>
Classes | |
| struct | CompoundChild |
Public Types | |
| enum class | ShapeType { NONE , BOX , SPHERE , CAPSULE , CONVEX_HULL , TRIANGLE_MESH , COMPOUND } |
Public Member Functions | |
| CollisionProperties ()=default | |
| CollisionProperties (const tinygltf::Value &extension, const tinygltf::Model *model=nullptr) | |
| bool | hasCollision () const |
Public Attributes | |
| ShapeType | shapeType = ShapeType::NONE |
| bool | generateConvexHull = false |
| bool | isTrigger = false |
| glm::vec3 | offset { 0.0f } |
| glm::vec3 | boxHalfExtents { 0.5f } |
| float | sphereRadius = 0.5f |
| float | capsuleRadius = 0.5f |
| float | capsuleHeight = 1.0f |
| std::vector< glm::vec3 > | vertices |
| std::vector< uint32_t > | indices |
| std::vector< CompoundChild > | compoundChildren |
Static Private Member Functions | |
| static ShapeType | parseShapeType (const std::string &typeStr) |
Stores collision shape properties imported from Blender.
Supports primitive shapes (box, sphere, capsule), convex hulls, triangle meshes, and compound shapes from VSC_ prefixed meshes.
Definition at line 300 of file GltfLoader.h.
|
strong |
| Enumerator | |
|---|---|
| NONE | |
| BOX | |
| SPHERE | |
| CAPSULE | |
| CONVEX_HULL | |
| TRIANGLE_MESH | |
| COMPOUND | |
Definition at line 302 of file GltfLoader.h.
|
default |
|
explicit |
|
inlinenodiscard |
Definition at line 347 of file GltfLoader.h.
|
staticprivate |
| glm::vec3 Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::boxHalfExtents { 0.5f } |
Definition at line 325 of file GltfLoader.h.
| float Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::capsuleHeight = 1.0f |
Definition at line 328 of file GltfLoader.h.
| float Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::capsuleRadius = 0.5f |
Definition at line 327 of file GltfLoader.h.
| std::vector<CompoundChild> Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::compoundChildren |
Definition at line 345 of file GltfLoader.h.
| bool Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::generateConvexHull = false |
Definition at line 320 of file GltfLoader.h.
| std::vector<uint32_t> Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::indices |
Definition at line 332 of file GltfLoader.h.
| bool Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::isTrigger = false |
Definition at line 321 of file GltfLoader.h.
| glm::vec3 Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::offset { 0.0f } |
Definition at line 322 of file GltfLoader.h.
| ShapeType Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::shapeType = ShapeType::NONE |
Definition at line 319 of file GltfLoader.h.
Referenced by hasCollision().
| float Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::sphereRadius = 0.5f |
Definition at line 326 of file GltfLoader.h.
| std::vector<glm::vec3> Engine::Assets::Loaders::GltfLoader::VulkanSchneeExtension::CollisionProperties::vertices |
Definition at line 331 of file GltfLoader.h.