Commit Graph

527 Commits

Author SHA1 Message Date
Robert Adams
2e3e95e846 BulletSim: small fix to avatar movement motor use which keeps avatar from flying up forever. This doesn't fix the overall problem but keeps avatar flying from being totally unusable. 2012-12-21 10:04:12 -08:00
Robert Adams
8c99f63239 BulletSim: avatar movement smoothed with motor that modifies avatar velocity to target velocity. Fails in incorporating physical world effects (gravity) so avatar doesn't fly correctly. 2012-12-21 10:00:03 -08:00
Robert Adams
b4f8a05e9a BulletSim: Better detail logging of VMotor actions. 2012-12-21 09:56:31 -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
9d2f569d60 BulletSim: fix incorrectly defined property changed flag. 2012-12-20 16:06:52 -08:00
Robert Adams
e522bdb96a BulletSim: Check for unspecified TimeScale in BSVMotor and don't scale if not specified. Add test dump routine. Don'e zero current and target values when error goes to zero as the values could be used externally to store the actual target values, etc. 2012-12-20 16:05:33 -08:00
Robert Adams
a5b2539cf9 BulletSim: replace use of funky nullable values for vehicle property update control (m_known* stuff). Bitmaps will be quicker to test and to clear. 2012-12-20 10:32:33 -08:00
Robert Adams
e73dac4deb BulletSim: angularMotorUp working again (seems a little slow as it takes longer than timescale to correct, but getting better). Disabled angularDeflection (need to resolve interactions between angular corrections). Update TODO list. 2012-12-20 10:19:16 -08:00
Robert Adams
b7ad44e3a6 BulletSim: reorganize motor step code to separate error computation allowing subclass for PID error correction. 2012-12-20 08:35:36 -08:00
Robert Adams
a9b9c0f035 BulletSim: improve angularVerticalAttraction calculation to compute angular correction velocity rather than estimating correction (excuse to use trig functions). 2012-12-18 23:05:59 -08:00
Robert Adams
7b84bcfbb8 BulletSim: initial implementation of a PID motor. Not hooked up yet. 2012-12-18 22:59:59 -08:00
Robert Adams
cf89e29ac3 BulletSim: comments and TODO list update 2012-12-18 19:25:51 -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
021623a17d BulletSim: fix vehicles being shot in the air at border crossings because of mis-application of correction to postion for below groundness. 2012-12-16 22:31:22 -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
3f2aaffd4d BulletSim: add even more to the TODO list. 2012-12-16 21:19:13 -08:00
Robert Adams
7ed860d3ac BulletSim: add check for border crossing in character position sanity check. 2012-12-16 21:19:12 -08:00
Robert Adams
4cbc5082ff BulletSim: refactor to combine common terrain height testing code. Add function to test if a position is over known terrain. 2012-12-16 21:19:12 -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
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
664dad53dd BulletSim: Add more to the TODO list. Clean up and improve some comments. 2012-12-13 23:08:01 -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
60950bfab5 BulletSim: correct line endings in new BulletSimData.cs file. 2012-12-13 16:32:12 -08:00
Robert Adams
3b2b785a46 BulletSim: Add 'BulletSimData' which separates structures created
for the operation of BulletSim and those defintiions/structures defined
so they can be used in the unmanaged world.
Consolidate setting of collision flags so implementation is not scattered.
2012-12-13 16:32:06 -08:00
Robert Adams
9e0dd9952b BulletSim: remove extra linkset rebuilds. 2012-12-13 16:32:00 -08:00
Robert Adams
e1814aa827 BulletSim: fix problem of avatar's floating off the ground after unsitting. Reworked size/scale logic so physical scale is kept in Bullet and physObject scale is the preferred size -- usually same as size but avatars are computed differently. 2012-12-12 16:51:43 -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
7bb5613dc6 BulletSim: updates and rearrangement of the TODO list. 2012-12-12 16:51:29 -08:00
Robert Adams
bb6eeb5429 BulletSim: do not return the current velocity for targetVelocity. 2012-12-12 11:01:36 -08:00
Robert Adams
a082ce9da7 BulletSim: fix crash caused by the creation of a linkset child that is under the terrain. Users can sure find some interesting corner conditions. 2012-12-11 14:27:09 -08:00
Robert Adams
d4e0e98c00 BulletSim: protect character property setting to remove crash from taints setting properties after the destroy character taint. 2012-12-11 13:54:26 -08:00
Robert Adams
63099184db BulletSim: protect prim property setting to remove crash from taints setting properties after the destroy object taint has happened. 2012-12-11 13:42:23 -08:00
Robert Adams
905d7c43ad BulletSim: modify LIMIT_MOTOR_UP to limit BOAT types to be at water rather than ground level. This makes boats float at water level better but not perfectly. There probably needs to be some interaction between HOVER and LIMIT_MOTOR_UP. 2012-12-11 00:35:16 -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
ebf30e7ba6 BulletSim: set mass for single prim linksets when going physical. This fixes single prim vehicles not working (the surf board now zooms). 2012-12-11 00:02:20 -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
Robert Adams
9df85eadf4 BulletSim: Fix crash on the destruction of physical linksets.
While fixing the above, add methods to physical body and shape pointer
wrapper so routines won't have to know that IntPtr.Zero means no
physical instance.
Fix problem with physical linksets failing after a few sits and
unsits by properly restoring child prom positions for compound
linksets after multiple selection and deselections.
2012-12-10 15:35:53 -08:00
Robert Adams
a19896cc56 BulletSim: some comments about rebuilding linksets (having to recompute and restore a child's position in the world based on its position in the moved linkset). 2012-12-09 22:32:46 -08:00
Robert Adams
ce5083a504 BulletSim: adjust friction and restitution based on material type. 2012-12-09 22:32:46 -08:00
Robert Adams
04e64d73df BulletSim: set material properties for static objects. Move Linkset.MakeStatic() after call to ForceActivationState2() since linkset might change activation state. Make BSPrim.CreateGeomAndObject public as linkset rebuilding might need access to it. Only rebuild prim if selection state is actually changes -- OpenSimulator calls PhysObject.Selected() multiple times whenever a prim is selected or deselected. 2012-12-08 09:14:40 -08:00
Robert Adams
216c121935 BulletSim: fix small problem with setting size/scale of native shapes which caused the native shapes to be rebuilt when not necessary. 2012-12-08 09:14:34 -08:00
Robert Adams
addb791f3d BulletSim: update comments and add more to TODO list. 2012-12-08 09:14:28 -08:00
Robert Adams
7fd8202ae3 BulletSim: rewrite and improve vehicle angularDeflection, verticalAttraction,
linearMotorUp and related vehicle forces.
Fixed problems with downward vehicle position correction forces being too large.
Add vehicle collision flag so can sense whether vehicle is on the ground.
2012-12-06 09:31:12 -08:00
Robert Adams
edd1b353a5 BulletSim: update and add to the TODO list. 2012-12-06 09:31:05 -08:00
Robert Adams
18fe35906d BulletSim: add detail logging detail flag so I don't have to comment and uncomment the detail logging when changing the depth of logged info. 2012-12-06 09:30:57 -08:00
Robert Adams
cc59e3cbdf BulletSim: only check position sanity if the prim is physical -- the user can do anything dumb they wish. 2012-12-06 09:30:50 -08:00
Robert Adams
2ecd8e6720 BulletSim: add values for material friction and restitution. Fix line endings in material definition file. 2012-12-06 09:30:42 -08:00
Robert Adams
6d7f66f781 BulletSim: Don't add gravity to down force -- let Bullet do that. Add VehicleAddForce to set of managed vehicle prim properties. 2012-12-06 09:30:35 -08:00
Robert Adams
e599a8b242 BulletSim: Vehicle angular vertical attraction works. Other vehicle angular forces commented out for the moment for debugging. 2012-12-06 09:30:28 -08:00