mirror of https://github.com/bjornbytes/lovr.git
Reorder collider functions;
This commit is contained in:
parent
bb5df10f28
commit
b0c86c1903
|
@ -348,6 +348,42 @@ void lovrColliderSetUserData(Collider* collider, void* data) {
|
||||||
collider->userdata = data;
|
collider->userdata = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* lovrColliderGetTag(Collider* collider) {
|
||||||
|
return lovrWorldGetTagName(collider->world, collider->tag);
|
||||||
|
}
|
||||||
|
|
||||||
|
int lovrColliderSetTag(Collider* collider, const char* tag) {
|
||||||
|
if (tag == NULL) {
|
||||||
|
collider->tag = NO_TAG;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int* index = map_get(&collider->world->tags, tag);
|
||||||
|
|
||||||
|
if (!index) {
|
||||||
|
return NO_TAG;
|
||||||
|
}
|
||||||
|
|
||||||
|
collider->tag = *index;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
float lovrColliderGetFriction(Collider* collider) {
|
||||||
|
return collider->friction;
|
||||||
|
}
|
||||||
|
|
||||||
|
void lovrColliderSetFriction(Collider* collider, float friction) {
|
||||||
|
collider->friction = friction;
|
||||||
|
}
|
||||||
|
|
||||||
|
float lovrColliderGetRestitution(Collider* collider) {
|
||||||
|
return collider->restitution;
|
||||||
|
}
|
||||||
|
|
||||||
|
void lovrColliderSetRestitution(Collider* collider, float restitution) {
|
||||||
|
collider->restitution = restitution;
|
||||||
|
}
|
||||||
|
|
||||||
int lovrColliderIsKinematic(Collider* collider) {
|
int lovrColliderIsKinematic(Collider* collider) {
|
||||||
return dBodyIsKinematic(collider->body);
|
return dBodyIsKinematic(collider->body);
|
||||||
}
|
}
|
||||||
|
@ -562,22 +598,6 @@ void lovrColliderGetLinearVelocityFromWorldPoint(Collider* collider, float wx, f
|
||||||
*vz = velocity[2];
|
*vz = velocity[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
float lovrColliderGetFriction(Collider* collider) {
|
|
||||||
return collider->friction;
|
|
||||||
}
|
|
||||||
|
|
||||||
void lovrColliderSetFriction(Collider* collider, float friction) {
|
|
||||||
collider->friction = friction;
|
|
||||||
}
|
|
||||||
|
|
||||||
float lovrColliderGetRestitution(Collider* collider) {
|
|
||||||
return collider->restitution;
|
|
||||||
}
|
|
||||||
|
|
||||||
void lovrColliderSetRestitution(Collider* collider, float restitution) {
|
|
||||||
collider->restitution = restitution;
|
|
||||||
}
|
|
||||||
|
|
||||||
void lovrColliderGetAABB(Collider* collider, float aabb[6]) {
|
void lovrColliderGetAABB(Collider* collider, float aabb[6]) {
|
||||||
dGeomID shape = dBodyGetFirstGeom(collider->body);
|
dGeomID shape = dBodyGetFirstGeom(collider->body);
|
||||||
|
|
||||||
|
@ -600,26 +620,6 @@ void lovrColliderGetAABB(Collider* collider, float aabb[6]) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const char* lovrColliderGetTag(Collider* collider) {
|
|
||||||
return lovrWorldGetTagName(collider->world, collider->tag);
|
|
||||||
}
|
|
||||||
|
|
||||||
int lovrColliderSetTag(Collider* collider, const char* tag) {
|
|
||||||
if (tag == NULL) {
|
|
||||||
collider->tag = NO_TAG;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int* index = map_get(&collider->world->tags, tag);
|
|
||||||
|
|
||||||
if (!index) {
|
|
||||||
return NO_TAG;
|
|
||||||
}
|
|
||||||
|
|
||||||
collider->tag = *index;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void lovrShapeDestroy(const Ref* ref) {
|
void lovrShapeDestroy(const Ref* ref) {
|
||||||
Shape* shape = containerof(ref, Shape);
|
Shape* shape = containerof(ref, Shape);
|
||||||
lovrShapeDestroyData(shape);
|
lovrShapeDestroyData(shape);
|
||||||
|
|
|
@ -80,27 +80,6 @@ typedef struct {
|
||||||
void lovrPhysicsInit();
|
void lovrPhysicsInit();
|
||||||
void lovrPhysicsDestroy();
|
void lovrPhysicsDestroy();
|
||||||
|
|
||||||
World* lovrWorldCreate(float xg, float yg, float zg, int allowSleep, const char** tags, int tagCount);
|
|
||||||
void lovrWorldDestroy(const Ref* ref);
|
|
||||||
void lovrWorldDestroyData(World* world);
|
|
||||||
void lovrWorldUpdate(World* world, float dt, CollisionResolver resolver, void* userdata);
|
|
||||||
void lovrWorldComputeOverlaps(World* world);
|
|
||||||
int lovrWorldGetNextOverlap(World* world, Shape** a, Shape** b);
|
|
||||||
int lovrWorldCollide(World* world, Shape* a, Shape* b, float friction, float restitution);
|
|
||||||
void lovrWorldGetGravity(World* world, float* x, float* y, float* z);
|
|
||||||
void lovrWorldSetGravity(World* world, float x, float y, float z);
|
|
||||||
void lovrWorldGetLinearDamping(World* world, float* damping, float* threshold);
|
|
||||||
void lovrWorldSetLinearDamping(World* world, float damping, float threshold);
|
|
||||||
void lovrWorldGetAngularDamping(World* world, float* damping, float* threshold);
|
|
||||||
void lovrWorldSetAngularDamping(World* world, float damping, float threshold);
|
|
||||||
int lovrWorldIsSleepingAllowed(World* world);
|
|
||||||
void lovrWorldSetSleepingAllowed(World* world, int allowed);
|
|
||||||
void lovrWorldRaycast(World* world, float x1, float y1, float z1, float x2, float y2, float z2, RaycastCallback callback, void* userdata);
|
|
||||||
const char* lovrWorldGetTagName(World* world, int tag);
|
|
||||||
int lovrWorldDisableCollisionBetween(World* world, const char* tag1, const char* tag2);
|
|
||||||
int lovrWorldEnableCollisionBetween(World* world, const char* tag1, const char* tag2);
|
|
||||||
int lovrWorldIsCollisionEnabledBetween(World* world, const char* tag1, const char* tag);
|
|
||||||
|
|
||||||
Collider* lovrColliderCreate();
|
Collider* lovrColliderCreate();
|
||||||
void lovrColliderDestroy(const Ref* ref);
|
void lovrColliderDestroy(const Ref* ref);
|
||||||
void lovrColliderDestroyData(Collider* collider);
|
void lovrColliderDestroyData(Collider* collider);
|
||||||
|
@ -111,6 +90,12 @@ vec_void_t* lovrColliderGetShapes(Collider* collider);
|
||||||
vec_void_t* lovrColliderGetJoints(Collider* collider);
|
vec_void_t* lovrColliderGetJoints(Collider* collider);
|
||||||
void* lovrColliderGetUserData(Collider* collider);
|
void* lovrColliderGetUserData(Collider* collider);
|
||||||
void lovrColliderSetUserData(Collider* collider, void* data);
|
void lovrColliderSetUserData(Collider* collider, void* data);
|
||||||
|
const char* lovrColliderGetTag(Collider* collider);
|
||||||
|
int lovrColliderSetTag(Collider* collider, const char* tag);
|
||||||
|
float lovrColliderGetFriction(Collider* collider);
|
||||||
|
void lovrColliderSetFriction(Collider* collider, float friction);
|
||||||
|
float lovrColliderGetRestitution(Collider* collider);
|
||||||
|
void lovrColliderSetRestitution(Collider* collider, float restitution);
|
||||||
int lovrColliderIsKinematic(Collider* collider);
|
int lovrColliderIsKinematic(Collider* collider);
|
||||||
void lovrColliderSetKinematic(Collider* collider, int kinematic);
|
void lovrColliderSetKinematic(Collider* collider, int kinematic);
|
||||||
int lovrColliderIsGravityIgnored(Collider* collider);
|
int lovrColliderIsGravityIgnored(Collider* collider);
|
||||||
|
@ -146,12 +131,6 @@ void lovrColliderGetWorldVector(Collider* collider, float x, float y, float z, f
|
||||||
void lovrColliderGetLinearVelocityFromLocalPoint(Collider* collider, float x, float y, float z, float* vx, float* vy, float* vz);
|
void lovrColliderGetLinearVelocityFromLocalPoint(Collider* collider, float x, float y, float z, float* vx, float* vy, float* vz);
|
||||||
void lovrColliderGetLinearVelocityFromWorldPoint(Collider* collider, float wx, float wy, float wz, float* vx, float* vy, float* vz);
|
void lovrColliderGetLinearVelocityFromWorldPoint(Collider* collider, float wx, float wy, float wz, float* vx, float* vy, float* vz);
|
||||||
void lovrColliderGetAABB(Collider* collider, float aabb[6]);
|
void lovrColliderGetAABB(Collider* collider, float aabb[6]);
|
||||||
float lovrColliderGetFriction(Collider* collider);
|
|
||||||
void lovrColliderSetFriction(Collider* collider, float friction);
|
|
||||||
float lovrColliderGetRestitution(Collider* collider);
|
|
||||||
void lovrColliderSetRestitution(Collider* collider, float restitution);
|
|
||||||
const char* lovrColliderGetTag(Collider* collider);
|
|
||||||
int lovrColliderSetTag(Collider* collider, const char* tag);
|
|
||||||
|
|
||||||
void lovrShapeDestroy(const Ref* ref);
|
void lovrShapeDestroy(const Ref* ref);
|
||||||
void lovrShapeDestroyData(Shape* shape);
|
void lovrShapeDestroyData(Shape* shape);
|
||||||
|
|
Loading…
Reference in New Issue