introduces ios support? still needs metal
This commit is contained in:
@@ -1,5 +1,30 @@
|
||||
#include "physics.h"
|
||||
#include "physics_gen.h"
|
||||
#include "math3d.h"
|
||||
|
||||
PxCastResult_t IPxWorld::BoxCast( vec3 size, vec3 origin, vec3 destination, vec3 rotation )
|
||||
{
|
||||
vec3 velocity;
|
||||
PxCastResult_t result = {};
|
||||
px_cast_result r = {};
|
||||
|
||||
for ( int i = 0; i < 3; i++ )
|
||||
velocity[i] = destination[i] - origin[i];
|
||||
|
||||
r = px_box_cast(px, size[0], size[1], size[2], PX_GLM_VEC3(origin), PX_GLM_VEC3(rotation), PX_GLM_VEC3(velocity), 1);
|
||||
|
||||
|
||||
result.bHit = r.hit;
|
||||
result.fTime = r.time;
|
||||
for ( int i = 0; i < 3; i++ )
|
||||
{
|
||||
result.position[i] = origin[i] + velocity[i] * result.fTime;
|
||||
result.normal[i] = r.normal1.m[i];
|
||||
result.normal2[i] = r.normal2.m[i];
|
||||
}
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
void CPxCollider::Spawn( float fFriction )
|
||||
{
|
||||
@@ -44,6 +69,11 @@ void CPxRigidKinematicPosition::Spawn( CPxCollider *pCollider, px_matrix matrix,
|
||||
{
|
||||
m_pRigidBody = px_kinematic_position_body(px, pCollider->m_pCollider, matrix, params);
|
||||
};
|
||||
|
||||
void CPxRigidKinematicPosition::SetPosition( px_vec3 position )
|
||||
{
|
||||
px_setposition(px, m_pRigidBody, position);
|
||||
};
|
||||
px_vec3 CPxRigidKinematicPosition::GetPosition( void )
|
||||
{
|
||||
return px_getposition(px, m_pRigidBody);
|
||||
|
||||
Reference in New Issue
Block a user