Commit Graph

1515 Commits (879cbb45753bf3f3144512748acd8faf120fc626)

Author SHA1 Message Date
Robert Adams aec8d1e6be BulletSim: Turn on center-of-mass calculation by default.
Reduce object density by factor of 100 to bring physical mass computations
into a range better suited for Bullet.
2013-07-23 09:09:25 -07:00
Robert Adams f499b328c4 Revert "Revert "BulletSim: Add logic to linksets to change physical properties for""
Found that the vehicle movement problem was not caused by these physics changes.

This reverts commit 84d0699761.
2013-07-23 08:14:20 -07:00
Robert Adams 75686e0e49 Revert "Revert "BulletSim: change BSDynamics to expect to be passed a BSPrimLinkable""
Found that the vehicle movement problem was not caused by these physics changes.

This reverts commit 7b187deb19.
2013-07-23 08:13:56 -07:00
Robert Adams b14156aa63 Revert "Revert "BulletSim: only create vehicle prim actor when vehicles are enabled.""
Found that the vehicle movement problem was not caused by these physics changes.

This reverts commit 5f7b2ea81b.
2013-07-23 08:13:29 -07:00
Robert Adams aec8852af7 Revert "Revert "BulletSim: move collision processing for linksets from BSPrimLinkable""
Found that the vehicle movement problem was not caused by these physics changes.

This reverts commit c45659863d.
2013-07-23 08:13:01 -07:00
Robert Adams 401c2e2f2e Revert "Revert "Add experimental stubs for an extension function interface on both""
Found that the vehicle movement problem was not caused by these physics changes.

This reverts commit 89857378ce.
2013-07-23 08:12:34 -07:00
Robert Adams af9deed135 Revert "Revert "BulletSim: freshen up the code for constraint based linksets.""
Found that the vehicle movement problem was not caused by these physics changes.

This reverts commit 44543ebe63.
2013-07-23 08:11:21 -07:00
Robert Adams 44543ebe63 Revert "BulletSim: freshen up the code for constraint based linksets."
The changes don't seem to be ready for prime time.

This reverts commit 803632f8f3.
2013-07-22 12:10:23 -07:00
Robert Adams 89857378ce Revert "Add experimental stubs for an extension function interface on both"
The changes don't seem to be ready for prime time.

This reverts commit 13a4a80b38.
2013-07-22 12:09:55 -07:00
Robert Adams c45659863d Revert "BulletSim: move collision processing for linksets from BSPrimLinkable"
The changes don't seem to be ready for prime time.

This reverts commit b4c3a791aa.
2013-07-22 12:09:17 -07:00
Robert Adams 5f7b2ea81b Revert "BulletSim: only create vehicle prim actor when vehicles are enabled."
The changes don't seem to be ready for prime time.

This reverts commit acb7b4a09a.
2013-07-22 12:08:49 -07:00
Robert Adams 7b187deb19 Revert "BulletSim: change BSDynamics to expect to be passed a BSPrimLinkable"
The changes don't seem to be ready for prime time.

This reverts commit d0d654e218.
2013-07-22 12:08:25 -07:00
Robert Adams 84d0699761 Revert "BulletSim: Add logic to linksets to change physical properties for"
The changes don't seem to be ready for prime time.

This reverts commit b44f0e1a00.
2013-07-22 12:07:42 -07:00
Robert Adams b44f0e1a00 BulletSim: Add logic to linksets to change physical properties for
whole linkset.
Override physical property setting for BSLinksetCompound as there are
not children to the compound spape.
2013-07-22 10:27:24 -07:00
Robert Adams d0d654e218 BulletSim: change BSDynamics to expect to be passed a BSPrimLinkable
and start changing the logic to handle the base prim as a complex
object (ie, a linkset).
2013-07-22 10:27:21 -07:00
Robert Adams acb7b4a09a BulletSim: only create vehicle prim actor when vehicles are enabled. 2013-07-22 10:27:18 -07:00
Robert Adams b4c3a791aa BulletSim: move collision processing for linksets from BSPrimLinkable
into the linkset implementation classes.
Add HasSomeCollision attribute that remembers of any component of
   a linkset has a collision.
Update vehicle code (BSDynamic) to use the HasSomeCollision in place of
   IsColliding to make constraint based linksets properly notice the ground.
Add linkset functions to change physical attributes of all the members
   of a linkset.
2013-07-22 10:27:15 -07:00
Robert Adams 13a4a80b38 Add experimental stubs for an extension function interface on both
PhysicsScene and PhysicsActor.
2013-07-22 10:27:09 -07:00
Robert Adams 803632f8f3 BulletSim: freshen up the code for constraint based linksets. 2013-07-22 10:27:06 -07:00
Robert Adams 1d65b0d802 BulletSim: add position resetting for stationary avatars so they don't
move around when standing on a stationary object.
Create proper linkage between BSCharacter and its actor by generating
a UpdatedProperties event the same way BSPrim does.
2013-07-18 19:09:55 -07:00
Robert Adams 2c8bf4aaa6 BulletSim: fix small bug where everything looked like it was colliding
before the first simulator step.
2013-07-17 10:19:44 -07:00
Robert Adams 2c761cef19 BulletSim: add parameter to optionally disable vehicle linear deflection.
Add parameter to not apply vehicle linear deflection Z forces if
vehicle is not colliding. This defaults to 'true' so vehicles will fall
even if there is some linear deflection to apply.
2013-07-09 09:37:42 -07:00
Robert Adams fad4241e4e BulletSim: make all the different angularVerticalAttraction algorithms
selectable from configuration paramters.
Changed default algorithm to "1" from previous default as it seems to
handle Y axis correction a little better.
Add config file independent enablement of vehicle angular forces to
make debugging easier (independent testing of forces).
2013-07-08 16:24:31 -07:00
Justin Clark-Casey (justincc) 047ef9c2a5 minor: remove some mono compiler warnings in OdePlugin 2013-07-08 23:36:57 +01:00
Vegaslon bbc40fab62 BulletSim: Different Implementation of Angular Deflection for vehicles, Activates it again and fixes problem with fighting with vertical attractor removing wobble of forward axis. Comments on testing welcome, May require adjustments of this force or other forces after this commit, exact tweaking to come after testing on other hardware.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-07-07 06:18:50 -07:00
Robert Adams 6026759406 BulletSim: fix jumping up and down of linksets when center-of-mass
was enabled. Didn't effect the physical position but the viewer saw
the linkset jumping between its simulator center and its physical
center.
2013-07-07 05:47:41 -07:00
Robert Adams 70d24a654b BulletSim: rename position and orientation variables to remove the
inconsistant use of Raw* and _* conventions.
2013-07-07 05:46:24 -07:00
Robert Adams a65cec3986 BulletSim: implementation of linkset center-of-mass.
Default off, for the moment, until more testing.
Add separate thread and center-of-mass flags to OpenSimDefaults.ini.
Clean up comments in OpenSimDefaults.ini.
2013-07-06 08:25:15 -07:00
Robert Adams 97698ae311 BulletSim: More tweaking on center-of-mass. Almost there. Changes have no effect if LinksetOffsetCenterOfMass=false (the default). 2013-07-06 08:25:15 -07:00
Robert Adams 03268d85c4 BulletSim: comments and non-functional changes working toward the center-of-gravity implementation. 2013-07-06 08:25:14 -07:00
Robert Adams 5f97c6f8f0 BulletSim: non-functional updates. Comments and formatting.
Update TODO list.
2013-07-06 08:25:13 -07:00
Robert Adams 8eb86c9ec9 BulletSim: add the reset of the last commit for flush log file problems.
Fix small typo in one log message.
2013-06-30 19:22:43 -07:00
Robert Adams c24c99f4ba BulletSim: fix an occasional crash with flushing log files. 2013-06-30 19:08:15 -07:00
Robert Adams 9d5ae75950 BulletSim: remove the handle to the vehicle actor and cause routines
that need it to look it up.
2013-06-30 17:07:51 -07:00
Robert Adams 425d2a2a97 BulletSim: set linkset type to be prim specific rather than a simulator
wide default. This allows individual prims to differ in the
underlying linkset implementation.
2013-06-30 17:07:50 -07:00
Robert Adams 23516717e4 BulletSim: a better version of llMoveToTarget that doesn't go crazy.
There is still some overshoot but mostly fixes Mantis 6693.
Fix bug where moveToTarget was active for non-physical objects
and while selected.
Fix bug where move target was not getting changed if the script
changed the target during a move.
2013-06-30 17:07:49 -07:00
Robert Adams 2f4a729d40 BulletSim: add inTaintTime parameter to collision cache clear function. 2013-06-30 17:07:48 -07:00
Robert Adams 74539659f6 BulletSim: move new linear deflection code to own routine.
Remove VehicleForwardVelocity changed storage since the value
will be modified as movement is processed.
2013-06-21 10:46:21 -07:00
Vegaslon a5de4f692b BulletSim: Implementation of Linear Deflection, it is a partial help for the vehicle tuning diffrence between Opensim and Second life.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-06-20 19:02:15 -07:00
Robert Adams bbeff4b8ca BulletSim: rework velocity updating when not colliding and not flying
to prevent infinite jumps. Now jumps last only AvatarJumpFrames long
(default 4) which is about as high as in SL.
TODO: jumping should only depend on standing (collision with feet)
rather than collision anywhere on the avatar.
2013-06-20 09:55:40 -07:00
Robert Adams 3cb65f0d31 BulletSim: when meshing or asset fetching fails, include position
and region with the offending object's name in the error message.
2013-06-11 17:58:08 -07:00
Robert Adams 795acaa6aa BulletSim: add failure flag for meshing failure vs asset fetch failure
so error messages make more sense.
Change some BulletSim status log messages from WARN to INFO.
Update TODO list.
2013-06-10 14:12:45 -07:00
Robert Adams b5d0ac4c42 BulletSim: default PhysicsTimeStep to same as the simulator's
heartbeat timestep when running the physics engine on a separate
thread. This reduces the occurance of heartbeats that happen when
there is no physics step which is seen as vehicle jerkyness.
2013-06-05 07:12:14 -07:00
Robert Adams 0c971d148c BulletSim: fix corner case when rebuilding a compound linkset while
a mesh/hull while a mesh or hull is being rebuilt when its asset
is fetched. This fixes a 'pure virtual function' crash when changing
physical state of complex linksets that include many meshes.
2013-06-05 07:09:43 -07:00
Robert Adams 07058b044b BulletSim: experimental movement of physics execution off of heartbeat
thread. Off by default until more testing.

Setting "[BulletSim]UseSeparatePhysicsThread=true" causes the physics
engine to be called on its own thread and the heartbeat thread only
handles the reporting of property updates and collisions. Physics frame
rate is about right but physics execution time goes to zero as accounted
by the heartbeat loop.
2013-06-01 14:52:44 -07:00
Robert Adams ae0d6ab28a BulletSim: don't zero motion when changing vehicle type.
Some vehicle scripts change type on the fly as an easy way of setting
all the parameters (like a plane changing to a car when on the ground).
2013-05-28 09:19:08 -07:00
Robert Adams 7c3a46ccea BulletSim: default using mesh asset hulls to 'true'. This means that,
if the mesh asset specifies physics hulls, BulletSim will fetch and
use same rather than approximating the hulls. If physics hulls are not
specified, the representation will fall back to the regular physics mesh.
2013-05-27 14:38:59 -07:00
Robert Adams 0c35d28933 BulletSim: enable GImpact shape for prims with cuts. Include DLLs and SOs
which recompute GImpact shape bounding box after creation as Bullet
doesn't do that itself (something it does for nearly every other shape).

Now, physical prims without cuts become single mesh convex meshes. Physical
prims with cuts become GImpact meshes. Meshes become a set of convex
hulls approximated from the mesh unless the hulls are specified in the
mesh asset data. The use of GImpact shapes should make some mechanical
physics more stable.
2013-05-26 17:35:12 -07:00
Robert Adams 1821372634 Meshmerizer: remember to add the copied hull verts to the list of hulls. 2013-05-24 16:32:19 -07:00
Robert Adams 5f1f5ea5ab BulletSim: add VehicleInertiaFactor to allow modifying inertia.
Another parameter for vehicle operation tuning.
Default to <1,1,1> which means nothing is different under normal use.
2013-05-24 16:24:16 -07:00