Commit Graph

126 Commits

Author SHA1 Message Date
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
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
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
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
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
Vegaslon
ac6dcd35fb Bulletsim: and the rotational friction.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-05-07 07:14:10 -07:00
Vegaslon
f247ae1a75 BulletSim: Another way to create vehicle framed friction.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-05-07 07:14:06 -07:00
Robert Adams
93e1986d69 BulletSim: apply linear and angular friction in vehicle coordinates
and not world coordinates.
2013-05-06 16:48:01 -07:00
Robert Adams
045aaa838a BulletSim: remove friction calcuation from BSMotor and move linear and
angular friction computation into linear and angular movement code.
The friction wasn't being applied properly. This will make it so vehicles
don't drift as much and the drift is tunable by changing the friction
timescales.
2013-05-06 13:32:26 -07:00
Robert Adams
bf31896983 BulletSim: simplify parameter specification by reducing the number of
specifications required for simple properties with defaults.
2013-05-06 13:32:24 -07:00
Robert Adams
5d25bb3084 BulletSim: zero vehicle motion when changing vehicle type.
Rebuild compound linkset of any child in the linkset changes shape.
Comments and better detailed logging messages.
2013-05-03 14:23:53 -07:00
Robert Adams
d9c3947824 BulletSim: Rebuild physical body if physical shape changes for mesh and hull.
Properly rebuilds collision caches.
Release asset data fetched when building mesh or hulls.
2013-05-02 10:06:12 -07:00
Robert Adams
92ee288d66 BulletSim: remove trailing white space to make git happier. No functional changes. 2013-04-29 07:54:50 -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
b53713cdda BulletSim: some formatting changes. 2013-04-09 18:00:27 -07:00
Vegaslon
9cc41d5118 Another algorithm for AngularVerticalAttraction. This one Takes into account all rotations before it and makes the corrections more close to the time that sl does.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-04-09 18:00:25 -07:00
Robert Adams
7d50015a74 BulletSim: start the renaming of local variables to m_ form to match the OpenSim coding conventions. 2013-03-31 22:19:42 -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
285dc554ec BulletSim: new algorithm for vertical attraction which uses quaternion
arithmetic to compute the shortest path between the current tilt
and vertical.
2013-03-25 15:40:46 -07:00
Robert Adams
8360223fed BulletSim: code to generate a higher resolution terrain mesh. Parameter
TerrainMeshMagnification controls number of vertices generated per
heightmap point. Default is 3.
2013-03-19 00:00:03 -07:00
Robert Adams
464201b41d BulletSim: add INI parameter for angular banking timescale fudge parameter. 2013-03-16 15:34:07 -07:00
Vegaslon
fc84ebb819 BulletSim: Working Implementation of Angular Banking for Vehicles (Not SL Grade, Other features when implemented should slow it down for now be Strong with Vertical Angular attraction setting and conservative with Angular Velocity on X axis)
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-03-16 15:13:40 -07:00
Vegaslon
78b25094dc BulletSim: Tweak vertical angular attraction to remove double VehicleOrientation application fixing the problem with the vertical attractor pushing vehicles nose first into ground when tilted on side.
Signed-off-by: Robert Adams <Robert.Adams@intel.com>
2013-03-15 14:05:38 -07:00
Robert Adams
1c740798b4 BulletSim: add parameters, code cleanup around checking and enforcing
maximum velocity and angular velocity values for prims.
2013-03-01 09:44:37 -08: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
2b6d226911 BulletSim: correct angular vertical attraction to properly correct an upside down vehicle. 2013-02-05 16:56:17 -08:00
Robert Adams
ed71c939fc BulletSim: make sure vehicle physical properties are set when going
physical by delaying setting until pre-step time. Change vehicle.Refresh()
to schedule the pre-step setting.
Comments and updating of TODO list.
2013-01-31 15:56:02 -08:00
Robert Adams
47f09ed4c1 BulletSim: enable angular vertical attraction.
Increase terrain collision margin to help vehicles from tunneling
into same.
2013-01-28 17:21:13 -08:00
Robert Adams
531d0429d1 BulletSim: first unit test: vehicle angular attraction 2013-01-28 17:08:34 -08:00
Robert Adams
b546af9ac2 BulletSim: simplify the initialization of some of the parameters.
Disable vertical attraction for vehicles by default (for the moment).
Fix bug where vehicle would go crazy when velocity got above a
   certain speed.
2013-01-27 12:50:07 -08:00
Robert Adams
36f401d850 BulletSim: parameterize the value for gravity reduction for ground vehicles on the ground. Set defaults for vehicle factors to one. Debug logging changes. 2013-01-27 12:50:05 -08:00
Robert Adams
ddef8f16e5 BulletSim: first attempt at reporting top colliders 2013-01-27 12:50:05 -08:00
Robert Adams
dd08e1fba6 BulletSim: parameterize several vehicle debugging values: physical linear and angular force factors now default to less than 1 (0.2) vehicle friction and restitution now default to low values 2013-01-27 12:50:05 -08:00
Robert Adams
c44a8e9f92 BulletSim: finish the post step event for physical object actions. Modify vehicle to use post step event for logging. 2013-01-27 12:50:04 -08: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
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
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
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
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
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
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
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