summaryrefslogtreecommitdiff
path: root/Runtime/Misc/MessageParameters.h
blob: 97a466907db2000c29606f60ad483ed3fbde47fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#pragma once

#include "Runtime/Math/Vector3.h"
#include <list>

class Collider;
class Rigidbody;
struct MonoObject;

struct ContactPoint
{
	Collider* collider[2];
	Vector3f point;
	Vector3f normal;
};

struct Collision
{
	int status;
	
	bool flipped;
	
	Rigidbody* thisRigidbody;
	Rigidbody* otherRigidbody;
	Collider* thisCollider;
	Collider* otherCollider;

	Vector3f impactForceSum;
	Vector3f frictionForceSum;
	Vector3f relativeVelocity;
	typedef std::list<ContactPoint> Contacts;
	Contacts contacts;
};

ScriptingObjectPtr ConvertContactToMono (Collision* input);