teravus
5128ae7b86
* This adds llVolumeDetect functionality to the C# implementation of BulletSim.
2013-01-25 20:15:37 -05:00
Robert Adams
6a5d088197
BulletSim: reduce the force of gravity on ground vehicles when they
...
are on the ground. Makes them a little more stable.
2013-01-24 16:26:04 -08:00
Robert Adams
a2a32fc844
BulletSim: reduce the zeroing threshold for rotational velocity.
...
Sometimes settling of a vehicle from gravity introduces small
velocities that need to be kept.
2013-01-24 14:36:00 -08:00
Robert Adams
591faac3ac
BulletSim: disable CCD (continuious collision detection) and
...
contact processing threshold since the first didn't solve tunneling
problems but used resources and the latter caused instabilities.
2013-01-24 14:35:42 -08:00
Robert Adams
2cf29c87bc
BulletSim: zero motion on an object that we pop up because it is
...
below terrain. If the position is being corrected because it is out
of bounds, all other movement rules are out the window.
2013-01-24 14:35:23 -08:00
Robert Adams
3ecfddd791
BulletSim: remove exception that can happen when setting physics parameters from the console.
2013-01-24 14:35:05 -08:00
teravus
d5b950633d
* Added in the manifold point dept on collision desc. In BulletSim engine BulletXNA.
2013-01-24 07:36:24 -05:00
teravus
ba9d6b7337
* Repairs the Object updates, Collision updates, and Child Prim methods making the bulletXNA engine work again.
...
* The only thing that had an issue was when creating a new RigidBody, BulletXNA didn't know the type SimMotionState and the upcast type is unknown in the constructor. Therefore, I had to update the IMotionState with a new method 'SetBody'. All of the duplicated type information has been removed and BulletXNA is not relying on any non-standard types external to the library.
2013-01-24 07:11:32 -05:00
Robert Adams
1c3d84fe03
BulletSim: pass up and report the real collision penetration.
2013-01-23 16:20:44 -08:00
Robert Adams
a7b810ddee
BulletSim: remove setting of vehicle InterpolationRotationalVelocity.
...
This doesn't seem to help the vehicle stability.
Rename vehicle internal variables adding a "V" or "W" so it is clear
when coordinates are vehicle or world relative.
2013-01-23 14:25:42 -08:00
Robert Adams
13182904da
BulletSim: small change to center-of-mass computation left out last commit
2013-01-23 14:25:30 -08:00
Robert Adams
a5e9c665f0
BulletSim: center-of-gravity linkset changes. Not working yet.
...
Conflicts:
OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
2013-01-23 14:25:18 -08:00
Robert Adams
c1371ab786
BulletSim: working on COM
2013-01-23 14:25:06 -08:00
Robert Adams
775fd6f8cc
BulletSim: fix build break introduced by previous commit
2013-01-23 14:24:54 -08:00
Robert Adams
a0d460e6bf
BulletSim: remove the unused RestoreBodyDependencies used by linksets
...
and vehicles and clean up code by removing their kludgyness.
2013-01-23 14:24:42 -08:00
Robert Adams
80b1e32bfa
BulletSim: Tweeks to vehicle motion.
...
Pass through old angular velocity making for smoother transitions.
Remove some old kludges for angular motion (damping and rotvel suppression).
2013-01-21 23:43:24 -08:00
Robert Adams
471c477863
BulletSim: allow changing position and rotation of a child of a linkset
...
without rebuilding the whole compound shape. Should make vehicles move
smoother.
2013-01-21 15:58:22 -08:00
Robert Adams
3f6698a595
BulletSim: remove unused MaxTaintsToProcessPerStep parameter
2013-01-21 09:19:09 -08:00
Robert Adams
52b341e2e2
BulletSim: More aggressive as setting character velocity to zero
...
when should be standing.
Modify angular force routines to be the same pattern as linear force routines.
BulletSim vehicle turning is scaled like SL and is DIFFERENT THAN ODE!!
Fix some bugs in BSMotor dealing with the motor going to zero.
Add a bunch of parameters: MaxLinearVelocity, MaxAngularVelocity,
MaxAddForceMagnitude, VehicleMaxLinearVelocity, VehicleMaxAngularVelocity,
and most of the values are defaulted to values that are larger
than in SL.
Use the new parameters in BSPrim, BSCharacter and BSDynamic.
2013-01-20 23:09:54 -08:00
Robert Adams
3c4868f613
BulletSim: fix problem of avatar sliding very slowly occasionally after stopping walking. Consolidate movement tests into the one prestep motion action
2013-01-20 23:09:54 -08:00
Robert Adams
2cb1d5240e
BulletSim: small fix making sure terrain height is calculated
...
properly if the vehicle moves during vehicle actions.
2013-01-20 23:09:54 -08:00
Robert Adams
3b0df52d10
BulletSim: modify motors to return correction rather than current value
...
to better use them for incremental updates.
Modify prim and character to use the new motors.
Simplify the vehicle linear movement code to just update the velocity
directly or the basic movement.
2013-01-20 23:09:53 -08:00
teravus
2c517d792f
This updates prebuild to remove BulletSimN, implements the BulletSim API in BulletSPlugin using the BulletXNA Bullet physics engine. It also updates the BulletXNA library to be compatible with the changes. OpenSimDefaults has been updated to describe how to switch engines and terrain implementations.
2013-01-20 08:18:16 -05:00
Robert Adams
c6b6c94ccb
BulletSim: reduce jitter in avatar velocity when walking or flying.
...
OpenSimulator is VERY sensitive to changes in avatar velocity and
will send an avatar update message when velocity changes more than
0.001m/s. This significantly reduces the number of avatar update messages by
smoothing the avatar velocity returned by Bullet.
2013-01-18 11:39:24 -08:00
Robert Adams
482c7b5368
BulletSim: add logic to turn off pre-step actions when object goes
...
non-active. This turns off 'setForce', 'setTorque' and 'moveToTarget'
when the object is selected or made non-physical.
2013-01-18 11:37:36 -08:00
Robert Adams
75f710f1e7
BulletSim: Add one function that all actors who act on the physical
...
can use to know if the object is currently active.
Code cleaning including use of Util.ClampV function.
2013-01-17 14:47:35 -08:00
Robert Adams
8ee9daa121
BulletSim: add the editting children in linkset going phantom bug to TODO list.
2013-01-15 21:08:47 -08:00
Robert Adams
5d098d8f17
BulletSim: don't modify angular parameters when doing LIMIT_MOTOR_UP.
...
It was a dumb idea to try and do a nose over feature for jumping cars anyway.
Add better logging of native shape creation/reuse so can tell the difference.
2013-01-15 21:08:46 -08:00
Robert Adams
61ff79587b
BulletSim: add debugging messages to know when assets for physical
...
objects have been fetched.
Update TODO list with more work.
2013-01-15 21:08:46 -08:00
Robert Adams
daef2b8d87
BulletSim: reduce maximum force a script can apply (like in llApplyImpulse)
...
to the documented maximum from the outragious number previously.
2013-01-15 21:08:46 -08:00
Robert Adams
021964c6e0
BulletSim: tweeks to improve hover.
2013-01-15 04:24:24 -08:00
Robert Adams
181d4c6fcb
BulletSim: temporarily disable banking and direction deflection
...
because the computations are wrong.
Add VehicleTorqueImpulse routines.
2013-01-15 02:58:14 -08:00
Robert Adams
0374b2a0b4
BulletSim: fix logic for enabling unmanaged code debug messages.
...
Free pinned memory when physics engine is unloaded.
2013-01-15 02:21:38 -08:00
Robert Adams
13778c895a
BulletSim: by default, turn on continuious collision detection (CCD)
...
and enable friction computation caching. Remove dangerous BulletSim
settings from OpenSimDefaults.ini.
2013-01-15 01:44:34 -08:00
Robert Adams
4e1ca890c2
BulletSim: fix not moving physical objects below terrain to over terrain.
...
Add locking on register prestep action list preventing potential race conditions.
Little comment and formatting changes.
2013-01-14 15:46:46 -08:00
Robert Adams
8bf0a9f85d
BulletSim: disable center-of-mass computation for linksets until debugged. Move physical prim above ground if it is underground. Previously tried to correct by applying and up force but the prim would never go through the ground.
2013-01-14 07:50:58 -08:00
Robert Adams
459fcd81c9
BulletSim: move center of gravity of linkset to its geometric center.
...
Necessitated allowing simulator and physical position of a body to
get out of sync since Bullet assumes that <0,0,0> is the center of mass.
Update DLLs and SOs for the UpdateChildTransform so positions of
individual prim in a linkset can be implemented.
2013-01-11 16:47:53 -08:00
Robert Adams
eacc2561d1
BulletSim: add osGetPhysicsEngineType() LSL function and update
...
the physics engines to return the name that is specified in the INI
file ("physics = XXX") as the type of engine.
This os function is a little different than the others in that it
does not throw an exception of one is not privilaged to use it.
It merely returns an empty string.
2013-01-11 16:47:35 -08:00
Robert Adams
93adc4cb66
BulletSim: Add IsSelected attribute to physical objects. Have vehicles check to see if physical before trying to step. Replace vehicle gravity application. Previously relying on Bullet to apply gravity but since vehicles over-ride the velocity calculation, gravity never had a chance to accelerate the body down. Added AddForceImpulse as well as AddForce for those who need to apply immediate velocity updates. Use the impulse to apply the linear motion.
2013-01-11 16:47:20 -08:00
Robert Adams
7e58bbaac6
BulletSim: Redo linear function coding so they can better interact. New algorithm for limitMotorUp that relies on going up when not colliding rather than distance from ground. Add parameter for turning on and off embedded source vehicle debugging.
2013-01-11 16:46:53 -08:00
Robert Adams
98168edc29
BulletSim: remove double application of buoyancy. Centralize computation of buoyancy. Add motor angular debugging controls.
2013-01-11 16:46:38 -08:00
Robert Adams
b592ec265b
BulletSim: fix the 'No recognised physics mesh found ...' error spew by remembering that the last asset fetch failed until the simulator resets the shape parameters.
2013-01-11 16:44:34 -08:00
Robert Adams
df1d7414ad
BulletSim: Fix hover height (boats float at the correct level).
...
Fix problem of vehicles going crazy when backing up.
2013-01-08 16:37:49 -08:00
Robert Adams
1603606f1d
BulletSim: improve vehicle angular banking and deflection computation. Rotate angular correction forces to be world relative rather than vehicle relative.
2013-01-07 22:00:50 -08:00
Robert Adams
8452c0a870
BulletSim: add function to push avatar up when hitting stairs.
...
It looks like BulletSim and ODE rely on penetration correction to cause
the avatar to move up and thus allowing walking up stairs. Object
penetration was minimized for walking and flying (so one doesn't go
through walls) and this stopped stairs from working. This commit
introduces avatar movement code to check for collisions at the
feet while walking and attempts to raise the avatar for the steps.
Not yet perfect but movement is better.
2013-01-07 16:05:02 -08:00
Robert Adams
599dbc3d95
BulletSim: fix exception when re-creating the terrain when loading an OAR file
2013-01-07 16:04:21 -08:00
Robert Adams
2e5222055f
BulletSim: comments and removing small compile errors introduced in last commit.
2013-01-06 22:56:16 -08:00
Robert Adams
9393403253
BulletSim: update DLLs and SOs with better debugging output.
...
Add definition of hand crafted avatar mesh. Not used yet.
Comments and cleanup.
2013-01-06 14:01:15 -08:00
Robert Adams
2eba80a8cd
BulletSim: fix problem where mesh shapes were physically just their bounding box and not the complete mesh. Fill mesh physical objects are back.
2013-01-04 17:06:52 -08:00
Robert Adams
48cfc6d089
BulletSim: implement llMoveToTarget by adding PIDActive, etc.
...
Implementation of non-vehicle hover but haven't tested it a lot.
Update TODO list.
2013-01-04 17:06:51 -08:00