Commit Graph

47 Commits (e506341fdb9f3b6996d3c97de007f2b142fcddd3)

Author SHA1 Message Date
Robert Adams 4179d8f651 BulletSim: add LSL function and plumbing for setting a spring
equilibrium point in the physics engine constraint.
2013-09-20 21:03:50 +01:00
Robert Adams bde8ac6a5c BulletSim: add extended physics LSL constants for axis specification.
Add specific error warnings for mis-matched parameter types in extended
   physics functions.
2013-09-20 21:03:47 +01:00
Robert Adams 9d04c6a828 BulletSim: ability to specify groups of axis to modify in constraint parameters that control multiple axis. Add useLinearReferenceFrameA constraint parameter. 2013-09-20 21:03:42 +01:00
Robert Adams 7a9eb26b00 BulletSim: add axis parameter for specifying enable, damping, and stiffness for spring constraints. Renumber parameter ops since I can as no one is using them yet. 2013-09-20 21:03:34 +01:00
Robert Adams 2e32b2aacb BulletSim: implementation of setting spring specific physical parameters. Add setting of linkset type to physChangeLinkParams. Lots of detail logging for setting of linkset constraint parameters. 2013-09-20 21:03:31 +01:00
Robert Adams 70438ff6ab BulletSim: pass both root and child BSPhysObjects to Extension function. Update routines to use the new parameters list from above change. 2013-09-20 21:03:18 +01:00
Robert Adams 1b021e0eaa BulletSim: add ID parameter to TaintedObject calls so logging will include LocalID of object which created the taint. 2013-09-20 21:03:14 +01:00
Robert Adams 21a046e622 BulletSim: Extension parameters passed through the classes made to pass just and array of objects rather than a mixture of parameters and array. Makes understanding and parsing what is being passed much easier. 2013-09-20 21:03:10 +01:00
Robert Adams fd3e267ec6 BulletSim: add extended physics function physGetLinkType(linkNum). Add implementation of physChangeLinkParams() in BSLinksetConstraint. 2013-09-20 21:02:50 +01:00
Robert Adams 1076f56373 BulletSim: change ExtendedPhysics constants to 'const' so they can be used as case variables in switch statements. 2013-09-20 21:02:39 +01:00
Robert Adams 0dd47d88de BulletSim: add physChangeLinkParams to set individual parameters on link constraints. Not fully functional. Remove double definition of ExtendedPhysics parameters by having BulletSim reference the optional module (addition to prebuild.xml and usings). 2013-09-20 21:02:34 +01:00
Robert Adams 826f8ce791 BulletSim: add physChangeLinkSpring to change linkset link to be a spring constraint. Add implementation to create spring constraint. Send up property updates for linkset children at the end of flexible linkset links. The simulator probably doesn't do the right thing yet. 2013-09-20 21:02:20 +01:00
Robert Adams 05ff4379f0 BulletSim: Linkset.Refresh() calls internal ScheduleRebuild() to recreate the linkset physics at next PostTaint time. Replace the existing calls to ScheduleRebuild to be calls to Refresh(). This allows external routines to make changes to parameters and then cause the linkset to rebuild. 2013-09-20 21:02:16 +01:00
Robert Adams 87aedc44a0 BulletSim: complete linkage of spring constraint into linkset constraint. 2013-09-20 21:01:53 +01:00
Robert Adams 719380380a BulletSim: fixes for change linkset implementation of physical linksets. 2013-09-20 21:01:24 +01:00
Robert Adams 24df15dab7 BulletSim: add implementation of 'physSetLinksetType' and 'physGetLinksetType'
and processing routines in BulletSim.
Add linkset rebuild/conversion routine in BSLinkset.
2013-08-02 09:47:12 -07:00
Robert Adams 5bcccfc305 BulletSim: add BSLinkInfo structure to remember link specific information
for each link in a linkset.
Extend BSLinksetConstraint to create and use BSLinkInfo with the default
static constraint.
2013-08-02 09:47:11 -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 803632f8f3 BulletSim: freshen up the code for constraint based linksets. 2013-07-22 10:27:06 -07:00
Robert Adams ad1787770e BulletSim: rename variable 'PhysicsScene' to be either 'PhysScene' or 'm_physicsScene' to match coding conventions and reduce confusion. 2013-04-29 07:38:55 -07:00
Robert Adams e5582939fd BulletSim: massive refactor of shape classes. Removed shape specific code from BSShapeCollection. Using BSShape* classes to hold references to shape. Simplified shape dependency callbacks. Remove 'PreferredShape' methods and have each class specify shape type. Disable compound shape linkset for a later commit that will simplify linkset implementation. 2013-04-29 07:38:40 -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 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 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 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 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 5379d6d112 BulletSim: remove all the debug printing of pointer formatting (.ToString(X)) and replace it with a method on BulletBody, BulletShape, ... 2012-12-31 19:57:22 -08:00
Robert Adams 203588e3c0 BulletSim: change physical data structures to classes. Add default
instantiations for PhysBody and PhysShape when BSPhysObject is created
to account for them being classes and not structures.
Update TODO list.
2012-12-31 19:57:21 -08:00
Robert Adams 80cee1b85a BulletSim: Fix single physical prim reporting its mass as zero.
Properly return root mass as mass of just the root prim rather
than the mass of the linkset. SOG has the logic to add the masses
together to get the linkset mass.
Update TODO list.
2012-12-24 08:56:02 -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 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 ace1f1e931 BulletSim: rip out old code for linkset child position fetching. BulletSim doesn't need to do that bookkeeping because SOG/SOP already does it. 2012-12-16 21:19:10 -08:00
Robert Adams 31d3952477 BulletSim: fix problem with continuious rebuilding of physical linksets. This caused movement problems and large prim vehicles to take up a LOT of simulation time. 2012-12-13 16:32:19 -08:00
Robert Adams 76cc303031 BulletSim: Add ZeroAngularMotion method to physical objects. Add inTaint flag to ZeroMotion method. Update the references to those functions. 2012-11-06 18:16:35 -08:00
Robert Adams 894bb4893b BulletSim: search the mesh and hull lists to find shapes if type is not known. This makes sure the correct accounting is done for the particular shape. 2012-11-03 21:15:54 -07:00
Robert Adams b0eccd5044 BulletSim: debugging of compound shape implementation of linksets.
Add compound shape creation and freeing in shape manager.
Add optional taint-time execution method and update code to use it.
Add API2 linkage for more compound shape methods (get num, get/remove by index, ...)
Modify perferred shape return so linkset children can have differet shapes than root.
Add Position and Orientation calls to linksets so children can be moved around by
    the linkset by its own calculation. Allows for very general linkset implementations.
2012-11-03 21:15:30 -07:00
Robert Adams 364a7c3088 BulletSim: rename BSBody and BSShape to PhysBody and PhysShape. Add skeleton of BSLinksetCompound. 2012-11-03 21:15:06 -07:00
Robert Adams 28e2cd3fa2 BulletSim: vehicle tweeking.
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-03 21:14:58 -07:00
Robert Adams 52be581f71 BulletSim: remove center-of-mass setting for linksets because it causes the constraint calculation to pull the objects together. 2012-11-03 21:14:49 -07:00
Robert Adams 93fe384cce BulletSim: Use the PostTaints operation to build the linkset once before the next simulation step. This eliminates the management of children vs taintChildren and simplifies the constratin creation code. 2012-11-03 21:14:41 -07:00
Robert Adams 8c9e4c1f7b BulletSim: Use Refresh/PostTaints to cause recomputing of constraint variables before the simulation step. Update logging and messages to properly name LinksetConstraints. Use UpdatePhysicalMassProperties to put the whole linkset mass into all the physical linkset members so they have the inertia to move the whole linkset. 2012-11-03 21:14:00 -07:00
Robert Adams 7af28724ac BulletSim: rename constraint classes so they show up together alphabetically. 2012-11-03 21:13:27 -07:00
Robert Adams 804b332d45 BulletSim: Add banking and other new code to vechile dynamics. Add third party license and contributor in for for Aurora-Sim project for physics code. 2012-11-03 21:12:46 -07:00
Robert Adams 14eeb8b31b BulletSim: fix bug that caused error (and a crash on 32 bit Linux) when mesh assets weren't already in the cache. Comment cleanups. 2012-10-22 22:24:59 -07:00
Robert Adams 65c131c4a3 BulletSim: remove trailing spaces to make git happy. 2012-10-22 22:24:44 -07:00
Robert Adams a61f20ac74 BulletSim: Create LinkSet abstract class and sparate constraint based linksets into own subclass. Will eventually add manual movement linkset subclass. 2012-10-22 22:24:30 -07:00