aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-10-12BulletSim: only use native sphere shape if it is a sphere.Robert Adams1-1/+2
2012-10-11BulletSim: fix problem with some shapes (like cylinders) being implemented ↵Robert Adams1-1/+1
as cubes.
2012-10-11BulletSim: remove some unused API2 calls because they were removed from ↵Robert Adams2-14/+2
Bullet 2.81
2012-10-11BulletSim: normalize physics FPS to 45 (for real this time).Robert Adams1-2/+2
2012-10-11BulletSim: normalize physics FPS to 45.Robert Adams1-3/+4
2012-10-11BulletSim: Use full linkset mass when computing vehicle gravity force. Add ↵Robert Adams3-11/+16
taint-time specification to new AddForce().
2012-10-11BulletSim: Change defaults for constraint CFM and ERP to make large linksets ↵Robert Adams2-11/+8
more rigid. Remove mass calculation for terrain (it should stay a static object).
2012-10-11BulletSim: cosmetic changes (comments and renaming). Give mass to terrain to ↵Robert Adams7-52/+74
improve interactions.
2012-10-11BulletSim: Add Force* operations to objects to allow direct push to engine.Robert Adams7-29/+100
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.
2012-10-11BulletSim: Fix crash when linking large physical linksets.Robert Adams8-102/+132
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.
2012-10-09av_av_collisions_off = false OdePhysics Settings in OpenSimDefaults.ini - ↵teravus1-2/+9
No Avatar Avatar Collisions. This causes avatar to be able to walk through each other as if they're ghosts but still interact with the environment.
2012-10-09Add config option to plant avatar where they are reducing avatar avatar ↵teravus2-3/+9
'pushability' av_planted see OpenSimDefaults.ini. Use when you have unruly visitors that rudely push each other around. Still allows a small amount of movement based on the avatar movement PID controller settings. You can increase the spring tension in the PID controller and really prevent any movement if you would like.
2012-10-03Soliciting for comments on smoothness of physics objects for this build.teravus2-8/+46
This introduces expected contact point hints to the ODE Collider to better determine when to throttle updates as excessive. This /should/ smooth physics objects out again, however, I cannot know every configuration of OpenSimulator, so I'm requesting that testers please examine this change on their build. Thanks!
2012-10-03I propose that 0.5m/step change for linear velocity is too big of a change ↵teravus1-1/+15
to control the reporting of a new angular velocity. I think that this could be here for one of two reasons, 1. vehicles and llMoveToTarget with axis lock, or 2. To attempt to make things look more stable in the physics scene then they really are, however, this also really affects the angular velocity reporting negatively causing things to spin wildly and jump back into place repeatedly. To compromise, if the prim is a vehicle or is being used as a motor target, the original functionality is still applied. If that's not the case, angular velocity is reported with a linear velocity of 0.02m/step. To be clear on the effect of the physical world... When you push things, there's still a lag time where you walk into the object but once the object is in motion, it begins to move as you would expect so results in slightly more realistic motion.
2012-10-02Minor Modification, switch /2 to 0.5f in ODEPrim.Velocityteravus1-4/+4
2012-10-02BulletSim: Make parameter value defaults match what should be the default ↵Robert Adams2-14/+14
and what is in OpenSimDefaults.ini. Comment and debug printout changes.
2012-10-02BulletSim: Add ForcePosition and ForceOrientation to BSPhysObject and to its ↵Robert Adams3-5/+64
children of BSPrim and BSCharacter.
2012-10-02BulletSim: Fix problem where box shapes were not being rebuilt if the shape ↵Robert Adams1-4/+6
type changed.
2012-10-02BulletSim: Fix linkset problem where delayed manipulations of child objects ↵Robert Adams1-10/+8
was using the child shape address at call time rather than the one created at taint time.
2012-10-02BulletSim: call ForcePosition and ForceOrientation in BSDynamics so there is ↵Robert Adams1-39/+57
no lag between what the vehicle code sees and what the physics engine is using.
2012-10-02BulletSim: fix the FloatOnWater code so avatars can normally go underwater.Robert Adams1-1/+1
2012-10-02BulletSim: impliment FloatOnWater OS function.Robert Adams3-22/+104
2012-10-02Correct my name in CONTRIBUTORS.txtRobert Adams1-35/+16
2012-10-02BulletSim: remove warnings for unused variables.Robert Adams3-14/+7
2012-09-28BulletSim: remember to release the physical body and shape when a prim is ↵Robert Adams2-16/+16
destroyed. This fixes many problems with physical linksets.
2012-09-27BulletSim: add separate runtime and taint-time linkset children lists to ↵Robert Adams3-80/+93
keep the creation of constraints separate from runtime.
2012-09-27BulletSim: rename some constraint variables to be consistant with other name ↵Robert Adams7-116/+231
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.
2012-09-27BulletSim: remove the trailing spaces from lines to make git happierRobert Adams10-276/+275
2012-09-27BulletSim: remove the unused body management code from BSPrim. There is no ↵Robert Adams1-374/+0
going back now.
2012-09-27BulletSim: Fix linkset crash. Caused by the different body and shapeRobert Adams9-94/+182
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.
2012-09-27BulletSim: Terrain sets proper collision flags on creation.Robert Adams4-52/+56
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().
2012-09-27BulletSim: btGhostObjects working to make 'volume detect' work.Robert Adams7-191/+265
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.
2012-09-27BulletSim: renamed members of BulletShape, BulletSim and BulletBodyRobert Adams11-270/+482
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.
2012-09-27BulletSim: fix regression that caused cylindar shapes to have a box ↵Robert Adams1-1/+9
collision shape
2012-09-27BulletSim: complete code for managed code shape and body tracking. Not debugged.Robert Adams5-130/+675
Eliminate some null exceptions created adding the above code. Add and remove some detailed logging statements.
2012-09-27BulletSim: add class and infrastructure for shape and objectRobert Adams5-39/+192
tracking in the C# code. Needed for the changing body type (to and from GhostObjects) for volumeDetect.
2012-09-27BulletSim: Convert BSCharacter to use common BSPhysObject code and variables.Robert Adams5-117/+113
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).
2012-09-27BulletSim: move a bunch of common logic out of BSPrim and BSCharacterRobert Adams7-416/+361
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'.
2012-09-15BulletSim: update DLLs and SOs and remove some debugging code.Robert Adams1-1/+1
2012-09-15BulletSim: some debugging prints in BSPrim for tracking changes in linkset ↵Robert Adams1-1/+3
children.
2012-09-15BulletSim: add the debugging routine DumpRigidBody2() to API2.Robert Adams1-3/+6
2012-09-15BulletSim: another attempt at computing physics FPS correctly.Robert Adams1-23/+6
2012-09-15BulletSim: remove timeStep parameter from calls for vehicle parameter ↵Robert Adams2-9/+6
setting. There is no reason these should be using the simulation time interval for parameter calculation.
2012-09-15BulletSim: Remove calculation and passing of unused collied object type.Robert Adams4-28/+36
Fix collision code to properly sense mega-region children regions as terrain. When setting an object physical, reset all the physical properties (friction, ...).
2012-09-15BulletSim: set all linkset objects center of mass to the whole linkset's ↵Robert Adams1-2/+15
center of mass
2012-09-15BulletSim: Add calls to linkset class when object going static or dynamic.Robert Adams2-8/+32
Reset center of mass on an object when going dynamic.
2012-09-15BulletSim: remove unused NeedsMeshing() code from BSScene.Robert Adams1-116/+0
2012-09-15BulletSim: Add 'IsNativeShape2' callRobert Adams1-4/+7
2012-09-15BulletSim: Way too many changes in one commit.Robert Adams9-286/+351
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.
2012-09-07BulletSim: Add Bullet body and shape to BSPhysObject and renameRobert Adams6-62/+505
'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.