aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* BulletSim: nearly complete in conversion from BulletSimAPI to BSAPITemplate. ↵Robert Adams2012-12-311-23/+23
| | | | Only initialization and debug fuctions left.
* BulletSim: another round of conversion: dynamics world and collision object ↵Robert Adams2012-12-311-37/+37
| | | | functions.
* BulletSim: first round of conversion from direct BulletSimAPI interfacing by ↵Robert Adams2012-12-311-1/+1
| | | | BulletSim core to using the BulletSimAPITemplate. Physical object creation and destruction first.
* BulletSim: change physical data structures to classes. Add defaultRobert Adams2012-12-311-4/+1
| | | | | | instantiations for PhysBody and PhysShape when BSPhysObject is created to account for them being classes and not structures. Update TODO list.
* BulletSim: fix physical object not interacting with static objects.Robert Adams2012-12-271-9/+24
| | | | | Another instance of the underlying Bullet doing, ah, helpful things when items are added to the world.
* BulletSim: Parameterize nominal frame rate (55) and add parameters to ↵Robert Adams2012-12-271-2/+2
| | | | dynamially turn on/off detailed, unmanaged data dumping of prims and vehicles.
* BulletSim: move logic for IsColliding, CollidingGround and CollidingObj from ↵Robert Adams2012-12-271-15/+3
| | | | individual sub-classes and up to parent BSPhysObject class.
* BulletSim: fix buoyancy so it's properly set by a script when anRobert Adams2012-12-271-4/+25
| | | | | object is selected. Update TODO list.
* BulletSim: add physical parameter min/max constants in BSParam. I just don't ↵Robert Adams2012-12-271-2/+2
| | | | like raw numbers scattered around the code.
* BulletSim: scale the force for external AddForce by the simulationRobert Adams2012-12-261-1/+11
| | | | | step time so it will be applied completely the next step. The internal AddForce routine does not scale the force.
* BulletSim: make llBuoyancy work. For some reason, Bullet resets anRobert Adams2012-12-251-4/+8
| | | | | object's individual gravity to the world gravity when the object is added to the physical world.
* BulletSim: Fix single physical prim reporting its mass as zero.Robert Adams2012-12-241-27/+44
| | | | | | | 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: remove all special vehicle code from BSScene. Replace per-frame ↵Robert Adams2012-12-211-20/+6
| | | | updates for vehicles with per-frame action registration. One fewer special case.
* BulletSim: Fix llApplyImpulse so it works after the first impulse. The ↵Robert Adams2012-12-211-4/+24
| | | | problem was Bullet deactivating the object between the pushes (when, as far as the physics engine is concerned, it isn't moving).
* BulletSim: add BSPhysObject code to manage registrations of preStep events. ↵Robert Adams2012-12-211-63/+49
| | | | 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/+11
| | | | to a separate, static class for easier addition and to remove all that bulk from the BSScene class.
* BulletSim: avatar movement smoothed with motor that modifies avatar velocity ↵Robert Adams2012-12-211-3/+5
| | | | to target velocity. Fails in incorporating physical world effects (gravity) so avatar doesn't fly correctly.
* BulletSim: comments and TODO list updateRobert Adams2012-12-181-2/+7
|
* BulletSim: add parameter to UpdateProperties call into the linkset so ↵Robert Adams2012-12-161-8/+21
| | | | changes from the physics engine can be differentiated from changes made by the user. This eliminates a linkset rebuild loop. Also add logic to not rebuild or freak out when the object/linkset crosses a terrain boundry.
* BulletSim: rip out old code for linkset child position fetching. BulletSim ↵Robert Adams2012-12-161-12/+17
| | | | doesn't need to do that bookkeeping because SOG/SOP already does it.
* BulletSim: Add 'BulletSimData' which separates structures createdRobert Adams2012-12-131-18/+11
| | | | | | 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-6/+2
| | | | 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: fix crash caused by the creation of a linkset child that is under ↵Robert Adams2012-12-111-4/+4
| | | | the terrain. Users can sure find some interesting corner conditions.
* BulletSim: protect character property setting to remove crash from taints ↵Robert Adams2012-12-111-1/+2
| | | | setting properties after the destroy character taint.
* BulletSim: protect prim property setting to remove crash from taints setting ↵Robert Adams2012-12-111-17/+37
| | | | properties after the destroy object taint has happened.
* BulletSim: Fix crash on the destruction of physical linksets.Robert Adams2012-12-101-2/+4
| | | | | | | | | 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: adjust friction and restitution based on material type.Robert Adams2012-12-091-5/+7
|
* BulletSim: set material properties for static objects. Move ↵Robert Adams2012-12-081-11/+19
| | | | Linkset.MakeStatic() after call to ForceActivationState2() since linkset might change activation state. Make BSPrim.CreateGeomAndObject public as linkset rebuilding might need access to it. Only rebuild prim if selection state is actually changes -- OpenSimulator calls PhysObject.Selected() multiple times whenever a prim is selected or deselected.
* BulletSim: only check position sanity if the prim is physical -- the user ↵Robert Adams2012-12-061-3/+1
| | | | can do anything dumb they wish.
* BulletSim: Vehicle angular vertical attraction works. Other vehicle angular ↵Robert Adams2012-12-061-0/+3
| | | | forces commented out for the moment for debugging.
* BulletSim: Reduce idle region physics overhead where there are MANYRobert Adams2012-12-031-5/+9
| | | | | | | | | | | | 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: Add DumpActivationInfo2 function. Change static objects from ↵Robert Adams2012-12-011-2/+2
| | | | DISABLE_SIMULATION to ISLAND_SLEEPING. Update DLLs and SOs to add DumpActivationInfo2 function.
* BulletSim: remove time scaling of computed vehicle absolute velocity since ↵Robert Adams2012-11-291-11/+4
| | | | Bullet will scale the movement by the time slice. Restore LIMIT_MOTOR_UP to definitition of BOAT simce some vehicle engines use it even for land vehicles. Push vehicle parameter updates through the regular property update to solve vehicles floating off when they should be stopped.
* BulletSim: move GetWaterLevelAtXYZ from BSScene to BSPhysTerrain.Robert Adams2012-11-281-3/+4
|
* BulletSim: increase vehicle stability by suppressing Bullet's update to ↵Robert Adams2012-11-261-44/+6
| | | | angular velocity.
* BulletSim: small change to add position correction force with AddForce ↵Robert Adams2012-11-251-5/+4
| | | | rather than just storing it in the variable
* Rename BulletSim's PhysicsShapeType to BSPhysicsShapeType because itMelanie2012-11-221-1/+1
| | | | conflicts with PhysicsShape type defined in later libOMV
* BulletSim: Make avatar capsule so it is not circular.Robert Adams2012-11-211-1/+3
| | | | | | | | | 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: uplevel PhysicsShapeType out of ShapeData structure (since it is ↵Robert Adams2012-11-211-1/+1
| | | | getting simplified out of existance someday) and update all the references to that enum.
* BulletSim: change PositionSanityCheck to apply a force to correct position ↵Robert Adams2012-11-211-32/+29
| | | | corrections (below ground and floating).
* BulletSim: Use base class constructors for initialization of BSShape and ↵Robert Adams2012-11-181-1/+1
| | | | other classes.
* BulletSim: Add ZeroAngularMotion method to physical objects. Add inTaint ↵Robert Adams2012-11-061-16/+45
| | | | flag to ZeroMotion method. Update the references to those functions.
* BulletSim: fix compound linkset crash by not freeing shape of child prims.Robert Adams2012-11-031-0/+3
| | | | | Remove all compilation warnings (mostly 'protected' in sealed classes.) Add the dynamicAabbEnable parameter to creation of compound shapes.
* BulletSim: debugging of compound shape implementation of linksets.Robert Adams2012-11-031-36/+16
| | | | | | | | | 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-2/+12
| | | | 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-25/+5
| | | | available BSPhysObject varaiables. Fix line endings in BSLinksetCompound.
* BulletSim: rename BSBody and BSShape to PhysBody and PhysShape. Add skeleton ↵Robert Adams2012-11-031-64/+64
| | | | of BSLinksetCompound.
* BulletSim: vehicle tweeking.Robert Adams2012-11-031-8/+37
| | | | | | Add AddTorque() method to BSPrim. Remove some manual motor actions in computing angular force (will eventually be replaced with motor class). Remove some experimental changes.
* BulletSim: remove center-of-mass setting for linksets because it causes the ↵Robert Adams2012-11-031-1/+1
| | | | constraint calculation to pull the objects together.
* BulletSim: centralize mass/inertia computation with ↵Robert Adams2012-11-031-13/+26
| | | | UpdatePhysicalMassProperties() function. Didn't add setMassRaw because assignment with side effect is dirty.