aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin/OdeScene.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-09-04actually reduce max number of ode spacesUbitUmarov1-4/+4
2015-09-04bug fix on ode spaces and allow more of them on large regionsUbitUmarov1-6/+6
2015-09-04remove a forgotten 1000.9 factor on physics fpsUbitUmarov1-1/+1
2015-09-04normalise physics plugins to return fps as (simulated time / requested ↵UbitUmarov1-1887/+3308
simulation time). improved a bit old ode simulations per call math
2015-09-03make addavatar more friendly between pluginsUbitUmarov1-3322/+1889
2015-09-02seems to compile ( tests comented out)UbitUmarov1-24/+0
2015-08-20make basic ode work with var regions for contribution back to CORE. ( avnUbitUmarov1-150/+135
partial compatibility code needs to be reverted). Cant fully test.
2015-08-20 make it compatible with avn, no point making avn compatible with itUbitUmarov1-0/+16
2015-08-20 update old git to os core versionUbitUmarov1-8/+3
2014-11-29Somewhat improve avatar region crossings by properly preserving velocity ↵Justin Clark-Casey (justincc)1-8/+3
when avatar enters the new region. This commit addresses the following issues were causing velocity to be set to 0 on the new region, disrupting flight in particular * Full avatar updates contained no velocity information, which does appear to have some effect in testing. * BulletSim was always setting the velocity to 0 for the new BSCharacter. Now, physics engines take a velocity parameter when setting up characters so we can avoid this. This patch applies to both Bullet and ODE.
2013-01-28BulletSim: fix the trimming of colliders so only the top 25 are returned.Robert Adams1-2/+2
2013-01-11BulletSim: add osGetPhysicsEngineType() LSL function and updateRobert Adams1-1/+2
the physics engines to return the name that is specified in the INI file ("physics = XXX") as the type of engine. This os function is a little different than the others in that it does not throw an exception of one is not privilaged to use it. It merely returns an empty string.
2012-11-15Revert "Merge master into teravuswork", it should have been avination, not ↵teravus1-15/+2
master. This reverts commit dfac269032300872c4d0dc507f4f9062d102b0f4, reversing changes made to 619c39e5144f15aca129d6d999bcc5c34133ee64.
2012-10-18i update core ode plugin and make it load is meshs (i hope)UbitUmarov1-1/+1
Signed-off-by: Melanie <melanie@t-data.com>
2012-10-09av_av_collisions_off = false OdePhysics Settings in OpenSimDefaults.ini - ↵teravus1-2/+9
No Avatar Avatar Collisions. This causes avatar to be able to walk through each other as if they're ghosts but still interact with the environment.
2012-10-09Add config option to plant avatar where they are reducing avatar avatar ↵teravus1-1/+7
'pushability' av_planted see OpenSimDefaults.ini. Use when you have unruly visitors that rudely push each other around. Still allows a small amount of movement based on the avatar movement PID controller settings. You can increase the spring tension in the PID controller and really prevent any movement if you would like.
2012-10-07i update core ode plugin and make it load is meshs (i hope)UbitUmarov1-6/+35
2012-10-03Soliciting for comments on smoothness of physics objects for this build.teravus1-6/+35
This introduces expected contact point hints to the ODE Collider to better determine when to throttle updates as excessive. This /should/ smooth physics objects out again, however, I cannot know every configuration of OpenSimulator, so I'm requesting that testers please examine this change on their build. Thanks!
2012-07-27Remove the LandGeom checks in OdeScene - these are pointless since LandGeom ↵Justin Clark-Casey (justincc)1-4/+2
is always IntPtr.Zero and contacts returned always have a valid geometry. Possibly this was for a feature that was never implemented or was otherwise removed. Thanks to SignpostMarv for the spot of the warning that shows this parameter was never changed.
2012-07-26Add check so Ode does not try to simulate after it has been Dispose()'ed. ↵Robert Adams1-0/+9
Fixes exception that happens when shutting down region (improvements from last patch)
2012-06-29Move update of the final optional ODE total frame stat inside the OdeLock ↵Justin Clark-Casey (justincc)1-3/+3
rather than outside to avoid a very occasional race condition with the stat collection thread
2012-06-29refactor: rename _collisionEventPrim to m_collisionEventActors and ↵Justin Clark-Casey (justincc)1-12/+12
_collisionEventPrimChanges to m_collisionEventActorsChanges to reflect their actual contents. These dictionaries handle all actor types, not just physical prims.
2012-06-01Add optional total avatars, total prims and active prims stats to ODE plugin.Justin Clark-Casey (justincc)1-0/+21
These will act as a sanity check with the main scene stats, to show that physics scene entities are being managed properly. Total prims will not match scene total prims since physics total does not include phantom prims
2012-06-01If OdeScene.Near() returns no collision contacts, then exit as early as ↵Justin Clark-Casey (justincc)1-0/+4
possible. All subsequent code is only relevant if there are contacts.
2012-06-01Add optional stat for the other collision time per frame not spent in ODE ↵Justin Clark-Casey (justincc)1-1/+16
native spaces or geom collision code
2012-06-01Add avatar forces calculation, prim force and raycasting per frame ↵Justin Clark-Casey (justincc)1-7/+46
millisecond optional stats
2012-06-01Collection optional avatar and prim taint frame millisecond timesJustin Clark-Casey (justincc)1-7/+36
2012-06-01Remove recent optional native collision frame milliseconds statJustin Clark-Casey (justincc)1-13/+1
Unnecessary since this has now been broken down into space collisions and geom collisions
2012-06-01Add optional stat that records milliseconds spent notifying collision ↵Justin Clark-Casey (justincc)1-0/+14
listeners in physics frames
2012-06-01Add avatar and prim update milliseconds per frame optional statsJustin Clark-Casey (justincc)1-7/+31
2012-06-01Add option native step frame ms statJustin Clark-Casey (justincc)1-9/+21
2012-06-01Add total ODE frame time optional stat, as a sanity check on the main scene ↵Justin Clark-Casey (justincc)1-7/+21
physics stat
2012-06-01Break down native ODE collision frame time stat into native space collision ↵Justin Clark-Casey (justincc)1-4/+22
and geom collision stats
2012-06-01Rename new collision stats to 'contacts' - there are/can be multiple ↵Justin Clark-Casey (justincc)1-6/+6
contacts per collision and this is what is actually being measured.
2012-06-01Stop adding an unnecessary duplicate _perloopcontact if the avatar is ↵Justin Clark-Casey (justincc)1-9/+4
standing on a prim. This has already been added earlier on in the method.
2012-06-01minor: comment out currently unused OdeScene.sCollisionDataJustin Clark-Casey (justincc)1-9/+9
2012-06-01Add ODE avatar and prim collision numbers if extra stats collection is enabled.Justin Clark-Casey (justincc)1-5/+34
2012-06-01Fix OdeScene.GetTopColliders() to return the top 25 colliders rather than ↵Justin Clark-Casey (justincc)1-19/+13
the first 25 that had non-zero collision scores. Also zeros collisions scores on all prims after report collection, not just the top 25. As before, this collision scores are only reset after a report is requested, which may give unrealistic numbers on the first request. So to see more realistic scores, ignore the first report and then refresh the request after a couple of seconds or so.
2012-05-31Add an optional mechanism for physics modules to collect and return ↵Justin Clark-Casey (justincc)1-10/+129
arbitrary stats. If active, the physics module can return arbitrary stat counters that can be seen via the MonitoringModule (http://opensimulator.org/wiki/Monitoring_Module) This is only active in OdeScene if collect_stats = true in [ODEPhysicsSettings]. This patch allows OdeScene to collect elapsed time information for calls to the ODE native collision methods to assess what proportion of time this takes compared to total physics processing. This data is returned as ODENativeCollisionFrameMS in the monitoring module, updated every 3 seconds. The performance effect of collecting stats is probably extremely minor, dwarfed by the rest of the physics code.
2012-04-21Comment out spurious Body != IntPtr.Zero code after disableBody(), since ↵Justin Clark-Casey (justincc)1-1/+2
disableBody() sets Body == IntPtr.Zero on all code paths.
2012-03-20refactor: precalculate the fixed movement factor for avatar tilting ↵Justin Clark-Casey (justincc)1-0/+3
(sqrt(2)) rather than doing it multiple times on every move.
2012-03-20refactor: Eliminate unnecessary duplicate avCapsuleTiltedJustin Clark-Casey (justincc)1-3/+7
2012-02-11correct the default avatar_terminal_velocity value that I accidentally left ↵Justin Clark-Casey (justincc)1-1/+1
in whilst testing
2012-02-11Clamp ODE character velocity. Make ODE falling character 54m/s by default.Justin Clark-Casey (justincc)1-0/+11
If velocity reaches 256 in any vector then bad things happen with ODE, so we now clamp this value. In addition, a falling avatar is clamped by default at 54 m/s, which is the same as a falling skydiver. This also appears to be the value used on the linden lab grid. This should resolve http://opensimulator.org/mantis/view.php?id=5882
2012-01-25Serialize calls to ODE Collide() function across OdeScene instances to ↵Justin Clark-Casey (justincc)1-1/+29
prevent ODE crashes on simulators running more than one region. It turns out that calls to Collide() are not thread-safe even for objects in different ODE physics worlds due to ODE static caches. For simulators running multiple regions, not serializing calls from different scene loops will sooner or later cause OpenSim to crash with a native stack trace referencing OBBCollider. This affects the default OPCODE collider but not GIMPACT. However, GIMPACT fails for other reasons under some current simulator loads. ODE provides a thread local storage option, but as of ODE r1755 (and r1840) DLLs compiled with this crash OpenSim immediately.
2012-01-24Restrict accessible of ODECharacter Shell and Body. Add method doc and some ↵Justin Clark-Casey (justincc)1-1/+1
error log lines.
2012-01-02Adding commented out log messages and some minor formatting for future bug ↵Justin Clark-Casey (justincc)1-0/+1
hunting. No functional changes.
2011-12-22Align default ODE_STEPSIZE with that already used through OpenSimDefaults.iniJustin Clark-Casey (justincc)1-2/+2
2011-12-20Fixed bug of avie going under the terrain when crossing regions in certain ↵Diva Canto1-2/+2
directions. This was a 1-off bug: the terrain was being placed in 127, 127 resulting in a bounding box if -2, 256. I placed it in 128, 128 resulting in a bounding box of -1, 257.
2011-12-16Comment out accidentally left in "Adding physics prim" log messageJustin Clark-Casey (justincc)1-1/+1