Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | Instead of having scene add/remove collision events directly to the OdeScene ↵ | Justin Clark-Casey (justincc) | 2011-11-15 | 1 | -20/+38 | |
| | | | | | | | | | | | | | | | | | | collision event dictionary, marshall them via a change dictionary first. This is to avoid a complicated tri-thread deadlock on region crossing for avatars with attachments, where 1) XEngine starting up scripts can lock XEngine.m_Scripts and then try to lock OdeScene._collisionEventPrim while starting up a script due to avatar border crossing 2) An existing collision event will lock OdeScene._collisionEventPrim and then try to lock SP.m_attachments while trying to send the collision event to attachments 3) The avatar still entering the region will lock SP.m_attachments and then try to lock m_Scripts to start more attachment scripts. | |||||
| * | use a more efficient dictionary in OdeScene._collisionEventPrim rather than ↵ | Justin Clark-Casey (justincc) | 2011-11-15 | 1 | -7/+4 | |
| | | | | | | | | a list | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-11-05 | 2 | -1/+4 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||||
| * | Add comment for experimental effect of removing the Thread.Sleep(20) in ↵ | Justin Clark-Casey (justincc) | 2011-11-04 | 2 | -1/+4 | |
| | | | | | | | | ODEPrim.changevelocity() | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-11-04 | 1 | -2/+25 | |
|\ \ | |/ | ||||||
| * | Stop llPushObject() from causing problems by adding force via a taint rather ↵ | Justin Clark-Casey (justincc) | 2011-11-04 | 1 | -2/+25 | |
| | | | | | | | | | | | | | | than directly. This isn't a perfect solution since there can be a race between the taint processing and taint setting, as force needs to be reset after processing. Needs careful locking in the future. | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-10-30 | 1 | -68/+58 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||||
| * | Add taint target velocity for ODECharacters as is already done for ↵ | Justin Clark-Casey (justincc) | 2011-10-29 | 1 | -7/+12 | |
| | | | | | | | | | | | | | | ODECharacter position and position and velocity for ODEPrims. This is to help stop surprises if the velocity is set in the middle of physics calculations, though this probably isn't a huge problem. It's more for consistency and for the next step of removing some scene locks | |||||
| * | tidy up OdeCharacter so that we just use OpenMetaverse.Vector3 assignment ↵ | Justin Clark-Casey (justincc) | 2011-10-29 | 1 | -51/+39 | |
| | | | | | | | | | | | | directly where possible, instead of transferring X, Y and Z components separately some of this is probably a hold over from using ODE.Vector3, which is still necessary in some places. | |||||
| * | Move position set from taint to logically better position at top of ↵ | Justin Clark-Casey (justincc) | 2011-10-29 | 1 | -12/+12 | |
| | | | | | | | | ODECharacter.ProcessTaints() though this makes no practical difference | |||||
| * | Stop setting _position as well as m_taint_position in ODECharacter.Position | Justin Clark-Casey (justincc) | 2011-10-29 | 1 | -4/+1 | |
| | | | | | | | | | | setting position at the same time as taint appears to undermine the whole purpose of taint testing doesn't reveal any obvious regressions in doing this | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-10-27 | 2 | -1/+24 | |
|\ \ | |/ | | | | | | | | | | | | | | | Conflicts: OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||||
| * | Fix a bug I introduced yesterday in ODE physics where prim scripts would ↵ | Justin Clark-Casey (justincc) | 2011-10-27 | 2 | -1/+24 | |
| | | | | | | | | only receive the very first collision. | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-10-26 | 2 | -2/+2 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-10-26 | 6 | -53/+45 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Framework/Watchdog.cs | |||||
| * | Clear OdeCharacter CollisionEventUpdate when we subscribe or unsubscribe ↵ | Justin Clark-Casey (justincc) | 2011-10-25 | 1 | -0/+2 | |
| | | | | | | | | from collision events | |||||
| * | Remove unused fields from CollisionEventUpdate | Justin Clark-Casey (justincc) | 2011-10-25 | 5 | -28/+10 | |
| | | ||||||
| * | Get rid of the pointless null checks on collision listeners. Add warning ↵ | Justin Clark-Casey (justincc) | 2011-10-25 | 1 | -0/+6 | |
| | | | | | | | | about synchronicity for PhysicsActor.OnCollisionUpdate event doc | |||||
| * | When sending object collision updates, don't null out and recreate the ↵ | Justin Clark-Casey (justincc) | 2011-10-25 | 2 | -13/+8 | |
| | | | | | | | | CollisionEventUpdate() if the number of collisions falls to zero. Reuse the existing one instead. | |||||
| * | For ScenePresence collision events, instead of creating a new ↵ | Justin Clark-Casey (justincc) | 2011-10-25 | 2 | -5/+11 | |
| | | | | | | | | | | | | CollisionEventsThisFrame every time we need to send some new ones, reuse the existing one instead. This assumes that the listener is using the data synchronously, which is currently the case. | |||||
| * | Fix bug where collision event listeners were not removed once the listener ↵ | Justin Clark-Casey (justincc) | 2011-10-25 | 1 | -4/+5 | |
| | | | | | | | | | | | | | | had gone away. This was causing continuous use of temporary memory even when all avatars had left the scene. Memory does leak but it does cause more calls to the garbage collector, which would pause the scene thread for a very short while during collection. | |||||
| * | minor: rename a parameter in OdeScene.Simulate() from actor -> prim since ↵ | Justin Clark-Casey (justincc) | 2011-10-25 | 1 | -4/+4 | |
| | | | | | | | | it's an OdePrim | |||||
* | | Merge commit '4241ee5dfab99d4e247624a2f368a8a931d2e54c' into bigmerge | Melanie | 2011-10-25 | 1 | -5/+3 | |
|\ \ | |/ | ||||||
| * | very minor removal of old commented out line of code in OdeScene | Justin Clark-Casey (justincc) | 2011-10-21 | 1 | -5/+3 | |
| | | ||||||
* | | Merge commit '30fe66d3ab534422407415817b570a66096c543b' into bigmerge | Melanie | 2011-10-25 | 1 | -3/+0 | |
|\ \ | |/ | ||||||
| * | remove unnecessary null check on _collisionEventPrim | Justin Clark-Casey (justincc) | 2011-10-20 | 1 | -3/+0 | |
| | | ||||||
* | | Merge commit '9c430208769ab7fd7877093e278e8fcae02ecef3' into bigmerge | Melanie | 2011-10-25 | 1 | -22/+23 | |
|\ \ | |/ | ||||||
| * | Get OdeScene to use passed in time step rather than hard-coded 0.089 | Justin Clark-Casey (justincc) | 2011-10-20 | 1 | -22/+23 | |
| | | | | | | | | However, I still don't recommend changing MinFrameTime from 0.089, high values do not work well and lower values don't seem to make much difference | |||||
* | | Merge commit 'b63ec987b0a1692da4c5e84facf0ea149d4cfe90' into bigmerge | Melanie | 2011-10-25 | 2 | -13/+5 | |
|\ \ | |/ | ||||||
| * | For now, stop passing timeStep into methods where it's not actually used. | Justin Clark-Casey (justincc) | 2011-10-20 | 2 | -13/+5 | |
| | | ||||||
* | | Merge commit '581885da75c57250201b34e2d585d32c8f07089a' into bigmerge | Melanie | 2011-10-25 | 1 | -0/+6 | |
|\ \ | |/ | ||||||
| * | Temporarily put in log lines to record time taken to set terrain in OdeScene. | Justin Clark-Casey (justincc) | 2011-10-18 | 1 | -0/+6 | |
| | | ||||||
* | | Merge commit '03202ada2918c0c0837e8de50e3a0436e4407c91' into bigmerge | Melanie | 2011-10-25 | 2 | -2/+10 | |
|\ \ | |/ | ||||||
| * | Store scene identifier passed in to OdeScene for later debug messages | Justin Clark-Casey (justincc) | 2011-10-18 | 2 | -2/+10 | |
| | | ||||||
* | | Merge commit '1d4cd76e8a8c64da71fc384ff9c654d7f4f849c1' into bigmerge | Melanie | 2011-10-25 | 1 | -16/+13 | |
|\ \ | |/ | ||||||
| * | Don't bother taking OdeLock during OdeScene construction, since there can be ↵ | Justin Clark-Casey (justincc) | 2011-10-18 | 1 | -16/+13 | |
| | | | | | | | | no contention until the object is constructed. | |||||
* | | Merge commit 'f10a824e47549806c1fa647c4e9fba4c8cf6ad13' into bigmerge | Melanie | 2011-10-25 | 1 | -18/+13 | |
|\ \ | |/ | ||||||
| * | Remove unnecessary lock of OdeLock in OdePrim.changeadd() | Justin Clark-Casey (justincc) | 2011-10-18 | 1 | -18/+13 | |
| | | | | | | | | This taint can only ever be processed from the OdeScene.Simulate() loop, which already locks OdeLock. | |||||
* | | Merge commit '5515c45e3b42497f64f8e5846697471b1de952c5' into bigmerge | Melanie | 2011-10-25 | 2 | -1/+3 | |
|\ \ | |/ | ||||||
| * | minor: method doc to explain a lock of OdeLock | Justin Clark-Casey (justincc) | 2011-10-18 | 2 | -1/+3 | |
| | | ||||||
* | | Merge commit '71d221cdc090cdedf371ead534421bb7074908cd' into bigmerge | Melanie | 2011-10-25 | 4 | -97/+81 | |
|\ \ | |/ | ||||||
| * | Remove the unused CollisionLocker from ODE | Justin Clark-Casey (justincc) | 2011-10-18 | 4 | -97/+81 | |
| | | | | | | | | Despite its name, this wasn't actually being used in any collision checking | |||||
* | | Merge commit '0c041ce12f393367e2754e88d9b8dad5e45f88c4' into bigmerge | Melanie | 2011-10-25 | 1 | -0/+1 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||||
| * | Implement osNpcSit(). This is still in development so don't trust it | Justin Clark-Casey (justincc) | 2011-10-17 | 1 | -0/+1 | |
| | | | | | | | | | | | | | | | | | | Format is osNpcSit(<npc-uuid>, <target-uuid>, OS_NPC_SIT_IMMEDIATE) e.g. osNpcSit(npc, llGetKey(), OS_NPC_SIT_IMMEDIATE); At the moment, sit only succeeds if the part has a sit target set. NPC immediately sits on the target even if miles away - they do not walk up to it. This method is in development - it may change so please don't trust it yet. Standing will follow shortly since that's kind of important once you're sitting :) | |||||
* | | Merge commit '978fb3d482072d840e6280aa5acd090b67ee6205' into bigmerge | Melanie | 2011-10-25 | 2 | -53/+36 | |
|\ \ | |/ | ||||||
| * | reduce access to ODECharacter methods to make code analysis easier. ↵ | Justin Clark-Casey (justincc) | 2011-10-15 | 2 | -54/+36 | |
| | | | | | | | | Eliminate redundant argument on ProcessTaints() | |||||
* | | Merge commit '9cc2694776e261868138c325a82ce5481c2908ec' into bigmerge | Melanie | 2011-10-25 | 1 | -19/+17 | |
|\ \ | |/ | ||||||
| * | restrict unnecessary access levels on ODEPrim fields/properties | Justin Clark-Casey (justincc) | 2011-10-15 | 1 | -19/+17 | |
| | | ||||||
* | | Merge commit 'f2132329a358db2c66c29501d35ef54eae8d6eed' into bigmerge | Melanie | 2011-10-25 | 3 | -129/+195 | |
|\ \ | |/ | ||||||
| * | refactor: make methods that do not need to be public in ODE private or ↵ | Justin Clark-Casey (justincc) | 2011-10-15 | 3 | -129/+195 | |
| | | | | | | | | internal to aid code reading/analysis. Remove some unused method arguments |