StevEngine
StevEngine is a customizable C++ game engine.
Loading...
Searching...
No Matches
StevEngine::Physics::ModelCollider Class Reference

Mesh-based collider. More...

#include <physics/Colliders.hpp>

Inheritance diagram for StevEngine::Physics::ModelCollider:
StevEngine::Physics::Collider StevEngine::Component

Public Member Functions

 ModelCollider (const Utilities::Model &model, bool convex=true, Utilities::Vector3 position=Utilities::Vector3(), Utilities::Quaternion rotation=Utilities::Quaternion(), Utilities::Vector3 scale=Utilities::Vector3(1, 1, 1))
 Create mesh collider.
 
- Public Member Functions inherited from StevEngine::Physics::Collider
 Collider (JPH::Ref< JPH::Shape > shape, Utilities::Vector3 position=Utilities::Vector3(), Utilities::Quaternion rotation=Utilities::Quaternion(), Utilities::Vector3 scale=Utilities::Vector3(1, 1, 1))
 Create new collider.
 
 Collider (Utilities::Stream &stream)
 Create collider from text serialized data.
 
std::string GetType () const
 Get component type.
 
Utilities::Stream Export (Utilities::StreamType type) const
 Serialize component to a stream.
 
Utilities::Vector3 GetScale () const
 Get local scale.
 
Utilities::Quaternion GetRotation () const
 Get local rotation.
 
Utilities::Vector3 GetPosition () const
 Get local position.
 
void SetScale (Utilities::Vector3 scale)
 Set local scale.
 
void SetRotation (Utilities::Quaternion rotation)
 Set local rotation.
 
void SetPosition (Utilities::Vector3 position)
 Set local position.
 
void SetTransform (Utilities::Vector3 position, Utilities::Quaternion rotation, Utilities::Vector3 scale)
 Set full local transform.
 
Utilities::Range3 GetBounds () const
 Get axis-aligned bounds.
 
Utilities::Vector3 GetCenterOfMass () const
 Get center of mass.
 
JPH::Ref< JPH::Shape > GetShape () const
 Get physics shape.
 
- Public Member Functions inherited from StevEngine::Component
 Component ()
 Create new component.
 
virtual ~Component ()
 Clean up component resources.
 
GameObjectGetParent () const
 Get parent GameObject.
 
SceneGetScene () const
 Get containing Scene.
 

Additional Inherited Members

- Protected Attributes inherited from StevEngine::Physics::Collider
Utilities::Vector3 scale = Utilities::Vector3(1, 1, 1)
 Local scale.
 
Utilities::Vector3 position = Utilities::Vector3()
 Local position.
 
Utilities::Quaternion rotation = Utilities::Quaternion()
 Local rotation.
 
const JPH::Ref< JPH::Shape > rawShape
 Base physics shape.
 
JPH::Ref< JPH::Shape > shape
 Transformed shape.
 
- Protected Attributes inherited from StevEngine::Component
std::vector< std::pair< Utilities::ID, std::string > > handlers
 Event handler registrations.
 

Detailed Description

Mesh-based collider.

Creates collision shape from 3D mesh data. Can create either convex hull or concave mesh collider.

Constructor & Destructor Documentation

◆ ModelCollider()

StevEngine::Physics::ModelCollider::ModelCollider ( const Utilities::Model & model,
bool convex = true,
Utilities::Vector3 position = Utilities::Vector3(),
Utilities::Quaternion rotation = Utilities::Quaternion(),
Utilities::Vector3 scale = Utilities::Vector3(1,1,1) )

Create mesh collider.

Parameters
modelModel to generate collision from
convexWhether to create convex hull
positionLocal position
rotationLocal rotation
scaleLocal scale

The documentation for this class was generated from the following files: