aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics (follow)
Commit message (Collapse)AuthorAgeFilesLines
* * Initial commit of BulletSimN (BulletSNPlugin). Purely C# implementation ↵teravus2012-12-2323-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.
* BulletSim: modify avatar motor code to make falling movement better. Clean ↵Robert Adams2012-12-223-35/+45
| | | | up some usages. Disable motor when done.
* BulletSim: remove post step one-time taints (doesn't make any sense). Rename ↵Robert Adams2012-12-221-82/+30
| | | | pre and post step event invocation routines to Trigger* to be consistant. Remove old, unused code.
* BulletSim: add Enabled parameter and operation to motors.Robert Adams2012-12-221-2/+16
|
* BulletSim: remove all special vehicle code from BSScene. Replace per-frame ↵Robert Adams2012-12-212-101/+20
| | | | updates for vehicles with per-frame action registration. One fewer special case.
* BulletSim: remove the movement decay while flying. Made flying slow down ↵Robert Adams2012-12-211-6/+0
| | | | over time.
* BulletSim: Fix llApplyImpulse so it works after the first impulse. The ↵Robert Adams2012-12-212-4/+29
| | | | problem was Bullet deactivating the object between the pushes (when, as far as the physics engine is concerned, it isn't moving).
* BulletSim: add BSPhysObject code to manage registrations of preStep events. ↵Robert Adams2012-12-213-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.
* BulletSim: repair vehicle problems introduced in previous 'improvements'. ↵Robert Adams2012-12-214-572/+598
| | | | Fix line endings in BSParams.
* BulletSim: Move all the parameter variables, tables and get and fetch logic ↵Robert Adams2012-12-2113-606/+681
| | | | to a separate, static class for easier addition and to remove all that bulk from the BSScene class.
* BulletSim: small fix to avatar movement motor use which keeps avatar from ↵Robert Adams2012-12-211-1/+2
| | | | flying up forever. This doesn't fix the overall problem but keeps avatar flying from being totally unusable.
* BulletSim: avatar movement smoothed with motor that modifies avatar velocity ↵Robert Adams2012-12-212-4/+81
| | | | to target velocity. Fails in incorporating physical world effects (gravity) so avatar doesn't fly correctly.
* BulletSim: Better detail logging of VMotor actions.Robert Adams2012-12-211-7/+8
|
* BulletSim: begin movement of parameters from pinned memory block to ↵Robert Adams2012-12-212-7/+19
| | | | variables all in managed code. Add note to TODO list to remember to do the rest. Other updates to TODO list.
* BulletSim: fix incorrectly defined property changed flag.Robert Adams2012-12-201-3/+1
|
* BulletSim: Check for unspecified TimeScale in BSVMotor and don't scale if ↵Robert Adams2012-12-201-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.
* BulletSim: replace use of funky nullable values for vehicle property update ↵Robert Adams2012-12-201-26/+43
| | | | control (m_known* stuff). Bitmaps will be quicker to test and to clear.
* BulletSim: angularMotorUp working again (seems a little slow as it takes ↵Robert Adams2012-12-202-32/+66
| | | | longer than timescale to correct, but getting better). Disabled angularDeflection (need to resolve interactions between angular corrections). Update TODO list.
* BulletSim: reorganize motor step code to separate error computation allowing ↵Robert Adams2012-12-201-51/+91
| | | | subclass for PID error correction.
* BulletSim: improve angularVerticalAttraction calculation to compute angular ↵Robert Adams2012-12-181-18/+15
| | | | correction velocity rather than estimating correction (excuse to use trig functions).
* BulletSim: initial implementation of a PID motor. Not hooked up yet.Robert Adams2012-12-181-6/+38
|
* BulletSim: comments and TODO list updateRobert Adams2012-12-182-3/+9
|
* BulletSim: apply friction to linear and angular motion before returning ↵Robert Adams2012-12-173-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.
* BulletSim: fix vehicles going underground when unsat. Problem was that, when ↵Robert Adams2012-12-174-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.
* BulletSim: fix vehicles being shot in the air at border crossings because of ↵Robert Adams2012-12-161-2/+5
| | | | mis-application of correction to postion for below groundness.
* BulletSim: add parameter to UpdateProperties call into the linkset so ↵Robert Adams2012-12-166-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.
* BulletSim: add even more to the TODO list.Robert Adams2012-12-161-4/+27
|
* BulletSim: add check for border crossing in character position sanity check.Robert Adams2012-12-161-2/+10
|
* BulletSim: refactor to combine common terrain height testing code. Add ↵Robert Adams2012-12-161-38/+48
| | | | function to test if a position is over known terrain.
* BulletSim: remove some errors on shutdown by moving terrain destruction ↵Robert Adams2012-12-162-3/+16
| | | | until after physical object destruction. TerrainManager also made disposable and that feature used.
* BulletSim: rip out old code for linkset child position fetching. BulletSim ↵Robert Adams2012-12-165-45/+31
| | | | doesn't need to do that bookkeeping because SOG/SOP already does it.
* BulletSim: Add more to the TODO list. Clean up and improve some comments.Robert Adams2012-12-132-10/+9
|
* Return the last set targetVelocity rather than the current velocity as the ↵Robert Adams2012-12-131-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.
* BulletSim: fix problem with continuious rebuilding of physical linksets. ↵Robert Adams2012-12-133-79/+88
| | | | This caused movement problems and large prim vehicles to take up a LOT of simulation time.
* BulletSim: correct line endings in new BulletSimData.cs file.Robert Adams2012-12-131-282/+282
|
* BulletSim: Add 'BulletSimData' which separates structures createdRobert Adams2012-12-137-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.
* BulletSim: remove extra linkset rebuilds.Robert Adams2012-12-131-18/+36
|
* BulletSim: fix problem of avatar's floating off the ground after unsitting. ↵Robert Adams2012-12-124-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.
* BulletSim: non-functional commenting and reorganization of material ↵Robert Adams2012-12-122-33/+49
| | | | attribute specifications.
* BulletSim: updates and rearrangement of the TODO list.Robert Adams2012-12-121-14/+33
|
* BulletSim: do not return the current velocity for targetVelocity.Robert Adams2012-12-121-0/+11
|
* BulletSim: fix crash caused by the creation of a linkset child that is under ↵Robert Adams2012-12-111-4/+4
| | | | the terrain. Users can sure find some interesting corner conditions.
* BulletSim: protect character property setting to remove crash from taints ↵Robert Adams2012-12-112-21/+42
| | | | setting properties after the destroy character taint.
* BulletSim: protect prim property setting to remove crash from taints setting ↵Robert Adams2012-12-113-20/+45
| | | | properties after the destroy object taint has happened.
* BulletSim: modify LIMIT_MOTOR_UP to limit BOAT types to be at water rather ↵Robert Adams2012-12-111-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.
* BulletSim: add ini file and command line parameters to controlRobert Adams2012-12-114-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.
* BulletSim: set mass for single prim linksets when going physical. This fixes ↵Robert Adams2012-12-111-1/+8
| | | | single prim vehicles not working (the surf board now zooms).
* BulletSim: comment out some chatty debug logging. Rearrange some code in ↵Robert Adams2012-12-102-5/+7
| | | | BSDynamics to make velocity vs force calculation clearer.
* BulletSim: Fix crash on the destruction of physical linksets.Robert Adams2012-12-1012-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.
* BulletSim: some comments about rebuilding linksets (having to recompute and ↵Robert Adams2012-12-091-3/+6
| | | | restore a child's position in the world based on its position in the moved linkset).