Wrap more rigiddynamic funcs

This commit is contained in:
bloeys
2023-10-10 03:43:00 +04:00
parent 8c12404511
commit c740204bd5
4 changed files with 38 additions and 4 deletions

View File

@ -30,7 +30,17 @@ extern "C" {
CPxAPI CPxReal CPxRigidDynamic_getAngularDamping(CSTRUCT CPxRigidDynamic crd); CPxAPI CPxReal CPxRigidDynamic_getAngularDamping(CSTRUCT CPxRigidDynamic crd);
CPxAPI CSTRUCT CPxVec3 CPxRigidDynamic_getLinearVelocity(CSTRUCT CPxRigidDynamic crd); CPxAPI CSTRUCT CPxVec3 CPxRigidDynamic_getLinearVelocity(CSTRUCT CPxRigidDynamic crd);
CPxAPI void CPxRigidDynamic_setLinearVelocity(CSTRUCT CPxRigidDynamic crd, CSTRUCT CPxVec3* velocity, bool autoAwake);
CPxAPI CPxReal CPxRigidDynamic_getMaxLinearVelocity(CSTRUCT CPxRigidDynamic crd);
CPxAPI void CPxRigidDynamic_setMaxLinearVelocity(CSTRUCT CPxRigidDynamic crd, CPxReal maxLinearVelocity);
CPxAPI CSTRUCT CPxVec3 CPxRigidDynamic_getAngularVelocity(CSTRUCT CPxRigidDynamic crd); CPxAPI CSTRUCT CPxVec3 CPxRigidDynamic_getAngularVelocity(CSTRUCT CPxRigidDynamic crd);
CPxAPI void CPxRigidDynamic_setAngularVelocity(CSTRUCT CPxRigidDynamic crd, CSTRUCT CPxVec3* velocity, bool autoAwake);
CPxAPI CPxReal CPxRigidDynamic_getMaxAngularVelocity(CSTRUCT CPxRigidDynamic crd);
CPxAPI void CPxRigidDynamic_setMaxAngularVelocity(CSTRUCT CPxRigidDynamic crd, CPxReal maxAngularVelocity);
CPxAPI void CPxRigidDynamic_setMass(CSTRUCT CPxRigidDynamic crd, CPxReal mass); CPxAPI void CPxRigidDynamic_setMass(CSTRUCT CPxRigidDynamic crd, CPxReal mass);
CPxAPI CPxReal CPxRigidDynamic_getMass(CSTRUCT CPxRigidDynamic crd); CPxAPI CPxReal CPxRigidDynamic_getMass(CSTRUCT CPxRigidDynamic crd);

View File

@ -29,14 +29,14 @@ func (rd *RigidDynamic) SetLinearDamping(damping float32) {
C.CPxRigidDynamic_setLinearDamping(rd.cRd, C.float(damping)) C.CPxRigidDynamic_setLinearDamping(rd.cRd, C.float(damping))
} }
func (rd *RigidDynamic) SetAngularDamping(damping float32) {
C.CPxRigidDynamic_setAngularDamping(rd.cRd, C.float(damping))
}
func (rd *RigidDynamic) GetLinearDamping() float32 { func (rd *RigidDynamic) GetLinearDamping() float32 {
return float32(C.CPxRigidDynamic_getLinearDamping(rd.cRd)) return float32(C.CPxRigidDynamic_getLinearDamping(rd.cRd))
} }
func (rd *RigidDynamic) SetAngularDamping(damping float32) {
C.CPxRigidDynamic_setAngularDamping(rd.cRd, C.float(damping))
}
func (rd *RigidDynamic) GetAngularDamping() float32 { func (rd *RigidDynamic) GetAngularDamping() float32 {
return float32(C.CPxRigidDynamic_getAngularDamping(rd.cRd)) return float32(C.CPxRigidDynamic_getAngularDamping(rd.cRd))
} }
@ -47,12 +47,36 @@ func (rd *RigidDynamic) GetLinearVelocity() Vec3 {
} }
} }
func (rd *RigidDynamic) SetLinearVelocity(vel *Vec3, autoWake bool) {
C.CPxRigidDynamic_setLinearVelocity(rd.cRd, &vel.cV, C._Bool(autoWake))
}
func (rd *RigidDynamic) GetAngularVelocity() Vec3 { func (rd *RigidDynamic) GetAngularVelocity() Vec3 {
return Vec3{ return Vec3{
cV: C.CPxRigidDynamic_getAngularVelocity(rd.cRd), cV: C.CPxRigidDynamic_getAngularVelocity(rd.cRd),
} }
} }
func (rd *RigidDynamic) SetAngularVelocity(vel *Vec3, autoWake bool) {
C.CPxRigidDynamic_setAngularVelocity(rd.cRd, &vel.cV, C._Bool(autoWake))
}
func (rd *RigidDynamic) GetMaxLinearVelocity() float32 {
return float32(C.CPxRigidDynamic_getMaxLinearVelocity(rd.cRd))
}
func (rd *RigidDynamic) SetMaxLinearVelocity(vel float32) {
C.CPxRigidDynamic_setMaxLinearVelocity(rd.cRd, C.float(vel))
}
func (rd *RigidDynamic) GetMaxAngularVelocity() float32 {
return float32(C.CPxRigidDynamic_getMaxAngularVelocity(rd.cRd))
}
func (rd *RigidDynamic) SetMaxAngularVelocity(vel float32) {
C.CPxRigidDynamic_setMaxAngularVelocity(rd.cRd, C.float(vel))
}
func (rd *RigidDynamic) SetMass(mass float32) { func (rd *RigidDynamic) SetMass(mass float32) {
C.CPxRigidDynamic_setMass(rd.cRd, C.float(mass)) C.CPxRigidDynamic_setMass(rd.cRd, C.float(mass))
} }