aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Drop all locking of part.TaskInventory in favour of a ReaderWriterLockSlim ↵CasperW2009-11-241-17/+21
| | | | | | | | lock handler. This gives us: - Faster prim inventory actions. Multiple threads can read at once. - Fixes the known prim inventory thread locks - In the event of a thread lock occurring, it will usually self heal after sixty seconds with an error message in the console
* Merge branch 'master' into careminsterMelanie2009-11-231-1/+1
|\
* \ Merge branch 'master' into careminsterMelanie2009-11-211-0/+4
|\ \ | |/
| * * Fixes the second of two terse update issues. Physical objects should react ↵Teravus Ovares (Dan Olivares)2009-11-211-0/+1
| | | | | | | | normally again.
| * * Fixes one of two terse update issues. There's still one left, but this ↵Teravus Ovares (Dan Olivares)2009-11-211-0/+3
| | | | | | | | one fixes the situation where the object on the server is moving but no updates are being sent.
* | Merge branch 'careminster' into testsKittoFlora2009-11-161-92/+79
|\ \
| * | - Lower TIME_MS_TOLERANCE to 200ms - Allow m_updateFlag to be reset to 0 in ↵unknown2009-11-151-12/+6
| |/ | | | | | | the event of a terse update being rejected - Re-add a synchronous SendTo for certain types of packets
| * * Removing the redundant SendPrimitiveTerseData.State field, it duplicates ↵John Hurliman2009-11-091-3/+1
| | | | | | | | | | | | AttachPoint * LLClientView.CreateImprovedTerseBlock() now uses AttachPoint and does the proper high-low swap (this should fix disappearing attachment pieces)
| * Initialize SceneObjectPart.RotationOffset to Quaternion.IdentityJohn Hurliman2009-11-041-1/+1
| |
| * Fixing race conditions in the SceneObjectPart propertiesJohn Hurliman2009-11-021-56/+53
| |
| * Removing duplicate SceneObjectPart.RotationalVelocity propertyJohn Hurliman2009-11-021-13/+7
| |
| * * Log progress messages when loading OAR files with a lot of assetsJohn Hurliman2009-10-291-1/+1
| | | | | | | | | | * 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
| * Always send a time dilation of 1.0 while we debug rubberbanding issuesJohn Hurliman2009-10-281-3/+2
| |
| * * Standalone logins will now go through the sequence of "requested region, ↵John Hurliman2009-10-281-7/+8
| | | | | | | | | | | | | | default region, any region" before giving up * Hip offset should have been added not subtracted (it's a negative offset). This puts avatar feet closer to the ground * Improved duplicate checking for terse updates. This should reduce bandwidth and walking through walls
| * * Reduce the velocity tolerance on sending terse updates to avoid slowly ↵John Hurliman2009-10-281-1/+1
| | | | | | | | | | | | 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
| * Track timestamps when terse updates were last sent for a prim or avatar to ↵John Hurliman2009-10-281-1/+5
| | | | | | | | avoid floating away forever until a key is pressed (deviates from SL behavior in a hopefully good way)
* | Merge branch 'vehicles' into testsKittoFlora2009-10-271-148/+170
|\ \ | |/ | | | | | | | | | | Conflicts: OpenSim/Region/Physics/Manager/PhysicsActor.cs OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
| * Lowering the position tolerance of terse updates for ScenePresences to ↵John Hurliman2009-10-271-1/+1
| | | | | | | | mitigate some of the rubberbanding issues while we are sending incorrect time dilation values
| * Experimental change of PhysicsVector to Vector3. UntestedJohn Hurliman2009-10-261-23/+23
| |
| * * Double the priority on avatar bake texture requests to get avatars rezzing ↵John Hurliman2009-10-261-10/+34
| | | | | | | | | | | | in faster than the surrounding scene * Adds duplicate tracking for SceneObjectParts and ScenePresences to avoid sending out duplicate ImprovedTerseObjectUpdate packets
| * Changing Scene.ForEachClient to use the synchronous for loop instead of ↵John Hurliman2009-10-251-55/+54
| | | | | | | | | | | | | | | | | | | | 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
| * Experimental change to use an immutable array for iterating ScenePresences, ↵John Hurliman2009-10-231-61/+60
| | | | | | | | avoiding locking and copying the list each time it is accessed
* | Add llRotLookat pt1.KittoFlora2009-10-261-0/+12
|/
* Merge branch 'master' into vehiclesMelanie2009-10-221-17/+9
|\
| * * Rewrote the methods that build ObjectUpdate and ImprovedTerseObjectUpdate ↵John Hurliman2009-10-181-3/+3
| | | | | | | | | | | | | | | | | | | | packets to fill in the data more accurately and avoid allocating memory that is immediately thrown away * Changed the Send*Data structs in IClientAPI to use public readonly members instead of private members and getters * Made Parallel.ProcessorCount public * Started switching over packet building methods in LLClientView to use Util.StringToBytes[256/1024]() instead of Utils.StringToBytes() * More cleanup of the ScenePresences vs. ClientManager nightmare * ScenePresence.HandleAgentUpdate() will now time out and drop incoming AgentUpdate packets after three seconds. This fixes a deadlock on m_AgentUpdates that was blocking up the LLUDP server
| * Object update prioritization by Jim Greensky of Intel Labs, part one. This ↵John Hurliman2009-10-151-4/+4
| | | | | | | | implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon
| * * Removed some of the redundant broadcast functions in Scene and SceneGraph ↵John Hurliman2009-10-151-11/+1
| | | | | | | | | | | | | | | | so it is clear who/what the broadcast is going to each time * Removed two redundant parameters from SceneObjectPart * Changed some code in terse update sending that was meant to work with references to work with value types (since Vector3 and Quaternion are structs) * Committing a preview of a new method for sending object updates efficiently (all commented out for now)
* | Merge branch 'master' into vehiclesMelanie2009-10-051-3/+4
|\ \ | |/
| * disable physics actors for flexible primsdahlia2009-10-041-3/+4
| |
* | Merge branch 'master' into vehiclesMelanie2009-10-011-13/+12
|\ \ | |/
| * Formatting cleanup.Jeff Ames2009-10-011-3/+3
| |
| * Formatting cleanup.Jeff Ames2009-10-011-9/+9
| |
| * This fix addresses the problem where phantom objects do notAlan M Webb2009-09-291-1/+1
| | | | | | | | | | | | | | always behave like they are phantom, and llVolumeDetect seems to operate in a random fashion. Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
| * Add copyright header. Formatting cleanup.Jeff Ames2009-09-291-1/+1
| |
* | And another merge issueKitto Flora2009-09-301-0/+1
| |
* | And anotherKitto Flora2009-09-301-1/+1
| |
* | Another small change to avoid later merge conflictKitto Flora2009-09-301-2/+3
| |
* | Small chaneg to adapt to trunkKitto Flora2009-09-301-2/+3
| |
* | Commit initial version of KittoFlora's vehicle changesopensim2009-09-301-154/+113
|/
* While running a test case I had written to pursue problems withAlan M Webb2009-09-171-113/+152
| | | | | | | | | | | | | | | | | | | | llDie() not always completely working, I discovered I was getting a lot (60+ over 6000 iterations of the test case) null pointer exceptions in various physics related checks in SceneObjectPart. It was apparent that the (frequent) checks for PhysActor being non-null is an insufficient protection in a highly asynchronous environment. The null reference exceptions are one example of failure, but it could also happen that a sequence started with one instance of a PhysicsActor might finish with another? Anyway, I have implemented a safer mechanism that should stop the errors. I re-ran my test case with the fix in place, and completed nearly 1000 iterations without a single occurrence. SceneObjectPart is seriously in need of rejigging, if not for this reason, then for its ridiculous size. Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
* * Lock timers when Calling Start() and Stop() when the Thread Context is ↵Teravus Ovares (Dan Olivares)2009-09-091-0/+2
| | | | murky. This affects Mono only.
* * Fix the reason why physical vehicles have a problem in virtual regions.Teravus Ovares (Dan Olivares)2009-08-291-1/+2
|
* Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim into ↵Diva Canto2009-08-161-27/+25
|\ | | | | | | inventory-connector
| * Misc cleanup.Jeff Ames2009-08-161-27/+25
| |
* | Changed FromAssetID to FromItemIDDiva Canto2009-08-151-3/+3
|/
* Formatting cleanup. Fix some compiler warnings.Jeff Ames2009-08-131-26/+23
|
* Another stab at cmickeyb's patch for script GC.Melanie2009-08-071-8/+8
| | | | | Moved the Close() for the appdomain-hosted parts into a new destructor on ScriptInstance.
* Revert the XEngine memleak patch, it causes premature GC.Melanie2009-08-071-8/+8
| | | | | This matches behavior seen with an earlier attempt to do this, apparently the sponsor mechanism does't work in Mono
* |From: James J Greensky <jame.j.greensky@intel.com>Melanie2009-08-061-8/+8
| | | | | | | | | | | | | | | | | | | |Date: Wed, 5 Aug 2009 09:51:52 -0700 |Subject: [PATCH] Closed two major memory leaks for scripted objects | |Two major memory leaks for the scripted objects were fixed |- One leak had to do with remoting acrossing app domains. When a script and | its controlling agent communicate across an application boundary, it calls | functions on a stub proxy object that then invokes the remote method on | the object in the other app domain. These stub objects (two for each script) | were setup to have infinate lifetimes and were never being garbage collected. |- The second leak was the result of adding a scene object part instance method | to a scene event and never removing it. This cause the event's delegate list | to maintain a link to that object which is then never freed as the scene event | object is never destroyed. Patch applied, please direct feedback to me. Possible issue: Longtime idle scripts like vendors may fail.
* Add plumbing for the SceneObjectDeleter to wait for the script engine toMelanie2009-08-041-0/+5
| | | | allow final deletion of objects. Meant to support the attach(NULL_KEY) event,