aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BulletSimAPI.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* BulletSim: remove some unused API2 calls because they were removed from ↵Robert Adams2012-10-111-12/+0
| | | | Bullet 2.81
* BulletSim: cosmetic changes (comments and renaming). Give mass to terrain to ↵Robert Adams2012-10-111-2/+1
| | | | improve interactions.
* BulletSim: Add Force* operations to objects to allow direct push to engine.Robert Adams2012-10-111-0/+2
| | | | | | | | | | Update BSDynamics to use same (don't want to delay updates til next taint-time. Suppress queuing a taint update for position and orientation calls if value does not change. Move Bullet timing statistics call from C# back to C++ code. Throttle taints per simulation step and add parameter to set. By default, don't create hulls for physical objects. Add a parameter to turn on and off.
* BulletSim: Fix crash when linking large physical linksets.Robert Adams2012-10-111-2/+12
| | | | | | | | Properly remove and restore linkage constraints when upgrading a prim's mesh to a hull. Lots more debug logging. Definitions and use of Bullet structure dumping. Centralize detail logging so a Flush() can be added for debugging.
* BulletSim: Make parameter value defaults match what should be the default ↵Robert Adams2012-10-021-1/+1
| | | | and what is in OpenSimDefaults.ini. Comment and debug printout changes.
* BulletSim: impliment FloatOnWater OS function.Robert Adams2012-10-021-7/+1
|
* BulletSim: rename some constraint variables to be consistant with other name ↵Robert Adams2012-09-271-4/+17
| | | | | | | | | use. Added callbacks for shape and body changes in GetBodyAndShape() so the linkset constraints can be picked up and restored. A better design might be to have a "prim shape changed" event. Think about that. Added constraint types to general constraint class.
* BulletSim: remove the trailing spaces from lines to make git happierRobert Adams2012-09-271-2/+2
|
* BulletSim: Fix linkset crash. Caused by the different body and shapeRobert Adams2012-09-271-4/+4
| | | | | | | pointers at runtime and at taint-time. Now passes the body into the taint. Vehicles zero inertia when active to eliminate Bullet's contribution to vehicle motion.
* BulletSim: btGhostObjects working to make 'volume detect' work.Robert Adams2012-09-271-26/+52
| | | | | | | | | | Rearrangement and cleanup of shape collection code. Much more readable. Enabling and use of collision filters and masks. Addition of ID to body creation BulletSimAPI calls so always set in shape for collision reporting. Change default of ShouldSplitSimulationIslands and ShouldRandomizeSolverOrder from 'false' to 'true'. When 'false', this suppresses NO_CONTACT_RESPONSE which makes volume detect fail.
* BulletSim: renamed members of BulletShape, BulletSim and BulletBodyRobert Adams2012-09-271-18/+31
| | | | | | | | | | | | so the members case is consistant. Caused modifications everywhere. New logic in BSShapeCollection to track use and sharing of shapes. I just reslized, though, that shapes cannot be shared because the shape's UserPointer is the localID of the prim and is required for tracking collisions. More changes coming. Added DuplicateCollisionShape2() to API and changed BuildNativeShape2 to take a ShapeData structure so don't have to pass so many parameters. This matches the latest version of BulletSim.dll. Additions and removal of DetailLog() statements for debugging.
* BulletSim: complete code for managed code shape and body tracking. Not debugged.Robert Adams2012-09-271-4/+39
| | | | | Eliminate some null exceptions created adding the above code. Add and remove some detailed logging statements.
* BulletSim: add class and infrastructure for shape and objectRobert Adams2012-09-271-25/+66
| | | | | tracking in the C# code. Needed for the changing body type (to and from GhostObjects) for volumeDetect.
* BulletSim: move a bunch of common logic out of BSPrim and BSCharacterRobert Adams2012-09-271-47/+10
| | | | | | and into the parent class BSPhysObject. Rework collision logic to enable extra collision after done colliding. Rename 'Scene' to 'PhysicsScene' to differentiate it from the simulator 'Scene'.
* BulletSim: add the debugging routine DumpRigidBody2() to API2.Robert Adams2012-09-151-3/+6
|
* BulletSim: Add 'IsNativeShape2' callRobert Adams2012-09-151-4/+7
|
* BulletSim: Way too many changes in one commit.Robert Adams2012-09-151-18/+11
| | | | | | | | | | | | | | | | | | | | Many changes to BSDynamic for readability and commentary. Linkset hacking for vehicles: don't over mass the root prim. Add parameter for link constraint solver iterations. Correct uses of timestep in timescale calculations for vehicles. Reorganize code/logic for making objects static and dynamic for readability and use of API2. Changed most calls in BSPrim to use API2 calls (the new way). Avatars do not generate default Bullet collision events but do call up to the simulator for every avatar. Reduces overhead. Objects added to collision list only if they are processing collisions. Reduces overhead especially for large numbers of avatars. Generalize call for water height to GetWaterHeightAtXYZ(). Catch and correct exception getting terrain height when out of bounds. Correct race condition in Terrain Manager where creation wasn't at taint-time. Add API calls for constructing compound shapes. Move NeedsMeshing() logic into object class. Reorganize logic for object meshing to reduce rebuilding of meshs/hulls.
* BulletSim: Add Bullet body and shape to BSPhysObject and renameRobert Adams2012-09-071-30/+410
| | | | | | | | | 'Body' to 'BSBody' for disambiguation when reading code. Complete the API2 interface so nearly all methods on bullet classes are available to the managed code. The efficient single call simulation step is kept in place while all other creation/destruction/parameterization can be done in the managed code.
* BulletSim: Modify collision flag calls to return the current flags.Robert Adams2012-09-071-3/+13
| | | | | | Track current collision flags in BSPrim. Add BulletSimAPI calls for saving and restoring rigidBodies using construction information structure.
* BulletSim: Update BulletSimAPI to match the DLL interface.Robert Adams2012-08-311-3/+5
| | | | | | | | Major rework of terrain management which finally makes mega-regions work. Update heightmap of terrain by rebuilding the terrain's body and shape. There is a problem with just replacing the shape so this workaround will do for the moment but it will need to be resolved for mesh and hull switching.
* BulletSim: clean up some variable naming for consistancy.Robert Adams2012-08-311-18/+37
| | | | | | | Update DLL API for new terrain and shape/body pattern methods. Terrain creation and modification uses new shape/body pattern. Move debug logging callback set to initialization call so logging is per physics engine.
* BulletSim: Changes to terrain storage and management so mega-regions work.Robert Adams2012-08-311-6/+55
| | | | | | | | | Moved all terrain code out of BSScene and into new BSTerrainManager. Added logic to manage multiple terrains for mega-regions. Added new functions to BulletSimAPI to match the library. Moved all of the terrain creation and setup logic from C++ code to C# code. The unused code has not yet been removed from either place. Soon. Moved checks for avatar above ground and in bounds into BSCharacter.
* BulletSim: add new interface for mesh, hull and terrain creation that will ↵Robert Adams2012-08-311-7/+20
| | | | move nearly all of the logic into the C# code.
* BulletSim: add hinge constraint.Robert Adams2012-08-151-0/+27
| | | | | | | Update BulletSimAPI with new constraint related function calls. Reorganize locking in BS6DofConstraint. Update BS6DofConstraint to do constraint reset correctly. Add new 'midpoint' construction of 6Dof constraint.
* BulletSim: many, many detailed logging messages for physical linksetRobert Adams2012-08-101-2/+7
| | | | | | | | debugging. Linkset bugs fixed where accounting of children would get lost. Moved scene based vehicle tracking logic from prim to the scene. Added GetCollisionFlags2 method to BulletSimAPI. Updated DLLs and SOs.
* BulletSim: separate out the constraints by type. The linksets useRobert Adams2012-08-091-17/+20
| | | | | | 6dof constraint but eventually others will be exposed so future features can use all the Bullet capabilities. Force children to generate a position update when unlinked.
* BulletSim: Added avatar capsule scaling for size of avatar.Robert Adams2012-08-071-0/+1
| | | | | | | | This also fixes computation of avatar mass. Added parameter MaxPersistantManifoldPoolSize. Fixed a parameter setting bug which caused crashes of there were more than 400 or so physical objects. I tested up to 5000. Updated BulletSim DLLs and SOs.
* BulletSim: pass collision subscription information to the C++ code so ↵Robert Adams2012-08-031-13/+14
| | | | collisions on objects that don't care are not reported up.
* BulletSim: Add AddObjectForce to BulletSim API.Robert Adams2012-08-031-0/+3
| | | | | | Add interface 2 enhancements to BSCharacter. Modify AddForce and SetForce to use the new Bullet interface. More DetailLog statements for character.
* BulletSim: change boolean parameters in the shape data from int's to float's ↵Robert Adams2012-07-311-5/+5
| | | | to be consistant with parameter data structure
* BulletSim: add parameters and API calls for setting ERP and CFM.Robert Adams2012-07-311-8/+37
| | | | | | Set ERP and CFM in linkset constraints. Reorder rebuilding of object bodies so they are not rebuilt everytime something is linked and unlinked.
* BulletSim: refactor all the linkset logic out of the prim classRobert Adams2012-07-261-1/+1
| | | | | | and into its own class. The BulletSim data structures track individual prims as linksets of 1 so most of the prim code is not different between a linked and unlinked object.
* BulletSim: Move constraint tracking from C++ code to C# codeRobert Adams2012-07-251-2/+46
| | | | for more flexibility.
* BulletSim: add all the new functions to BulletSimAPI.Robert Adams2012-07-231-4/+128
| | | | Modify ZeroMotion() to not make tainting calls and to use new API calls.
* BulletSim: more detail logging for vehicle and general physics debugging.Robert Adams2012-07-201-0/+51
| | | | | | | | Physical linksets are fully functional. Tweeking of the vehicle code to make it semi-work. Utilize the new API2 for some setting operations. Add GetOrientation() API call for proper reporting of children of linksets. Changes the interface between C# and C++ code so old DLLs won't work!
* BulletSim: add a bunch of internal Bullet configuration parameters to ↵Robert Adams2012-03-231-0/+9
| | | | OpenSimDefaults.ini and the code.
* BulletSim: add some new runtime setable parameters to match the dll.Robert Adams2012-03-231-4/+6
|
* Update BulletSim.dll with some interface changes and tuning (see ↵Robert Adams2012-01-251-0/+4
| | | | opensim-libs). Change BSScene to use new interface.
* BulletSim: add mesh representation. Use meshes for static objects and switch ↵Robert Adams2011-08-261-10/+21
| | | | to hulls for physical objects.
* BulletSim: add runtime setting of physics parameters. Update default values.Robert Adams2011-08-181-4/+16
|
* BulletSim: Parameters settable from ini file. Linksets. Physical property ↵Robert Adams2011-08-051-4/+40
| | | | value tuning
* Pass collisions and updates in pinned memory (saves marshaling).Robert.Adams2011-07-221-3/+15
| | | | | Fix folding feet by using collision normals. Add constraint specification.
* BulletSim initial checkinRobert Adams2011-06-201-0/+186