aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-12-23* Initial commit of BulletSimN (BulletSNPlugin). Purely C# implementation ↵teravus23-0/+11718
of BulletSim. This is designed to be /as close as possible/ to the BulletSim plugin while still being entirely in the managed space to make keeping it up to date easy as possible (no thinking work). This implementation is /slower/ then the c++ version just because it's fully managed, so it's not appropriate for huge sims, but it will run small ones OK. At the moment, it supports all known features of BulletSim. Think of it like.. POS but everything works. To use this plugin, set the physics plugin to BulletSimN.
2012-12-22BulletSim: modify avatar motor code to make falling movement better. Clean ↵Robert Adams3-35/+45
up some usages. Disable motor when done.
2012-12-22BulletSim: remove post step one-time taints (doesn't make any sense). Rename ↵Robert Adams1-82/+30
pre and post step event invocation routines to Trigger* to be consistant. Remove old, unused code.
2012-12-22BulletSim: add Enabled parameter and operation to motors.Robert Adams1-2/+16
2012-12-21BulletSim: remove all special vehicle code from BSScene. Replace per-frame ↵Robert Adams2-101/+20
updates for vehicles with per-frame action registration. One fewer special case.
2012-12-21BulletSim: remove the movement decay while flying. Made flying slow down ↵Robert Adams1-6/+0
over time.
2012-12-21BulletSim: Fix llApplyImpulse so it works after the first impulse. The ↵Robert Adams2-4/+29
problem was Bullet deactivating the object between the pushes (when, as far as the physics engine is concerned, it isn't moving).
2012-12-21BulletSim: add BSPhysObject code to manage registrations of preStep events. ↵Robert Adams3-66/+104
Use same to implement setForce and setTorque so the values are restored at the beginning of each step (since Bullet zeros forces applied last step). Simplify implementation of AddForce and AddTorque by relying on the addition of forces in Bullet.
2012-12-21BulletSim: repair vehicle problems introduced in previous 'improvements'. ↵Robert Adams4-572/+598
Fix line endings in BSParams.
2012-12-21BulletSim: Move all the parameter variables, tables and get and fetch logic ↵Robert Adams13-606/+681
to a separate, static class for easier addition and to remove all that bulk from the BSScene class.
2012-12-21BulletSim: small fix to avatar movement motor use which keeps avatar from ↵Robert Adams1-1/+2
flying up forever. This doesn't fix the overall problem but keeps avatar flying from being totally unusable.
2012-12-21BulletSim: avatar movement smoothed with motor that modifies avatar velocity ↵Robert Adams2-4/+81
to target velocity. Fails in incorporating physical world effects (gravity) so avatar doesn't fly correctly.
2012-12-21BulletSim: Better detail logging of VMotor actions.Robert Adams1-7/+8
2012-12-21BulletSim: begin movement of parameters from pinned memory block to ↵Robert Adams2-7/+19
variables all in managed code. Add note to TODO list to remember to do the rest. Other updates to TODO list.
2012-12-20BulletSim: fix incorrectly defined property changed flag.Robert Adams1-3/+1
2012-12-20BulletSim: Check for unspecified TimeScale in BSVMotor and don't scale if ↵Robert Adams1-9/+43
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-20BulletSim: replace use of funky nullable values for vehicle property update ↵Robert Adams1-26/+43
control (m_known* stuff). Bitmaps will be quicker to test and to clear.
2012-12-20BulletSim: angularMotorUp working again (seems a little slow as it takes ↵Robert Adams2-32/+66
longer than timescale to correct, but getting better). Disabled angularDeflection (need to resolve interactions between angular corrections). Update TODO list.
2012-12-20BulletSim: reorganize motor step code to separate error computation allowing ↵Robert Adams1-51/+91
subclass for PID error correction.
2012-12-18BulletSim: improve angularVerticalAttraction calculation to compute angular ↵Robert Adams1-18/+15
correction velocity rather than estimating correction (excuse to use trig functions).
2012-12-18BulletSim: initial implementation of a PID motor. Not hooked up yet.Robert Adams1-6/+38
2012-12-18BulletSim: comments and TODO list updateRobert Adams2-3/+9
2012-12-17BulletSim: apply friction to linear and angular motion before returning ↵Robert Adams3-14/+2
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-17BulletSim: fix vehicles going underground when unsat. Problem was that, when ↵Robert Adams4-29/+32
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-16BulletSim: fix vehicles being shot in the air at border crossings because of ↵Robert Adams1-2/+5
mis-application of correction to postion for below groundness.
2012-12-16BulletSim: add parameter to UpdateProperties call into the linkset so ↵Robert Adams6-36/+65
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-16BulletSim: add even more to the TODO list.Robert Adams1-4/+27
2012-12-16BulletSim: add check for border crossing in character position sanity check.Robert Adams1-2/+10
2012-12-16BulletSim: refactor to combine common terrain height testing code. Add ↵Robert Adams1-38/+48
function to test if a position is over known terrain.
2012-12-16BulletSim: remove some errors on shutdown by moving terrain destruction ↵Robert Adams2-3/+16
until after physical object destruction. TerrainManager also made disposable and that feature used.
2012-12-16BulletSim: rip out old code for linkset child position fetching. BulletSim ↵Robert Adams5-45/+31
doesn't need to do that bookkeeping because SOG/SOP already does it.
2012-12-13BulletSim: Add more to the TODO list. Clean up and improve some comments.Robert Adams2-10/+9
2012-12-13Return the last set targetVelocity rather than the current velocity as the ↵Robert Adams1-5/+8
default action made available in PhysicsActor.TargetVelocity. Doesn't change any physics operation but makes DSG work better as the targetVelocity value does not keep moving around.
2012-12-13BulletSim: fix problem with continuious rebuilding of physical linksets. ↵Robert Adams3-79/+88
This caused movement problems and large prim vehicles to take up a LOT of simulation time.
2012-12-13BulletSim: correct line endings in new BulletSimData.cs file.Robert Adams1-282/+282
2012-12-13BulletSim: Add 'BulletSimData' which separates structures createdRobert Adams7-205/+308
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-13BulletSim: remove extra linkset rebuilds.Robert Adams1-18/+36
2012-12-12BulletSim: fix problem of avatar's floating off the ground after unsitting. ↵Robert Adams4-24/+27
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-12BulletSim: non-functional commenting and reorganization of material ↵Robert Adams2-33/+49
attribute specifications.
2012-12-12BulletSim: updates and rearrangement of the TODO list.Robert Adams1-14/+33
2012-12-12BulletSim: do not return the current velocity for targetVelocity.Robert Adams1-0/+11
2012-12-11BulletSim: fix crash caused by the creation of a linkset child that is under ↵Robert Adams1-4/+4
the terrain. Users can sure find some interesting corner conditions.
2012-12-11BulletSim: protect character property setting to remove crash from taints ↵Robert Adams2-21/+42
setting properties after the destroy character taint.
2012-12-11BulletSim: protect prim property setting to remove crash from taints setting ↵Robert Adams3-20/+45
properties after the destroy object taint has happened.
2012-12-11BulletSim: modify LIMIT_MOTOR_UP to limit BOAT types to be at water rather ↵Robert Adams1-2/+2
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-11BulletSim: add ini file and command line parameters to controlRobert Adams4-8/+22
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-11BulletSim: set mass for single prim linksets when going physical. This fixes ↵Robert Adams1-1/+8
single prim vehicles not working (the surf board now zooms).
2012-12-10BulletSim: comment out some chatty debug logging. Rearrange some code in ↵Robert Adams2-5/+7
BSDynamics to make velocity vs force calculation clearer.
2012-12-10BulletSim: Fix crash on the destruction of physical linksets.Robert Adams12-38/+155
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-09BulletSim: some comments about rebuilding linksets (having to recompute and ↵Robert Adams1-3/+6
restore a child's position in the world based on its position in the moved linkset).