* Added a lot of Glue to help with reporting proper collisions.

* ODE - Fixed the iscolliding property to report a static true when colliding.
* Added reporting of collisions to call UpdateMovementAnimations
* Added Jump - air animation (with arms outstretched).
* Added Fall Animations
* ODE - Added a small amount of X, Y motion control while jumping or Falling
* ODE - Avatar movement animations are still a bit odd sometimes, and had to get this up there.
This commit is contained in:
Teravus Ovares
2007-11-12 21:45:49 +00:00
parent b9e971cda9
commit 5952441fcc
7 changed files with 296 additions and 28 deletions

View File

@@ -705,6 +705,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin
protected AxiomQuaternion _orientation;
protected PhysicsVector m_rotationalVelocity = PhysicsVector.Zero;
protected RigidBody rigidBody;
protected int m_PhysicsActorType;
private Boolean iscolliding = false;
internal string _name;
@@ -784,6 +785,12 @@ namespace OpenSim.Region.Physics.BulletXPlugin
{
get { return 0; }
}
public override int PhysicsActorType
{
get { return (int) m_PhysicsActorType; }
set { m_PhysicsActorType = value; }
}
public RigidBody RigidBody
{
get { return rigidBody; }
@@ -814,6 +821,16 @@ namespace OpenSim.Region.Physics.BulletXPlugin
get { return iscolliding; }
set { iscolliding = value; }
}
public override bool CollidingGround
{
get { return false; }
set { return; }
}
public override bool CollidingObj
{
get { return false; }
set { return; }
}
public virtual void SetAcceleration(PhysicsVector accel)
{
lock (BulletXScene.BulletXLock)
@@ -956,7 +973,11 @@ namespace OpenSim.Region.Physics.BulletXPlugin
parent_scene.ddWorld.AddRigidBody(rigidBody);
}
}
public override int PhysicsActorType
{
get { return (int)ActorTypes.Agent; }
set { return; }
}
public override PhysicsVector Position
{
get { return base.Position; }
@@ -1103,7 +1124,11 @@ namespace OpenSim.Region.Physics.BulletXPlugin
CreateRigidBody(parent_scene, mesh, pos, size);
}
public override int PhysicsActorType
{
get { return (int)ActorTypes.Prim; }
set { return; }
}
public override PhysicsVector Position
{
get { return base.Position; }