Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
CharacterKinematicControllerComponent.hpp
1#pragma once
2
3#include <Jolt/Jolt.h>
4#include <Jolt/Physics/Collision/Shape/Shape.h>
5
6#include <Common/Memory/SmartPointers/UniquePtr.hpp>
7#include <Common/Math.hpp>
8#include <EngineCore/ECS/Entity.hpp>
9#include <EngineCore/Reflection/ComponentReflection.hpp>
10#include <EngineCore/CoreComponents/Transform/TransformComponent.hpp>
11
12namespace Grindstone {
13 class WorldContextSet;
14}
15
16namespace JPH {
17 class CharacterVirtual;
18}
19
20namespace Grindstone::Physics {
21 struct ColliderComponent;
22
23 void SetupCharacterKinematicControllerComponent(Grindstone::WorldContextSet&, entt::entity);
24
26 CharacterKinematicControllerComponent Clone(Grindstone::WorldContextSet& cxt, entt::entity newEntityId) const;
27 void SetVelocity(Math::Float3 velocity) const;
28
29 JPH::Ref<JPH::CharacterVirtual> character = nullptr;
30
31 REFLECT("CharacterKinematicController")
32 };
33
34 void SetupCharacterKinematicControllerComponentWithCollider(
36 CharacterKinematicControllerComponent* characterControllerComponent,
37 TransformComponent* transformComponent,
38 ColliderComponent* colliderComponent
39 );
40}
Definition WorldContextSet.hpp:11
Definition PhysicsLayer.hpp:6
Definition ArchiveContentFile.hpp:8
Definition CharacterKinematicControllerComponent.hpp:16
Definition FloatVectors.cs:119
Definition CharacterKinematicControllerComponent.hpp:25
Definition ColliderComponent.hpp:14
Definition TransformComponent.hpp:12