added command line, added basic character
This commit is contained in:
26
rapier/px.rs
26
rapier/px.rs
@@ -147,11 +147,12 @@ pub struct px_rigidbody_params {
|
||||
dominance: i8,
|
||||
}
|
||||
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
pub unsafe extern "C" fn px_rigidbody(px_world: *mut funnyphysics, collider: *mut Collider, m:px_matrix,params:px_rigidbody_params) -> *mut RigidBodyHandle {
|
||||
pub unsafe extern "C" fn px_kinematic_position_body(px_world: *mut funnyphysics, collider: *mut Collider, m:px_matrix,params:px_rigidbody_params) -> *mut RigidBodyHandle {
|
||||
let c = &mut *collider;
|
||||
let px = px_world.as_mut().unwrap();
|
||||
let rigid_body = RigidBodyBuilder::dynamic()
|
||||
let rigid_body = RigidBodyBuilder::kinematic_position_based()
|
||||
.translation(vector![m.m[12],m.m[13],m.m[14]])
|
||||
.can_sleep(false)
|
||||
.gravity_scale(1.0)
|
||||
@@ -166,6 +167,27 @@ pub unsafe extern "C" fn px_rigidbody(px_world: *mut funnyphysics, collider: *mu
|
||||
|
||||
Box::into_raw(Box::new(body))
|
||||
}
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
pub unsafe extern "C" fn px_rigidbody(px_world: *mut funnyphysics, collider: *mut Collider, m:px_matrix,params:px_rigidbody_params) -> *mut RigidBodyHandle {
|
||||
let c = &mut *collider;
|
||||
let px = px_world.as_mut().unwrap();
|
||||
let rigid_body = RigidBodyBuilder::dynamic()
|
||||
.translation(vector![m.m[12],m.m[13],m.m[14]])
|
||||
.can_sleep(false)
|
||||
.gravity_scale(params.gravity_scale)
|
||||
.enabled_rotations(params.lockrotx==0, params.lockroty==0, params.lockrotz==0)
|
||||
.enabled_translations(params.lockposx==0, params.lockposy==0, params.lockposz==0)
|
||||
.dominance_group(params.dominance)
|
||||
.linear_damping(0.0)
|
||||
.angular_damping(0.0)
|
||||
.ccd_enabled(params.continous == 1)
|
||||
.build();
|
||||
let body = px.rigid_body_set.insert(rigid_body);
|
||||
px.collider_set.insert_with_parent(c.clone(),body,&mut px.rigid_body_set);
|
||||
|
||||
Box::into_raw(Box::new(body))
|
||||
}
|
||||
#[unsafe(no_mangle)]
|
||||
pub unsafe extern "C" fn px_getposition(px_world: *mut funnyphysics, body: *mut RigidBodyHandle) -> px_vec3 {
|
||||
let c = &mut *body;
|
||||
|
||||
Reference in New Issue
Block a user