Commit Graph

150 Commits (97698ae3119e01ecd2c98f7a17ad37204b9bfd9c)

Author SHA1 Message Date
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 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 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 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 9de3979f5b BulletSim: add gImpact shape type. Add logic to use gImpact shape
for prims that have cuts or holes. Default logic to 'off' as it
needs debugging.
2013-05-21 15:32:10 -07:00
Robert Adams 214bae1479 BulletSim: fix BulletSim crashing if there is no [BulletSim] section
in any INI file. Update TODO list.
2013-05-17 21:19:38 -07:00
Robert Adams 45f37e11ad BulletSim: use heightmap terrain when using BulletXNA.
Output messages on features disabled when using BulletXNA.
2013-05-13 13:30:40 -07:00
Robert Adams 4042c82a72 BulletSim: prims with no cuts created with single convex hull shape.
Parameter added to enable/disable this feature.
2013-05-02 12:27:30 -07:00
Robert Adams 59135c9a31 BulletSim: add Bullet HACD library invocation. Turned off by default as not
totally debugged. Updated DLLs and SOs with more debugged HACD library code.
2013-04-09 18:00:23 -07:00
Robert Adams 747ece59d2 BulletSim: convert BSDynamic to a BSActor and change BSPrim to set
up the vehicle actor.
2013-03-31 22:19:41 -07:00
Robert Adams 885b45b112 BulletSim: rework parameter setting for different types of values
(like vectors or quaternions).
2013-02-17 20:13:48 -08:00
Robert Adams 1b55a9d81e BulletSim: fix avatar bobbing or jiggling while stationary flying.
Various comments and debugging message mods.
2013-02-08 16:29:40 -08:00
Robert Adams 1b203601f4 BulletSim: include the linkage to the layered prim implementation. Separate layers for physical (vs simulator) location displacement and linksets. 2013-02-08 16:29:29 -08:00
Robert Adams af73ea909c Change passed PhysicsParameter value from float to the more general string value 2013-02-07 11:10:14 -08:00
Robert Adams ad438ee59f BulletSim: rework some parameter setting implementation moving functionality that was in BSScene to BSParam. Remove unused parameters that were passed to the unmanaged code. Update DLLs and SOs for the new param block. 2013-02-05 16:56:23 -08:00
Robert Adams 531d0429d1 BulletSim: first unit test: vehicle angular attraction 2013-01-28 17:08:34 -08:00
Robert Adams f6380a3ad3 BulletSim: fix the trimming of colliders so only the top 25 are returned. 2013-01-28 09:02:01 -08:00
Robert Adams 80f0a978db BulletSim: fix compile error from last commit 2013-01-27 12:50:06 -08:00
Robert Adams ddef8f16e5 BulletSim: first attempt at reporting top colliders 2013-01-27 12:50:05 -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
Robert Adams 1c3d84fe03 BulletSim: pass up and report the real collision penetration. 2013-01-23 16:20:44 -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 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 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 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 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 aa236b2020 BulletSim: add parameter to have Bullet output performance statistics
every so many frames. Default to off.
2013-01-01 17:27:34 -08:00
Robert Adams 9d840fd2ee BulletSim: move over and port the interface for BulletXNA.
Copied BulletSNPlugin.BulletSimAPI to a new
BulletSPlugin.BSAPIXNA.cs and then modifyed the latter to
comply with the BSAPITemplate definition. Not totally debugged
but the code is all there for an INI variable to select either
unmanaged C++ Bullet or the C# version of Bullet.
2013-01-01 17:27:33 -08:00
Robert Adams 3d0fc70864 BulletSim: complete movement of BulletSimAPI functions to BSAPITemplate.
Update BulletSim DLLs and SOs with simplier step function interface.
2012-12-31 19:57:24 -08:00
Robert Adams c2a7af18b6 BulletSim: nearly complete in conversion from BulletSimAPI to BSAPITemplate. Only initialization and debug fuctions left. 2012-12-31 19:57:23 -08:00
Robert Adams 48f718f39f BulletSim: first round of conversion from direct BulletSimAPI interfacing by BulletSim core to using the BulletSimAPITemplate. Physical object creation and destruction first. 2012-12-31 19:57:21 -08:00
Robert Adams 1f6aaad0b5 BulletSim: correct collision mask definition for linkset children.
Remove unused code. Add comments and TODOs.
2012-12-27 22:12:28 -08:00
Robert Adams c1e7539c77 BulletSim: Parameterize nominal frame rate (55) and add parameters to dynamially turn on/off detailed, unmanaged data dumping of prims and vehicles. 2012-12-27 22:12:28 -08:00
Robert Adams f3baed5827 BulletSim: add physical parameter min/max constants in BSParam. I just don't like raw numbers scattered around the code. 2012-12-27 22:12:25 -08:00
Robert Adams 225b564573 BulletSim: scale the force for external AddForce by the simulation
step time so it will be applied completely the next step. The internal
AddForce routine does not scale the force.
2012-12-26 10:25:50 -08:00
Robert Adams bbc5a5089f BulletSim: Rename some of the interface structures (BulletWorld, ...)
to get ready for...
Start creation of BulletAPITemplate. This defines the abstract interface
functions. Following commits will move over to the new interface.
This will enable switching between the managed and unmanaged version of
Bullet.
2012-12-24 20:18:06 -08:00
Robert Adams 144322a7c9 BulletSim: remove post step one-time taints (doesn't make any sense). Rename pre and post step event invocation routines to Trigger* to be consistant. Remove old, unused code. 2012-12-22 17:07:52 -08:00
Robert Adams 5b2cbc0ae6 BulletSim: remove all special vehicle code from BSScene. Replace per-frame updates for vehicles with per-frame action registration. One fewer special case. 2012-12-21 23:24:31 -08:00
Robert Adams 6dbf9c8ed4 BulletSim: repair vehicle problems introduced in previous 'improvements'. Fix line endings in BSParams. 2012-12-21 15:21:32 -08:00
Robert Adams ae4d932e7f BulletSim: Move all the parameter variables, tables and get and fetch logic to a separate, static class for easier addition and to remove all that bulk from the BSScene class. 2012-12-21 13:35:44 -08:00
Robert Adams 750492796d BulletSim: begin movement of parameters from pinned memory block to variables all in managed code. Add note to TODO list to remember to do the rest. Other updates to TODO list. 2012-12-21 09:55:20 -08:00
Robert Adams 8653ea93b2 BulletSim: apply friction to linear and angular motion before returning 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-17 13:51:39 -08:00
Robert Adams 11532a4390 BulletSim: fix vehicles going underground when unsat. Problem was that, when 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-17 13:22:04 -08:00
Robert Adams 2b8efa24dd BulletSim: add parameter to UpdateProperties call into the linkset so changes from the physics engine can be differentiated from changes made by the user. This eliminates a linkset rebuild loop. Also add logic to not rebuild or freak out when the object/linkset crosses a terrain boundry. 2012-12-16 21:19:13 -08:00
Robert Adams f3b1efd889 BulletSim: remove some errors on shutdown by moving terrain destruction until after physical object destruction. TerrainManager also made disposable and that feature used. 2012-12-16 21:19:11 -08:00
Robert Adams 6f1f7f0206 BulletSim: non-functional commenting and reorganization of material attribute specifications. 2012-12-12 16:51:36 -08:00
Robert Adams 8b861e880a BulletSim: add ini file and command line parameters to control
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-11 00:13:13 -08:00
Robert Adams 93393fb975 BulletSim: comment out some chatty debug logging. Rearrange some code in BSDynamics to make velocity vs force calculation clearer. 2012-12-10 16:46:12 -08:00