aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin (follow)
Commit message (Collapse)AuthorAgeFilesLines
* This started as way to correct Mantis #3158, which I believe should be fixed ↵diva2009-02-151-1/+2
| | | | now. The flying status was temporarily being ignored, which caused the avie to drop sometimes -- there was a race condition. In the process it also fixes that annoying bug in basic physics where the avie would drop half-way to the ground upon region crossings (SetAppearance was missing). Additionally, a lot of child-agent-related code has been cleaned up; namely child agents are now consistently not added to physical scenes, and they also don't have appearances. All of that happens in MakeRoot, consistently.
* Add copyright headers. Minor formatting cleanup. Fix some compiler ↵Jeff Ames2009-02-132-3/+3
| | | | warnings. Fix some m_log declarations.
* Thanks Kitto Flora for a patch that adds automatic min fly height to ODE - ↵Dahlia Trimble2009-02-122-9/+21
| | | | Mantis #3134
* * Some minor cleanupTeravus Ovares2009-02-081-30/+30
| | | | | * sealed OdeScene
* Reverts patch from tuco/mikkopa/sempuki mantis #3072Teravus Ovares2009-02-085-216/+216
|
* * Limit the total number of joints created per frame to the maximum possible ↵Teravus Ovares2009-02-081-12/+53
| | | | | | | | without causing a stack collision. * This fixes crashing on large sets of physical prims because of stack collisions (assuming you follow the directions on linux for starting ode with ulimit). After the maximum joints are created, objects will start to fall through the ground and be disabled. Not the best solution, but it's better then a crash caused by a stack collision with the process exceeding the maximum available memory/recursions per thread. * Make a clean region, make a stack of 5000 prim, 20 layers high. Make them physical, *SLOW*, but no crash.
* * Fixes colliding with the terrain lower then 0 and higher then 256mTeravus Ovares2009-02-081-11/+10
| | | | | | * The actual AABB of the heightfield on the Z is now determined by the minimum and maximum heightfield value in the terrain array (assuming it's a reasonable number). This might optimize collisions in simulators that have a small difference between minimum and maximum heightfield values.
* Change access levels from private to protected to facilitateMike Mazur2009-02-035-216/+216
| | | | | | subclassing; also add new method signatures. Thanks tuco and mikkopa. Fix Mantis #3072.
* * Tweaks some locks when modifying an ODECharacter. This actually allows a ↵Teravus Ovares2009-01-312-17/+45
| | | | | | | user to log-in while the physics scene and the scripts are starting up. This also seems to smooth out the jerks on teleport/connect/disconnect a little bit. * If you log-in while the simulator is starting up, you won't be able to move and the sim stats will say 0 FPS, and 0 Physics Frames and you may see only terrain. Once the sim finishes starting up, it'll all resume as normal.
* Improve parsing of joint parameters for NINJA physics (Mantis #2966). nlin2009-01-141-1/+1
| | | | | | | | Multiple spaces or leading/trailing spaces when specifying the prims to connect should no longer cause problems.
* Slight optimisation: Don't check for duplication if we won't use the result ↵Homer Horwitz2008-12-311-7/+7
| | | | anyway.
* - Added the fixed Ode.NET.dllHomer Horwitz2008-12-311-5/+5
| | | | | | | | | - Adapted code to match the corrected signatures - Fixes Mantis #2934. Hopefully. Note: Physics on linked objects still don't work correctly: It doesn't crash the region anymore, but the example object in the mentioned mantis now falls through the ground.
* Added a missing setMass for initializing the mass of primsHomer Horwitz2008-12-311-1/+2
|
* * Remove mono compiler warningsJustin Clarke Casey2008-12-301-1/+0
| | | | | | * Leaving the 23 warnings in ChildAgentDataUpdate.cs for Diva to look at
* Update svn properties, minor formatting cleanup.Jeff Ames2008-12-302-57/+57
|
* * More NINJA Joint physics fixes from nlin.Teravus Ovares2008-12-281-1/+1
| | | | | fixes mantis #2874
* * Fixes mantis #2922Teravus Ovares2008-12-271-1/+1
| | | | | * Converts some C# 3.0 syntax into it's 2.0 equivalent so that Visual Studio 2005 can compile it successfully.
* * Applying Nlin's NINJA Joint patch. v2. Mantis# 2874Teravus Ovares2008-12-263-2/+647
| | | | | | | | | | * Thanks nlin! * To try it out, set ninja joints active in the ODEPhysicsSettings and use the example at: * http://forge.opensimulator.org/gf/download/frsrelease/142/304/demo-playground.tgz. * Don't forget to change the .tgz to .oar and load it with load-oar.
* Mantis#2796. Thank you kindly, Gerhard for a patch that addresses:Charles Krinke2008-12-202-2/+25
| | | | | | | | | | | | | | On a call of llVolumeDetect(1) (or any other number !=0) volume detection is enabled. Together with VD, the phantom flag is set to the GUI. On a call of llVolumeDetect(0), vd detection is switched of again, also the phantom state is removed. On a call to llSetState(STATE_PHANTOM, false) while VD is active, also VD is switched off. The same is true for unchecking the phantom flag via GUI. This allows to take back VD without the need to script just by removing the phantom flag. Things missing in this patch: persistance of the volume-detection flag. This needs more discussion and will be included in another patch soon.
* Enabled complex meshing for simple box prims with non-zero shearDahlia Trimble2008-12-181-2/+3
|
* * Apply http://opensimulator.org/mantis/view.php?id=2775 with small tweaksJustin Clarke Casey2008-12-152-6/+9
| | | | | | | * This pushes an identifier for the OpenSim scene to the physics scene. This allows log messages from the physics scene to identify which OpenSim scene they relate to. * Thanks Gerhard
* * Implements the torque/Rotational Impulse methods in the PhysicsAPI and the ↵Teravus Ovares2008-12-142-3/+91
| | | | | | | ODEPlugin and pipes them to their respective LSL method. * NBody will need to be updated, this is an API change. Torque property and AddAngularForce
* * Added Avatar minimum size in the ODEPlugin and a stern warning about ↵Teravus Ovares2008-12-141-0/+15
| | | | setting the capsule size too low in OpenSim.ini
* * A Few physical prim + linkset fixes. Prevent some crashesTeravus Ovares2008-12-141-19/+51
|
* * Committing a slightly distilled version of nlin's ODECharacter race ↵Teravus Ovares2008-12-102-45/+139
| | | | | | | condition eliminator. * The modifications that I made were only so that it didn't require changes to the public physics api.
* * Fixes a few instances of llSetStatus with Axis lock gone wrong. Teravus Ovares2008-12-091-4/+46
| | | | | * Sums up the masses of the objects within a physical linkset
* Minor formatting cleanup.Jeff Ames2008-12-091-2/+2
|
* * Gerhard's patch m2781. Does some initial work for setting up llVolumeDetect.Teravus Ovares2008-12-093-1/+10
| | | | | | * Warning! Physics API change. This means that the NBodySimulation needs to be updated! * PhysicsActor -> void SetVolumeDetect(int) needs to go into classes that use PhysicsActor as their base class.
* * Adds some rudimentary error handling to the physics debug drawstuff tool.Teravus Ovares2008-12-081-6/+16
|
* * Tweaks physics so that linked prim are a single body. This will make ↵Teravus Ovares2008-12-073-83/+687
| | | | | | | | linked prim more stable and probably the last obstacle to vehicles physics wise. * Fixed a bug that caused physics proxies to be scattered when you link an object. * Single physical prim work exactly the same as before, just linked physical prim will have changed.
* * Apply http://opensimulator.org/mantis/view.php?id=2750 with a small tweak.Justin Clarke Casey2008-12-041-2/+5
| | | | | | | * Initializes ODE only when a scene is grabbed rather than on plugin load. This means we don't initialize ode if that physics engine is not used, and it allows other ode use plugins to be used instead.
* Guard against a strange nullref in ODEMelanie Thielker2008-11-191-0/+5
|
* * minor: remove mono compiler warningsJustin Clarke Casey2008-11-141-1/+1
|
* Thank you, idb, for a patch that fixes avatar height calculationMelanie Thielker2008-11-101-3/+4
| | | | | | Our feet will now be above ground
* Enabled SoftERP for the contact structure but not SoftCFM.Charles Krinke2008-11-091-1/+6
| | | | | | A tube on a pole is a bit less "flubbery" so maybe this is the right direction.
* Clean up a few comments.Charles Krinke2008-11-091-11/+3
|
* Clean up the mass < 0 logic a tiny bit whenCharles Krinke2008-11-091-2/+1
| | | | | calculating mass.
* Revert last checkin. Avatars fall through non-physical prims now.Charles Krinke2008-11-011-12/+7
| | | | | | There is more to the solution then just enabling soft_erp and soft_cfm for all d.Contact cases.
* Added soft_cfm and soft_erp to the general "contact" initializationCharles Krinke2008-11-011-7/+12
| | | | | | for physical prim interactions. They were not previously enabled for prim-prim interactions.
* * Add a config option for filtering collisions. Sometimes, under load, ↵Teravus Ovares2008-10-221-0/+5
| | | | this seems to cause bouncing on really thin flat prim.
* * Changed the dupe collision depth limiter to be slightly more restrictive. ↵Teravus Ovares2008-10-181-3/+3
| | | | (less chance for a dupe)
* * Fix an over compensation for bounciness on flat PrimitiveTeravus Ovares2008-10-172-9/+7
| | | | | | * Implement the linear impulse portion of llPushObject. We should have a lsl compatible implementation of that portion of the push. Angular.. well. still have yet to implement a torque accumulator. * llPushObject respects the region and parcel settings for Restrict Push, it also respects GodMode as is defined in the LSL spec.
* * Adds a lot of stability and performance to the physics engine. The ↵Teravus Ovares2008-10-171-1/+86
| | | | | | | avatar bounces less and things are a bit less explosive. * Additionally, you can probably get more physical prim now together.. though, I think this puts us back on par with where we were in the beginning of the year on number of physical objects. Experiment. Make videos. Send Feedback. Enjoy.
* * minor: get rid of pointless ipeSenderJustin Clarke Casey2008-10-161-0/+1
|
* * Apply http://opensimulator.org/mantis/view.php?id=2401Justin Clarke Casey2008-10-161-0/+1
| | | | | | | * Removes spacers that are also separators in llParseString2List * Thanks idb
* * Releases the inter-region thread synchronization between physics in ODE on ↵Teravus Ovares2008-10-163-6/+7
| | | | | | | | the same instance. * If you are hosting many regions on a single instance, you will probably notice a decrease in region startup time and maybe a slight increase in performance. * Single regions won't notice anything different
* * Cleaned up tons of code duplication in ODEPrim Teravus Ovares2008-10-142-313/+235
| | | | | | | | | * Re-enabled the native ODE prim types when possible * Fixed several invalid assumptions in the prim recycle process. * Added better message for 'reused a disposed physicsactor' * Added a way to recover from errors during collision_optimized * Added a way to recover from an error condition where prim_geom wasn't reset properly
* * Based on user reports, it looks like the OS specific settings have been ↵Teravus Ovares2008-10-131-4/+4
| | | | | | | unified as far as tuning (thank heavens). * If you're experiencing knee bendiness try the windows settings, as the *nix settings seem to now be incorrect. (this update does that, but you may have your own opensim.ini settings active.
* * This updates ODE to the most up-to-date version as of today. 1558Teravus Ovares2008-10-121-0/+1
| | | | | | | | * Mac users, pray to chi11ken to make you a .dylib version * This is semi-tuned and post teravus hack. (Though I didn't apply the terrain pitting fix hack. I'm still deciding if it's necessary as there was a lot of work over the past several months on the heightfield collider. * Please use '--enable-shared --disable-demos --disable-asserts' if you are building your own libode in the configure step. Asserts are pretty much useless for use with .NET * This also updates ODE.NET as, there were some API changes in May that were just added to ODE.NET today.
* Implement the plumbing for llSetVehicleType from the LSLCharles Krinke2008-09-282-0/+12
| | | | | | subroutine down through the physics modules through PhysActor and SceneObjectPart. No connection to the physics simulators.