aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* BulletSim: fix not moving physical objects below terrain to over terrain.Robert Adams2013-01-141-2/+2
| | | | | Add locking on register prestep action list preventing potential race conditions. Little comment and formatting changes.
* BulletSim: Add IsSelected attribute to physical objects. Have vehicles check ↵Robert Adams2013-01-111-0/+4
| | | | to see if physical before trying to step. Replace vehicle gravity application. Previously relying on Bullet to apply gravity but since vehicles over-ride the velocity calculation, gravity never had a chance to accelerate the body down. Added AddForceImpulse as well as AddForce for those who need to apply immediate velocity updates. Use the impulse to apply the linear motion.
* BulletSim: add function to push avatar up when hitting stairs.Robert Adams2013-01-071-26/+71
| | | | | | | | | | It looks like BulletSim and ODE rely on penetration correction to cause the avatar to move up and thus allowing walking up stairs. Object penetration was minimized for walking and flying (so one doesn't go through walls) and this stopped stairs from working. This commit introduces avatar movement code to check for collisions at the feet while walking and attempts to raise the avatar for the steps. Not yet perfect but movement is better.
* BulletSim: comments and removing small compile errors introduced in last commit.Robert Adams2013-01-061-2/+0
|
* BulletSim: convert avatar movement from a force to an impulse. Shouldn'tRobert Adams2013-01-041-2/+2
| | | | change functionality but removes an oddity in computing the force.
* BulletSim: nearly complete in conversion from BulletSimAPI to BSAPITemplate. ↵Robert Adams2012-12-311-17/+17
| | | | Only initialization and debug fuctions left.
* BulletSim: another round of conversion: dynamics world and collision object ↵Robert Adams2012-12-311-23/+23
| | | | functions.
* BulletSim: first round of conversion from direct BulletSimAPI interfacing by ↵Robert Adams2012-12-311-5/+3
| | | | BulletSim core to using the BulletSimAPITemplate. Physical object creation and destruction first.
* BulletSim: remove check for small motor movement because, while itRobert Adams2012-12-291-2/+5
| | | | | | did the right thing for stopping (speed reducing to zero), it prevented movement from starting (speed increasing from zero). Will revisit when the generalize PID motor is debugged.
* BulletSim: an 'if' to suppress multiple setting of avatar orientation.Robert Adams2012-12-291-5/+9
| | | | | | | Looks like the viewer bombards the server with avatar orientation information (we're talking several hundred a second) when the avatar is being turned or when walking. This change just reduces the number of 'set' calls into unmanaged code.
* BulletSim: tweeking avatar capsule code in an attempt to haveRobert Adams2012-12-291-43/+61
| | | | | | | | | asymmetrical avatar capsule work now that rotation is being passed from the simulator. Turns out the Bullet capsule is just not very functional: it doesn't scale properly, the implementation only half does asymmetry and, in general, is hard to work with. Avatar shape is about what it was before these changes. Added initial data structures for avatar shape mesh.
* BulletSim: add 'AvatarAlwaysRunFactor' parameter and use in setTargetVelocityRobert Adams2012-12-281-3/+3
| | | | to implement the 'always run' feature.
* BulletSim: fix problem of avatars appearing to walk through wallsRobert Adams2012-12-281-51/+55
| | | | | by moving the movement motor to a pre-step action and out of its questionable previous home in UpdateProperties.
* BulletSim: move logic for IsColliding, CollidingGround and CollidingObj from ↵Robert Adams2012-12-271-22/+14
| | | | individual sub-classes and up to parent BSPhysObject class.
* BulletSim: complete applyImpulse function in BSCharacter (like I saidRobert Adams2012-12-271-8/+17
| | | | I did last time).
* BulletSim: stop avatar from sliding VERY slowly after walking byRobert Adams2012-12-251-3/+2
| | | | only zeroing the movement motor in the UpdateProperties routine.
* BulletSim: Fix single physical prim reporting its mass as zero.Robert Adams2012-12-241-4/+5
| | | | | | | Properly return root mass as mass of just the root prim rather than the mass of the linkset. SOG has the logic to add the masses together to get the linkset mass. Update TODO list.
* BulletSim: modify avatar motor code to make falling movement better. Clean ↵Robert Adams2012-12-221-34/+41
| | | | up some usages. Disable motor when done.
* BulletSim: remove the movement decay while flying. Made flying slow down ↵Robert Adams2012-12-211-6/+0
| | | | over time.
* BulletSim: add BSPhysObject code to manage registrations of preStep events. ↵Robert Adams2012-12-211-0/+2
| | | | Use same to implement setForce and setTorque so the values are restored at the beginning of each step (since Bullet zeros forces applied last step). Simplify implementation of AddForce and AddTorque by relying on the addition of forces in Bullet.
* BulletSim: Move all the parameter variables, tables and get and fetch logic ↵Robert Adams2012-12-211-15/+15
| | | | to a separate, static class for easier addition and to remove all that bulk from the BSScene class.
* BulletSim: small fix to avatar movement motor use which keeps avatar from ↵Robert Adams2012-12-211-1/+2
| | | | flying up forever. This doesn't fix the overall problem but keeps avatar flying from being totally unusable.
* BulletSim: avatar movement smoothed with motor that modifies avatar velocity ↵Robert Adams2012-12-211-1/+76
| | | | to target velocity. Fails in incorporating physical world effects (gravity) so avatar doesn't fly correctly.
* BulletSim: add check for border crossing in character position sanity check.Robert Adams2012-12-161-2/+10
|
* BulletSim: Add 'BulletSimData' which separates structures createdRobert Adams2012-12-131-3/+2
| | | | | | for the operation of BulletSim and those defintiions/structures defined so they can be used in the unmanaged world. Consolidate setting of collision flags so implementation is not scattered.
* BulletSim: fix problem of avatar's floating off the ground after unsitting. ↵Robert Adams2012-12-121-8/+10
| | | | Reworked size/scale logic so physical scale is kept in Bullet and physObject scale is the preferred size -- usually same as size but avatars are computed differently.
* BulletSim: protect character property setting to remove crash from taints ↵Robert Adams2012-12-111-20/+40
| | | | setting properties after the destroy character taint.
* BulletSim: Fix crash on the destruction of physical linksets.Robert Adams2012-12-101-0/+2
| | | | | | | | | While fixing the above, add methods to physical body and shape pointer wrapper so routines won't have to know that IntPtr.Zero means no physical instance. Fix problem with physical linksets failing after a few sits and unsits by properly restoring child prom positions for compound linksets after multiple selection and deselections.
* BulletSim: Reduce idle region physics overhead where there are MANYRobert Adams2012-12-031-2/+2
| | | | | | | | | | | | static objects by more restrictive selection of objects that collide with static objects. Rename collision mask fuctions from 'filter' to 'group' so it is clear what is being set. Rename BulletSimAPI.SetCollisionFilterMask() to SetCollisionGroupMask to match above. Restore passing of time step to linear and angular motion component routines. Use buffering vehicle physical parameter get/set routines consistantly. Make range enforcement clearer by using ClampInRange() function for parameter setting. Remove commented out experimental vehicle calculations.
* BulletSim: move GetWaterLevelAtXYZ from BSScene to BSPhysTerrain.Robert Adams2012-11-281-1/+1
|
* Rename BulletSim's PhysicsShapeType to BSPhysicsShapeType because itMelanie2012-11-221-2/+2
| | | | conflicts with PhysicsShape type defined in later libOMV
* BulletSim: Make avatar capsule so it is not circular.Robert Adams2012-11-211-7/+17
| | | | | | | | | Simple attempt to make avatars better shaped. Replace parameter 'avatarCapsuleRadius' with 'avatarCapsuleWidth' and 'avatarCapsuleDepth'. More tweeking to avatar height calculation. A little better but short avatar's feet are above the terrain and tall avatar's feet are a little below the ground.
* BulletSim: rename SHAPE_AVATAR to SHAPE_CAPSULE with the eye to eventually ↵Robert Adams2012-11-211-1/+1
| | | | having mesh avatars.
* BulletSim: uplevel PhysicsShapeType out of ShapeData structure (since it is ↵Robert Adams2012-11-211-2/+2
| | | | getting simplified out of existance someday) and update all the references to that enum.
* BulletSim: tweek avatar capsule parameters so avatar feet don't go below ↵Robert Adams2012-11-211-3/+4
| | | | ground. This solves the bouncing, short avatar problem (Mantis 6403).
* BulletSim: fix the problem with flying being disabled when crossing region ↵Robert Adams2012-11-181-2/+6
| | | | boundries.
* BulletSim: Add ZeroAngularMotion method to physical objects. Add inTaint ↵Robert Adams2012-11-061-7/+20
| | | | flag to ZeroMotion method. Update the references to those functions.
* BulletSim: debugging of compound shape implementation of linksets.Robert Adams2012-11-031-7/+6
| | | | | | | | | Add compound shape creation and freeing in shape manager. Add optional taint-time execution method and update code to use it. Add API2 linkage for more compound shape methods (get num, get/remove by index, ...) Modify perferred shape return so linkset children can have differet shapes than root. Add Position and Orientation calls to linksets so children can be moved around by the linkset by its own calculation. Allows for very general linkset implementations.
* BulletSim: Add RawPosition and RawOrientation to BSPhysObject and rename ↵Robert Adams2012-11-031-5/+15
| | | | MassRaw to RawMass. Fix BSShapeCollection to use Raw* for creating the body to eliminate exception from referencing the physical body before it has been created.
* BulletSim: Remove use of shapeData in ShapeCollection and rely on the ↵Robert Adams2012-11-031-15/+4
| | | | available BSPhysObject varaiables. Fix line endings in BSLinksetCompound.
* BulletSim: rename BSBody and BSShape to PhysBody and PhysShape. Add skeleton ↵Robert Adams2012-11-031-39/+39
| | | | of BSLinksetCompound.
* BulletSim: centralize mass/inertia computation with ↵Robert Adams2012-11-031-5/+10
| | | | UpdatePhysicalMassProperties() function. Didn't add setMassRaw because assignment with side effect is dirty.
* BulletSim: correct spelling of Bullet call. It's 'swept' not 'sweep'.Robert Adams2012-11-031-1/+1
|
* BulletSim: Add banking and other new code to vechile dynamics. Add third ↵Robert Adams2012-11-031-1/+1
| | | | party license and contributor in for for Aurora-Sim project for physics code.
* BulletSim: fix problem with avatars sinking into the ground.Robert Adams2012-10-231-9/+18
| | | | Change terrain activation state to DISABLE_SIMULATION for better performance.
* BulletSim: remove trailing spaces to make git happy.Robert Adams2012-10-221-5/+5
|
* BulletSim: add asset fetching so BulletSim works with new physics asset ↵Robert Adams2012-10-191-2/+1
| | | | | | handling. Refactor some names to make them available for the asset tracking and fetching.
* BulletSim: reorder avatar collision checking to eliminate double collision_end.Robert Adams2012-10-191-16/+17
| | | | | | Various tweekings to avatar shape/mass/inertia/etc. Remove change from avatar radius to diameter. But still the avatar sinks. Collision_end now happens immediately rather than at the next subscription time.
* BulletSim: change nonimal physics frame rate to 55 to give same numbers as ODE.Robert Adams2012-10-191-20/+26
| | | | | | Change character scaling to represent size of capsule (diameter rather than radius) Modify create capsule call to pass radius and height. Eliminate errors when calculating shape inertia (should have some type checking).
* BulletSim: remove code in ShapeCollection that hinted at shape sharing.Robert Adams2012-10-191-31/+25
| | | | | Add new function to ParameterDefn for calling BulletSimAPI to set values. Tweaking to BSCharacter parameter setting to try and have avatars stand.