aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-02-15This started as way to correct Mantis #3158, which I believe should be fixed ↵diva1-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.
2009-02-13Add copyright headers. Minor formatting cleanup. Fix some compiler ↵Jeff Ames2-3/+3
warnings. Fix some m_log declarations.
2009-02-12Thanks Kitto Flora for a patch that adds automatic min fly height to ODE - ↵Dahlia Trimble2-9/+21
Mantis #3134
2009-02-08* Some minor cleanupTeravus Ovares1-30/+30
* sealed OdeScene
2009-02-08Reverts patch from tuco/mikkopa/sempuki mantis #3072Teravus Ovares5-216/+216
2009-02-08* Limit the total number of joints created per frame to the maximum possible ↵Teravus Ovares1-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.
2009-02-08* Fixes colliding with the terrain lower then 0 and higher then 256mTeravus Ovares1-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.
2009-02-03Change access levels from private to protected to facilitateMike Mazur5-216/+216
subclassing; also add new method signatures. Thanks tuco and mikkopa. Fix Mantis #3072.
2009-01-31* Tweaks some locks when modifying an ODECharacter. This actually allows a ↵Teravus Ovares2-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.
2009-01-14Improve parsing of joint parameters for NINJA physics (Mantis #2966). nlin1-1/+1
Multiple spaces or leading/trailing spaces when specifying the prims to connect should no longer cause problems.
2008-12-31Slight optimisation: Don't check for duplication if we won't use the result ↵Homer Horwitz1-7/+7
anyway.
2008-12-31- Added the fixed Ode.NET.dllHomer Horwitz1-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.
2008-12-31Added a missing setMass for initializing the mass of primsHomer Horwitz1-1/+2
2008-12-30* Remove mono compiler warningsJustin Clarke Casey1-1/+0
* Leaving the 23 warnings in ChildAgentDataUpdate.cs for Diva to look at
2008-12-30Update svn properties, minor formatting cleanup.Jeff Ames2-57/+57
2008-12-28* More NINJA Joint physics fixes from nlin.Teravus Ovares1-1/+1
fixes mantis #2874
2008-12-27* Fixes mantis #2922Teravus Ovares1-1/+1
* Converts some C# 3.0 syntax into it's 2.0 equivalent so that Visual Studio 2005 can compile it successfully.
2008-12-26* Applying Nlin's NINJA Joint patch. v2. Mantis# 2874Teravus Ovares3-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.
2008-12-20Mantis#2796. Thank you kindly, Gerhard for a patch that addresses:Charles Krinke2-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.
2008-12-18Enabled complex meshing for simple box prims with non-zero shearDahlia Trimble1-2/+3
2008-12-15* Apply http://opensimulator.org/mantis/view.php?id=2775 with small tweaksJustin Clarke Casey2-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
2008-12-14* Implements the torque/Rotational Impulse methods in the PhysicsAPI and the ↵Teravus Ovares2-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
2008-12-14* Added Avatar minimum size in the ODEPlugin and a stern warning about ↵Teravus Ovares1-0/+15
setting the capsule size too low in OpenSim.ini
2008-12-14* A Few physical prim + linkset fixes. Prevent some crashesTeravus Ovares1-19/+51
2008-12-10* Committing a slightly distilled version of nlin's ODECharacter race ↵Teravus Ovares2-45/+139
condition eliminator. * The modifications that I made were only so that it didn't require changes to the public physics api.
2008-12-09* Fixes a few instances of llSetStatus with Axis lock gone wrong. Teravus Ovares1-4/+46
* Sums up the masses of the objects within a physical linkset
2008-12-09Minor formatting cleanup.Jeff Ames1-2/+2
2008-12-09* Gerhard's patch m2781. Does some initial work for setting up llVolumeDetect.Teravus Ovares3-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.
2008-12-08* Adds some rudimentary error handling to the physics debug drawstuff tool.Teravus Ovares1-6/+16
2008-12-07* Tweaks physics so that linked prim are a single body. This will make ↵Teravus Ovares3-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.
2008-12-04* Apply http://opensimulator.org/mantis/view.php?id=2750 with a small tweak.Justin Clarke Casey1-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.
2008-11-19Guard against a strange nullref in ODEMelanie Thielker1-0/+5
2008-11-14* minor: remove mono compiler warningsJustin Clarke Casey1-1/+1
2008-11-10Thank you, idb, for a patch that fixes avatar height calculationMelanie Thielker1-3/+4
Our feet will now be above ground
2008-11-09Enabled SoftERP for the contact structure but not SoftCFM.Charles Krinke1-1/+6
A tube on a pole is a bit less "flubbery" so maybe this is the right direction.
2008-11-09Clean up a few comments.Charles Krinke1-11/+3
2008-11-09Clean up the mass < 0 logic a tiny bit whenCharles Krinke1-2/+1
calculating mass.
2008-11-01Revert last checkin. Avatars fall through non-physical prims now.Charles Krinke1-12/+7
There is more to the solution then just enabling soft_erp and soft_cfm for all d.Contact cases.
2008-11-01Added soft_cfm and soft_erp to the general "contact" initializationCharles Krinke1-7/+12
for physical prim interactions. They were not previously enabled for prim-prim interactions.
2008-10-22* Add a config option for filtering collisions. Sometimes, under load, ↵Teravus Ovares1-0/+5
this seems to cause bouncing on really thin flat prim.
2008-10-18* Changed the dupe collision depth limiter to be slightly more restrictive. ↵Teravus Ovares1-3/+3
(less chance for a dupe)
2008-10-17* Fix an over compensation for bounciness on flat PrimitiveTeravus Ovares2-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.
2008-10-17* Adds a lot of stability and performance to the physics engine. The ↵Teravus Ovares1-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.
2008-10-16* minor: get rid of pointless ipeSenderJustin Clarke Casey1-0/+1
2008-10-16* Apply http://opensimulator.org/mantis/view.php?id=2401Justin Clarke Casey1-0/+1
* Removes spacers that are also separators in llParseString2List * Thanks idb
2008-10-16* Releases the inter-region thread synchronization between physics in ODE on ↵Teravus Ovares3-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
2008-10-14* Cleaned up tons of code duplication in ODEPrim Teravus Ovares2-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
2008-10-13* Based on user reports, it looks like the OS specific settings have been ↵Teravus Ovares1-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.
2008-10-12* This updates ODE to the most up-to-date version as of today. 1558Teravus Ovares1-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.
2008-09-28Implement the plumbing for llSetVehicleType from the LSLCharles Krinke2-0/+12
subroutine down through the physics modules through PhysActor and SceneObjectPart. No connection to the physics simulators.