aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* BulletSim: add class and infrastructure for shape and objectRobert Adams2012-09-271-6/+41
| | | | | tracking in the C# code. Needed for the changing body type (to and from GhostObjects) for volumeDetect.
* BulletSim: Convert BSCharacter to use common BSPhysObject code and variables.Robert Adams2012-09-271-27/+13
| | | | | | | Fix avatar height calculation to properly account for the capsule ends. Rearrange some locking in TerrainManager to eliminate possible race conditions. Move DetailLog() definition into common BSPhysObject class. Some variable renaming to make usage clearer (refactor.rename makes this so easy).
* BulletSim: move a bunch of common logic out of BSPrim and BSCharacterRobert Adams2012-09-271-160/+72
| | | | | | 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: some debugging prints in BSPrim for tracking changes in linkset ↵Robert Adams2012-09-151-1/+3
| | | | children.
* BulletSim: remove timeStep parameter from calls for vehicle parameter ↵Robert Adams2012-09-151-3/+3
| | | | setting. There is no reason these should be using the simulation time interval for parameter calculation.
* BulletSim: Remove calculation and passing of unused collied object type.Robert Adams2012-09-151-6/+22
| | | | | Fix collision code to properly sense mega-region children regions as terrain. When setting an object physical, reset all the physical properties (friction, ...).
* BulletSim: Add calls to linkset class when object going static or dynamic.Robert Adams2012-09-151-6/+14
| | | | Reset center of mass on an object when going dynamic.
* BulletSim: Way too many changes in one commit.Robert Adams2012-09-151-78/+118
| | | | | | | | | | | | | | | | | | | | 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-19/+77
| | | | | | | | | '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: Add some comments (gasp) and log messages.Robert Adams2012-09-071-0/+5
|
* BulletSim: PhysicsActorType() now returns the correct value rather than ↵Robert Adams2012-09-071-2/+2
| | | | 'unknown'.
* BulletSim: Modify collision flag calls to return the current flags.Robert Adams2012-09-071-4/+5
| | | | | | Track current collision flags in BSPrim. Add BulletSimAPI calls for saving and restoring rigidBodies using construction information structure.
* BulletSim: Changes to terrain storage and management so mega-regions work.Robert Adams2012-08-311-1/+1
| | | | | | | | | 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: unify physical objects under BSPhysObjects. Now BSScene and ↵Robert Adams2012-08-311-48/+36
| | | | BSLinkset only know of BSPhysObject's and there is only one list to search in BSScene.
* BulletSim: Properly regenerate hulls when objects made physical.Robert Adams2012-08-171-9/+25
| | | | | This fixes the problem of non-base shapes (cubes and spheres) falling through the terrain.
* BulletSim: restore most of the Detail logging statements. Will haveRobert Adams2012-08-171-22/+24
| | | | | | | no effect on non-logging running. Capture region name that is passed to the physics engine and use it for detail logging file name prefix. Fix problem with avatars dropping when flying across region boundries.
* BulletSim: add parameters and functionality to specify the meshRobert Adams2012-08-171-6/+8
| | | | | | level of detail for large meshes. Remove parameter and code for DetailLog (conditional logging into regular log file).
* BulletSim: comments and parameter changes in dynamics engine.Robert Adams2012-08-171-3/+3
|
* BulletSim: make it so objects in a linkset do not generate collisions with ↵Robert Adams2012-08-151-0/+10
| | | | each other.
* BulletSim: clean up detail logging by adding many more debug log statements ↵Robert Adams2012-08-151-29/+31
| | | | and then commenting out most of the additions.
* BulletSim: don't recreate mesh unless it needs it when rebuilding the hull. ↵Robert Adams2012-08-151-15/+15
| | | | Make sure the collisionCollection is reallocated each tick to fix race condition of it being cleared while still in use.
* BulletSim: many, many detailed logging messages for physical linksetRobert Adams2012-08-101-27/+31
| | | | | | | | 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: Add module names to DetailLog output. Fix some problems with ↵Robert Adams2012-08-101-31/+38
| | | | linksets that were caused by checking data structures that are changed regularly from taint time code -- resulted in linksets not being unlinked properly.
* BulletSim: add an identifier to the TaintObject call so exceptions that ↵Robert Adams2012-08-091-27/+22
| | | | happen when the taint is invoked can be debugged
* BulletSim: separate out the constraints by type. The linksets useRobert Adams2012-08-091-7/+8
| | | | | | 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: add avatar code to keep avatars from ending up trapped under the ↵Robert Adams2012-08-081-3/+1
| | | | terrain
* BulletSim: Added avatar capsule scaling for size of avatar.Robert Adams2012-08-071-4/+4
| | | | | | | | 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-2/+14
| | | | collisions on objects that don't care are not reported up.
* BulletSim: Add AddObjectForce to BulletSim API.Robert Adams2012-08-031-17/+12
| | | | | | Add interface 2 enhancements to BSCharacter. Modify AddForce and SetForce to use the new Bullet interface. More DetailLog statements for character.
* BulletSim: Debugging log statements added. Reduced size of updata buffer ↵Robert Adams2012-08-021-1/+3
| | | | trying to find a corrupted memory problem. Update DLL and SO.
* BulletSim: fix problem where resizing a primary shape (cube or sphere) would ↵Robert Adams2012-07-311-4/+2
| | | | not rebuild the physics mesh. Update the DLLs and SOs to latest version.
* BulletSim: change boolean parameters in the shape data from int's to float's ↵Robert Adams2012-07-311-2/+6
| | | | to be consistant with parameter data structure
* BulletSim: add parameters and API calls for setting ERP and CFM.Robert Adams2012-07-311-12/+26
| | | | | | Set ERP and CFM in linkset constraints. Reorder rebuilding of object bodies so they are not rebuilt everytime something is linked and unlinked.
* BulletSim: fix a recursive loop when fetching the mass of the root of a linkset.Robert Adams2012-07-261-1/+1
|
* BulletSim: refactor all the linkset logic out of the prim classRobert Adams2012-07-261-232/+95
| | | | | | 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: add parameters for setting linkset constraint factorsRobert Adams2012-07-251-15/+9
|
* BulletSim: small change to use the pointer to the bullet object for zeroing ↵Robert Adams2012-07-251-6/+5
| | | | forces.
* BulletSim: Move constraint tracking from C++ code to C# codeRobert Adams2012-07-251-16/+37
| | | | for more flexibility.
* BulletSim: change how prim mass is saved so it is always calculated but zero ↵Robert Adams2012-07-231-20/+23
| | | | is given if not physical.
* BulletSim: small optimizations for link and unlink codeRobert Adams2012-07-231-12/+8
|
* BulletSim: add all the new functions to BulletSimAPI.Robert Adams2012-07-231-2/+11
| | | | Modify ZeroMotion() to not make tainting calls and to use new API calls.
* BulletSim: improve linking to add each link individually rather than ↵Robert Adams2012-07-231-60/+76
| | | | rebuilding the object each time. Makes it an O(n) operation rather than O(n\!).
* BulletSim: more detail logging for vehicle and general physics debugging.Robert Adams2012-07-201-32/+136
| | | | | | | | 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: fix compile errors from last commit. Clean up passing of physics ↵Robert Adams2012-07-201-3/+3
| | | | scene into vehicle dynamics code.
* BulletSim: Add very detailed logging to BSDynamics for vehicle debuggingRobert Adams2012-07-201-0/+1
|
* BulletSim: Add PID variables to physical scene. Not PIDing yet, but soon.Robert Adams2012-07-201-64/+52
| | | | Cleaned up code and got rid of compile warnings.
* BulletSim: Add detailed and voluminous debug logging that is enabledRobert Adams2012-07-201-21/+31
| | | | | | | with an ini configuration parameter. Correct computation of relative offsets of children in a linkset. Remove a prim from any link relationship before deleting it. Minor code flow cleanups.
* Clean up collision reporting code so they are properly passed toRobert Adams2012-07-061-12/+17
| | | | | the simulator in batches. More comments.
* BulletSim: make avatar animations update properly.Robert Adams2012-03-261-5/+13
| | | | | | | It seems that ODE calls the avatar collision handling routine even if there are no collisions. This causes the animation to be updated. So, for instance, going from HOVER to FLY is caused by the physics engine calling the collision routine each frame with 0 collisions.
* BulletSim: remove confusion between angularVelocity and rotationalVelocity ↵Robert Adams2012-03-231-11/+6
| | | | (there is still confusion in the rest of OpenSim). Enhance some debug statements to include the object ID.