aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSDynamics.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-12-17BulletSim: apply friction to linear and angular motion before returning ↵Robert Adams1-6/+0
advanced motor value. This seems to be the problem with BulletSim vehicles turning too quickly. Also removed the configuration parameter that controlled the timestep scaling kludge for angular velocity that was added to research the question of quick turning.
2012-12-17BulletSim: fix vehicles going underground when unsat. Problem was that, when ↵Robert Adams1-20/+23
doing unsit, the order of operations on the prims and the vehicle is very chaotic and not in a good order so the root prim was being left physical and thus it fell for a bit. Also changed default of velocity scaling to be closer to the movement standard.
2012-12-16BulletSim: fix vehicles being shot in the air at border crossings because of ↵Robert Adams1-2/+5
mis-application of correction to postion for below groundness.
2012-12-11BulletSim: modify LIMIT_MOTOR_UP to limit BOAT types to be at water rather ↵Robert Adams1-2/+2
than ground level. This makes boats float at water level better but not perfectly. There probably needs to be some interaction between HOVER and LIMIT_MOTOR_UP.
2012-12-11BulletSim: add ini file and command line parameters to controlRobert Adams1-3/+6
dumping of physical vehicle parameters (out of Bullet) on each simulation step and to optionally scale vehicle angular velocity by the time step. The latter looks to be part of a difference between angular parameters for ODE and BulletSim. SL docs say angular velocity is measured in radians/timeScale. Not sure if this is different than what ODE does.
2012-12-10BulletSim: comment out some chatty debug logging. Rearrange some code in ↵Robert Adams1-3/+5
BSDynamics to make velocity vs force calculation clearer.
2012-12-06BulletSim: rewrite and improve vehicle angularDeflection, verticalAttraction,Robert Adams1-83/+129
linearMotorUp and related vehicle forces. Fixed problems with downward vehicle position correction forces being too large. Add vehicle collision flag so can sense whether vehicle is on the ground.
2012-12-06BulletSim: Don't add gravity to down force -- let Bullet do that. Add ↵Robert Adams1-14/+28
VehicleAddForce to set of managed vehicle prim properties.
2012-12-06BulletSim: Vehicle angular vertical attraction works. Other vehicle angular ↵Robert Adams1-20/+35
forces commented out for the moment for debugging.
2012-12-03BulletSim: Reduce idle region physics overhead where there are MANYRobert Adams1-35/+46
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.
2012-12-03BulletSim: rework angular corrections to remove any hybrid code and compute ↵Robert Adams1-107/+97
absolute collections.
2012-12-03BulletSim: revert angular vertical attraction from motor to code. The motor ↵Robert Adams1-47/+19
code did not return the restoring difference but the current value. Remove unused commented out code.
2012-12-03BulletSim: format vehicle detail logging messages so vehicle changs are ↵Robert Adams1-14/+14
grouped better in the log output.
2012-12-03BulletSim: localize vehicle property setting so the vehicle prim is only ↵Robert Adams1-33/+128
updated at the end of the vehicle simulation step and the push of the physics property update event only happens if the properties are actually changed.
2012-12-01BulletSim: Add DumpActivationInfo2 function. Change static objects from ↵Robert Adams1-6/+6
DISABLE_SIMULATION to ISLAND_SLEEPING. Update DLLs and SOs to add DumpActivationInfo2 function.
2012-11-29BulletSim: remove time scaling of computed vehicle absolute velocity since ↵Robert Adams1-37/+61
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.
2012-11-29BulletSim: add copyright header where it is missing. Remove some unnecessary ↵Robert Adams1-2/+0
'using' requirements so testing framework is less complicated.
2012-11-29BulletSim: reverse direction of hover correction. Removes problem with ↵Robert Adams1-8/+8
vehicles being orbited.
2012-11-28BulletSim: fix boats floating low by removing LIMIT_MOTOR_UP flag from ↵Robert Adams1-3/+15
TYPE_BOAT definition.
2012-11-28BulletSim: move GetWaterLevelAtXYZ from BSScene to BSPhysTerrain.Robert Adams1-4/+6
2012-11-27BulletSim: reorganize linear movement routine into separate subroutines ↵Robert Adams1-58/+79
enabling external calibration routines and unit tests.
2012-11-27BulletSim: reorganize angular movement routine into separate subroutines ↵Robert Adams1-95/+114
enabling external calibration routines and unit testing.
2012-11-27BulletSim: implementation of vertical attraction motor.Robert Adams1-41/+62
2012-11-26BulletSim: increase vehicle stability by suppressing Bullet's update to ↵Robert Adams1-8/+13
angular velocity.
2012-11-25BulletSim: use m_angularMotor to do the basic movement. Add the setting of ↵Robert Adams1-60/+64
same. Rename the angular forces and add comments to match MoveAngular to the form of MoveLinear.
2012-11-25BulletSim: organize MoveLinear code for understandability. Make ↵Robert Adams1-89/+40
LIMIT_MOTOR_UP contribution a velocity and not a force.
2012-11-25BulletSim: add BSVMotor as BSDynamics linear motor.Robert Adams1-13/+42
Properly limit *_MOTOR_DECAY_TIMESCALE to 120 as per specs. Invode BSDynamics.Refresh() when vehicle type is changed. Previously the vehicle properties weren't getting set because the physical properties were set before the vehicle type was set. Add a "use name" to BSMotors for identification while debugging. Correct current and target confusion in BSVMotor design. Rename CurrentValueReductionTimescale to FrictionTimescale. Event more detailed logging.
2012-11-25BulletSim: clean up TODO list. It is kept somewhere wlse that should be more ↵Robert Adams1-1/+1
public. Add error logging for the detail log writer so a message is output when it cannot write to the specified logging directory. Modify friction defaults to be closer to ODE's values. Add new collision margin and vehicle angular damping parameters.
2012-11-25BulletSim: small change to add position correction force with AddForce ↵Robert Adams1-11/+18
rather than just storing it in the variable
2012-11-06BulletSim: many changes to tune vehicles for BulletSim.Robert Adams1-63/+161
The problem left is that the vehicle sitting on something needs to press down for gravity and what its sitting on pushes up so the vehicle does not penetrate. The effect is Bullet calculates a lot of random angular motion for the vehicle. Various schemes of damping and zeroing has not resolved the problem.
2012-11-03BulletSim: fix compound linkset crash by not freeing shape of child prims.Robert Adams1-3/+3
Remove all compilation warnings (mostly 'protected' in sealed classes.) Add the dynamicAabbEnable parameter to creation of compound shapes.
2012-11-03BulletSim: rename BSBody and BSShape to PhysBody and PhysShape. Add skeleton ↵Robert Adams1-2/+2
of BSLinksetCompound.
2012-11-03BulletSim: vehicle tweeking.Robert Adams1-84/+52
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.
2012-11-03BulletSim: Add gravity force to vehicle. Some debugging additions.Robert Adams1-2/+6
2012-11-03BulletSim: many small changes for vehicles simulation.Robert Adams1-31/+40
2012-11-03BulletSim: Add banking and other new code to vechile dynamics. Add third ↵Robert Adams1-179/+310
party license and contributor in for for Aurora-Sim project for physics code.
2012-10-22BulletSim: fix bug that caused error (and a crash on 32 bit Linux) when mesh ↵Robert Adams1-2/+3
assets weren't already in the cache. Comment cleanups.
2012-10-22BulletSim: remove trailing spaces to make git happy.Robert Adams1-5/+5
2012-10-11BulletSim: Use full linkset mass when computing vehicle gravity force. Add ↵Robert Adams1-3/+3
taint-time specification to new AddForce().
2012-10-11BulletSim: Add Force* operations to objects to allow direct push to engine.Robert Adams1-6/+6
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 Adams1-1/+1
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-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-02Correct my name in CONTRIBUTORS.txtRobert Adams1-35/+16
2012-09-27BulletSim: remove the trailing spaces from lines to make git happierRobert Adams1-7/+7
2012-09-27BulletSim: Fix linkset crash. Caused by the different body and shapeRobert Adams1-55/+68
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: move a bunch of common logic out of BSPrim and BSCharacterRobert Adams1-5/+5
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: remove timeStep parameter from calls for vehicle parameter ↵Robert Adams1-6/+3
setting. There is no reason these should be using the simulation time interval for parameter calculation.
2012-09-15BulletSim: Way too many changes in one commit.Robert Adams1-122/+96
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-08-31BulletSim: Changes to terrain storage and management so mega-regions work.Robert Adams1-4/+5
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.