Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
RigidBodyComponent.cpp
Go to the documentation of this file.
1
2
4
8
9namespace Divide {
11 : Parent(parentSGN, context),
12 _physicsCollisionGroup(PhysicsGroup::GROUP_STATIC)
13 {
14 }
15
17 {
18 }
19
21 if (_physicsCollisionGroup != group) {
22 _physicsCollisionGroup = group;
23 if (_rigidBody != nullptr) {
24 _rigidBody->physicsCollisionGroup(group);
25 }
26 }
27 }
28
29 bool RigidBodyComponent::filterCollision([[maybe_unused]] const RigidBodyComponent& collider) {
30 // filter by mask, type, etc
31 return true;
32 }
33
35 //handle collision
36 if (_collisionCbk) {
37 if (filterCollision(collider)) {
38 assert(parentSGN()->getGUID() != collider.parentSGN()->getGUID());
39 _collisionCbk(collider);
40 }
41 }
42 }
43
44} //namespace Divide
DELEGATE< void, const RigidBodyComponent & > _collisionCbk
bool filterCollision(const RigidBodyComponent &collider)
BaseComponentType< RigidBodyComponent, ComponentType::RIGID_BODY > Parent
RigidBodyComponent(SceneGraphNode *parentSGN, PlatformContext &context)
void physicsCollisionGroup(PhysicsGroup group)
void onCollision(const RigidBodyComponent &collider)
Handle console commands that start with a forward slash.
Definition: AIProcessor.cpp:7