autodisable terrain colliders
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
This commit is contained in:
parent
d8a9d660aa
commit
cf9371461b
@ -1170,6 +1170,7 @@ Fix reentrant locking bug
|
||||
Convert server physics cell generation to executor service
|
||||
Simplifying physics cases
|
||||
Allow variable collision bits for collidable entities
|
||||
Autodisable terrain colliders
|
||||
|
||||
|
||||
# TODO
|
||||
|
||||
@ -497,6 +497,7 @@ public class PhysicsEntityUtils {
|
||||
*/
|
||||
public static void clientAttachTriGeomRigidBody(Entity terrain, TriGeomData data){
|
||||
DBody terrainBody = CollisionBodyCreation.generateBodyFromTerrainData(Globals.clientSceneWrapper.getCollisionEngine(), data, Collidable.TYPE_STATIC_BIT);
|
||||
CollisionBodyCreation.setAutoDisable(Globals.clientSceneWrapper.getCollisionEngine(), terrainBody, true, LINEAR_THRESHOLD, ANGULAR_THRESHOLD, STEP_THRESHOLD);
|
||||
Collidable collidable = new Collidable(terrain,Collidable.TYPE_STATIC, false);
|
||||
Globals.clientSceneWrapper.getCollisionEngine().registerCollisionObject(terrainBody, collidable);
|
||||
PhysicsEntityUtils.setDBody(terrain,terrainBody);
|
||||
@ -511,10 +512,11 @@ public class PhysicsEntityUtils {
|
||||
* @return The rigid body created (note, attachment has already been performed)
|
||||
*/
|
||||
public static DBody serverAttachTriGeomRigidBody(Entity terrain, TriGeomData data){
|
||||
Realm terrainRealm = Globals.realmManager.getEntityRealm(terrain);
|
||||
DBody terrainBody = CollisionBodyCreation.generateBodyFromTerrainData(terrainRealm.getCollisionEngine(),data,Collidable.TYPE_STATIC_BIT);
|
||||
Realm realm = Globals.realmManager.getEntityRealm(terrain);
|
||||
DBody terrainBody = CollisionBodyCreation.generateBodyFromTerrainData(realm.getCollisionEngine(),data,Collidable.TYPE_STATIC_BIT);
|
||||
CollisionBodyCreation.setAutoDisable(realm.getCollisionEngine(), terrainBody, true, LINEAR_THRESHOLD, ANGULAR_THRESHOLD, STEP_THRESHOLD);
|
||||
|
||||
terrainRealm.getCollisionEngine().registerCollisionObject(terrainBody, new Collidable(terrain,Collidable.TYPE_STATIC, false));
|
||||
realm.getCollisionEngine().registerCollisionObject(terrainBody, new Collidable(terrain,Collidable.TYPE_STATIC, false));
|
||||
PhysicsEntityUtils.setDBody(terrain,terrainBody);
|
||||
|
||||
return terrainBody;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user