aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* BulletSim: Add activations after vehicle properties change. Problem was the ↵Robert Adams2012-11-031-12/+62
| | | | vehicle was going to sleep while waiting for commands. Make AddAngularForce work the same way as AddForce -- accumulates values and pushes them once into Bullet.
* BulletSim: Add banking and other new code to vechile dynamics. Add third ↵Robert Adams2012-11-031-1/+3
| | | | party license and contributor in for for Aurora-Sim project for physics code.
* BulletSim: remove chatty debug message.Robert Adams2012-10-221-1/+1
|
* BulletSim: fix bug that caused error (and a crash on 32 bit Linux) when mesh ↵Robert Adams2012-10-221-4/+5
| | | | assets weren't already in the cache. Comment cleanups.
* BulletSim: fix problem of not rebuilding shape by clearing last rebuild ↵Robert Adams2012-10-221-0/+1
| | | | failed flag in BSPrim.ForceBodyShapeRebuild()
* 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-48/+48
| | | | | | handling. Refactor some names to make them available for the asset tracking and fetching.
* BulletSim: change nonimal physics frame rate to 55 to give same numbers as ODE.Robert Adams2012-10-191-7/+7
| | | | | | 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-8/+8
| | | | | Add new function to ParameterDefn for calling BulletSimAPI to set values. Tweaking to BSCharacter parameter setting to try and have avatars stand.
* BulletSim: Update BSCharacter to use API2 interface.Robert Adams2012-10-191-22/+44
| | | | | | | | Add capsule shape to BSShapeCollection(). Remember last updated values so inter frame diffs can be computed. Parameterize avatarStandingFriction and reduce to 10 from 999. The latter high value made avatars very hard to push. Set CCD parameters for prims and characters of specified.
* BulletSim: remove some unused API2 calls because they were removed from ↵Robert Adams2012-10-111-2/+2
| | | | Bullet 2.81
* BulletSim: Use full linkset mass when computing vehicle gravity force. Add ↵Robert Adams2012-10-111-2/+10
| | | | taint-time specification to new AddForce().
* BulletSim: cosmetic changes (comments and renaming). Give mass to terrain to ↵Robert Adams2012-10-111-4/+6
| | | | improve interactions.
* BulletSim: Add Force* operations to objects to allow direct push to engine.Robert Adams2012-10-111-4/+29
| | | | | | | | | | 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-3/+6
| | | | | | | | 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: Add ForcePosition and ForceOrientation to BSPhysObject and to its ↵Robert Adams2012-10-021-5/+34
| | | | children of BSPrim and BSCharacter.
* BulletSim: impliment FloatOnWater OS function.Robert Adams2012-10-021-5/+72
|
* BulletSim: remove warnings for unused variables.Robert Adams2012-10-021-12/+5
|
* BulletSim: remember to release the physical body and shape when a prim is ↵Robert Adams2012-09-281-9/+9
| | | | destroyed. This fixes many problems with physical linksets.
* BulletSim: add separate runtime and taint-time linkset children lists to ↵Robert Adams2012-09-271-2/+1
| | | | keep the creation of constraints separate from runtime.
* BulletSim: rename some constraint variables to be consistant with other name ↵Robert Adams2012-09-271-3/+11
| | | | | | | | | 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-106/+106
|
* BulletSim: remove the unused body management code from BSPrim. There is no ↵Robert Adams2012-09-271-374/+0
| | | | going back now.
* BulletSim: Fix linkset crash. Caused by the different body and shapeRobert Adams2012-09-271-5/+17
| | | | | | | 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: Terrain sets proper collision flags on creation.Robert Adams2012-09-271-32/+30
| | | | | | Static objects are set to ISLAND_SLEEPING rather than DISABLE_SIMULATION. Might reconsider this and, alternatively, have dynamic objects force activation. Clean up use of DetailLog().
* BulletSim: btGhostObjects working to make 'volume detect' work.Robert Adams2012-09-271-6/+22
| | | | | | | | | | 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-59/+100
| | | | | | | | | | | | 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: fix regression that caused cylindar shapes to have a box ↵Robert Adams2012-09-271-1/+9
| | | | collision shape
* BulletSim: complete code for managed code shape and body tracking. Not debugged.Robert Adams2012-09-271-43/+78
| | | | | 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-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.