aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-11-22* Added missing lock to m_forcelist when AddForce is called. When a user ↵Teravus Ovares (Dan Olivares)1-3/+26
dragged a prim, in some cases, it would corrupt the datatype in memory and throw spurious IndexOutOfRangeExceptions. * Physics a situation that causes physics to spew redline messages to the console forever.
2009-11-21* Fixes the second of two terse update issues. Physical objects should react ↵Teravus Ovares (Dan Olivares)1-0/+3
normally again.
2009-11-21* Fixes one of two terse update issues. There's still one left, but this ↵Teravus Ovares (Dan Olivares)1-1/+9
one fixes the situation where the object on the server is moving but no updates are being sent.
2009-11-11clean up some cruftdahlia1-12/+2
2009-11-11minor: remove mono compiler warningJustin Clark-Casey (justincc)1-1/+1
2009-11-09add an overload to _SculptMesh for meshing from a list of coordinatesdahlia1-3/+46
add conditional compilation for System.Drawing dependency
2009-11-09Following various discussions on irc and in the OpenSim dev OSGrid meeting ↵Justin Clark-Casey (justincc)1-1/+1
last week, change av_capsule_tilted to false by default This appears to now give better ODE physics response (less sinking into the ground, etc.) Please change it back if this is actually a bad idea for some reason
2009-11-09minor: remove some mono compiler warningsJustin Clark-Casey (justincc)2-2/+4
2009-11-03minor: remove some mono compiler warningsJustin Clark-Casey (justincc)3-17/+17
2009-11-02Delete depricated extrusion methods and redirect to universal extrude method.dahlia1-833/+10
Sync with PrimMesher.cs r47 on forge.
2009-10-29* Log progress messages when loading OAR files with a lot of assetsJohn Hurliman4-72/+92
* Change the PhysicsCollision callback for objects to send full contact point information. This will be used to calculate the collision plane for avatars * Send the physics engine velocity in terse updates, not the current force being applied to the avatar. This should fix several issues including crouching through the floor and walking through walls
2009-10-28Always send a time dilation of 1.0 while we debug rubberbanding issuesJohn Hurliman1-1/+2
2009-10-28Limit physics time dilation to 1.0John Hurliman1-1/+1
2009-10-28* Reduce the velocity tolerance on sending terse updates to avoid slowly ↵John Hurliman1-3/+10
drifting prims/avatars * Added contacts_per_collision to the ODE config section. This allows you to reduce the maximum number of contact points ODE will generate per collision and reduce the size of the array that stores contact structures
2009-10-28Fixed a bad check on velocity in the ODE near() callback (it was only ↵John Hurliman1-3/+3
checking for velocity in certain directions, and was calling the get_Velocity() function three times)
2009-10-28Switching sculpty from CSJ2K back to OpenJPEG for now until more kinks are ↵John Hurliman1-2/+6
ironed out
2009-10-28Print the exception message when CSJ2K decoding fails for sculpty texturesJohn Hurliman1-3/+3
2009-10-27Move the calculation of time dilation from the scene to the physics engine. ↵John Hurliman2-2/+14
The scene is still the one reporting dilation so this does not break the API or remove flexibility, but it gets the calculation happening in the right place for the normal OpenSim usage. The actual calculation of physics time dilation probably needs tweaking
2009-10-26* Switched from OpenJPEG to CSJ2K in MeshmerizerJohn Hurliman1-3/+1
* Tested the previous patch and found no regressions
2009-10-26Experimental change of PhysicsVector to Vector3. UntestedJohn Hurliman25-800/+794
2009-10-26Added calls to GC.AddMemoryPressure() when unmanaged memory is allocated for ↵John Hurliman1-0/+6
ODE (helps the GC make better scheduling choices), and a call to GC.Collect() right before logins are enabled for a region. Although this doesn't change actual memory usage, it improves the reported usage from OpenSim and the operating system
2009-10-26No need to create dupe TriMeshData for ODE. A previous patch created a ↵Dan Lake1-6/+14
dictionary to store unique meshes in Meshmerizer based on creation params. This patch contains a dictionary to map each of those unique meshes to its ODE TriMeshData. This eliminated hundreds of megabytes of memory consumption in the unmanaged heap when there are lots of the same prim (roof tiles, bricks, siding, decks, chairs, etc). The objects do not need to be physical to benefit from this patch.
2009-10-26Do case-insensitive comparisons on region names in LLStandaloneLoginModuleJohn Hurliman1-2/+2
2009-10-26* Changed the watchdog timer to improve the speed of UpdateThread(), only ↵John Hurliman1-2/+6
track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later * Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
2009-10-25Changing Scene.ForEachClient to use the synchronous for loop instead of ↵John Hurliman2-1/+4
Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces * Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff * Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape() * Improved the instantiation of PrimitiveBaseShape
2009-10-23Patch from dslake http://opensimulator.org/mantis/view.php?id=4291 0004291: ↵dslake1-2/+3
Inconsistent locking of ODE tainted prims
2009-10-22* Moved Copyrights above the comments in ODEPrim and ODEDynamics so they're ↵Teravus Ovares (Dan Olivares)2-26/+28
consistent with the rest (and so chi11ken's auto copyright adding script doesn't duplicate the copyright.
2009-10-22Commented out instrumentation in ODEPrim.csKittoFlora1-0/+8
2009-10-22Commented out instrumentation in ODEPrim.csKittoFlora1-0/+8
2009-10-20* Removing ODEPrim and ODECharacter GetHashCode() overrides since they were ↵John Hurliman2-10/+0
based on something that could change * Tweaked a few other GetHashCode() overrides to bring them in line with MSDN recommendations
2009-10-19Forgot {} on last commit.Diva Canto1-0/+2
2009-10-19More instrumentation in physics.Diva Canto1-0/+2
2009-10-19Formatting cleanup.Jeff Ames4-7/+7
2009-10-18A bit of instrumentation to figure out what's going on with physics actors.Diva Canto2-1/+14
2009-10-18Zero out PrimitiveBaseShape.SculptData after the JPEG2000 data has been ↵John Hurliman1-0/+3
decoded to allow garbage collection on it
2009-10-16* One more tweak to inform the user that they may not be able to move until ↵Teravus Ovares (Dan Olivares)1-1/+1
relogging.
2009-10-16* After seeing it repeat over and over again.. again, We won't inform the ↵Teravus Ovares (Dan Olivares)1-1/+1
scenepresence that there was an issue so it doesn't try to make the capsule again. I have a feeling that this is some kind of object leak. We'll know for sure.. soon.
2009-10-16* One more attempt at the NullRef In The OdePlugin. This might fix it, but ↵Teravus Ovares (Dan Olivares)2-1/+22
it will definitely get us closer to the root cause.
2009-10-16* Added a message for when the null reference exception occurs to make ↵Teravus Ovares (Dan Olivares)1-3/+4
debugging easier. Without this, from the user's perspective.. they cannot move, fly or otherwise do anything physical and without a message on the console, it would be hard to tell that this is what is occurring.
2009-10-16* A hacky attempt at resolving mantis #4260. I think ODE was unable to ↵Teravus Ovares (Dan Olivares)1-2/+22
allocate memory, and therefore the unmanaged wrapper call fails or worse.. there's some unmanaged resource accounting in the ODEPlugin for ODECharacter that isn't being done properly now. * The broken avatar may not be able to move, but it won't stop simulate from pressing on now. And, the simulator will try to destroy the avatar's physics proxy and recreate it again... but if this is what I think it is, it may not help.
2009-10-13* Eliminated unnecessary parameters from LLUDPServer.SendPacketData()John Hurliman1-1/+1
* Changed PrimMesher's Quat.Identity to return <0,0,0,1> instead of <0,0,0,1.1>
2009-10-12Optimize ODE mesh by removing sleep. On a region with 100,000 prims and ODE ↵unknown1-1/+1
enabled, the first Heartbeat loop call to UpdatePhysics takes 20 minutes. 75% of that time is spent in this sleep. (100k prims * 10ms)
2009-10-11sync PrimMesher with r46dahlia2-19/+782
2009-10-11disambiguate System.Path (preparation for new PrimMesher)dahlia1-1/+1
2009-10-10* comment out the velocity test, using updates every 500 ms as set in ↵Teravus Ovares (Dan Olivares)1-0/+3
ScenePresence.AddToPhysicalScene. * This causes time to be counted in ODECharacter and, when a collision occurs, the physics scene will report the collisions only if the the difference of last time it reported the collisions from now was more then the set ms. * This is cool because the time accrues while collisions are not taking place and when they do take place again, you get an immediate update.
2009-10-10* Make ODECharacter respect the scene's requested collision update timeTeravus Ovares (Dan Olivares)2-2/+14
* Set the Scene collision update time to 500 ms
2009-10-07Correct a build break caused by an optimization in trunkMelanie1-1/+1
2009-10-05minor: remove mono compile warningJustin Clark-Casey (justincc)1-5/+2
2009-10-05Eliminate pinned Mesh data on managed heap by using IntPtrs to memory ↵Dan Lake3-61/+120
allocated on the unmanaged heap. This prevents fragmentation of the managed heap and the resulting stress on GC. A region with ~150,000 prims using ODE and Meshmerizer saw memory remain flat around 1.2GB as opposed to 1.5GB and continually growing due to pinned memory. This patch complements the unique mesh dictionary patch applied to Meshmerizer but is independent. The net effect is a 60-75% reduction in memory for our largest regions.
2009-10-04only cache mesh if meshing was successfuldahlia1-8/+4
re-enable sculpt mesh caching