Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | Serialize calls to ODE Collide() function across OdeScene instances to ↵ | Justin Clark-Casey (justincc) | 2012-01-25 | 2 | -1/+32 | |
| | | | | | | | | | | | | | | | | | | 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. | |||||
* | | Merge branch 'master' into careminster | Melanie | 2012-01-25 | 2 | -12/+27 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/SceneGraph.cs | |||||
| * | Restrict accessible of ODECharacter Shell and Body. Add method doc and some ↵ | Justin Clark-Casey (justincc) | 2012-01-24 | 2 | -12/+27 | |
| | | | | | | | | error log lines. | |||||
* | | Merge branch 'master' into careminster | Melanie | 2012-01-02 | 1 | -0/+1 | |
|\ \ | |/ | | | | | | | | | | | | | Conflicts: OpenSim/Region/CoreModules/Scripting/HttpRequest/ScriptsHttpRequests.cs OpenSim/Region/Framework/Scenes/Scene.cs OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs OpenSim/Services/Interfaces/IUserAccountService.cs | |||||
| * | Adding commented out log messages and some minor formatting for future bug ↵ | Justin Clark-Casey (justincc) | 2012-01-02 | 1 | -0/+1 | |
| | | | | | | | | hunting. No functional changes. | |||||
* | | Merge branch 'master' into careminster | Melanie | 2011-12-23 | 1 | -2/+2 | |
|\ \ | |/ | ||||||
| * | Align default ODE_STEPSIZE with that already used through OpenSimDefaults.ini | Justin Clark-Casey (justincc) | 2011-12-22 | 1 | -2/+2 | |
| | | ||||||
* | | Merge branch 'master' into careminster | Melanie | 2011-12-22 | 2 | -6/+2 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||||
| * | Remove unused SetAcceleration and add set on Acceleration parameter | Dan Lake | 2011-12-20 | 2 | -6/+2 | |
| | | ||||||
* | | Merge branch 'master' into careminster | Melanie | 2011-12-20 | 1 | -2/+2 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs | |||||
| * | Merge branch 'master' of ssh://opensimulator.org/var/git/opensim | Diva Canto | 2011-12-20 | 1 | -1/+1 | |
| |\ | ||||||
| * | | Fixed bug of avie going under the terrain when crossing regions in certain ↵ | Diva Canto | 2011-12-20 | 1 | -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. | |||||
* | | | Merge branch 'master' into careminster | Melanie | 2011-12-18 | 2 | -25/+49 | |
|\ \ \ | | |/ | |/| | ||||||
| * | | Comment out accidentally left in "Adding physics prim" log message | Justin Clark-Casey (justincc) | 2011-12-16 | 1 | -1/+1 | |
| |/ | ||||||
| * | Stop pointlessly setting the m_colliderarr[] to false in the ODECharacter ↵ | Justin Clark-Casey (justincc) | 2011-12-15 | 1 | -5/+0 | |
| | | | | | | | | constructor | |||||
| * | Stop having to call SetHeight again in ScenePresence.AddToPhysicalScene() ↵ | Justin Clark-Casey (justincc) | 2011-12-15 | 1 | -16/+22 | |
| | | | | | | | | | | | | when we've already passed size information to the avatar at PhysicsScene.AddAvatar() Eliminate some copypasta for height setting in OdeCharacter | |||||
| * | Code cleanup related to ScenePresence.PhysicsActor and OdeScene/OdeCharacter | Justin Clark-Casey (justincc) | 2011-12-15 | 2 | -8/+24 | |
| | | | | | | | | | | | | Stop hiding RemoveAvatar failure, add log messages when characters are removed through defects or re-added unexpectedly. Add commented out log lines for future use. Use automatic property for PhysicsActor for better code readability and simplicity | |||||
| * | minor: add some currently commented log lines for use in debugging | Justin Clark-Casey (justincc) | 2011-12-14 | 1 | -1/+8 | |
| | | ||||||
* | | Merge branch 'master' into careminster | Melanie | 2011-12-14 | 1 | -58/+20 | |
|\ \ | |/ | ||||||
| * | Simplify some manipulation of _taintedActors in OdeScene | Justin Clark-Casey (justincc) | 2011-12-14 | 1 | -13/+6 | |
| | | ||||||
| * | Eliminate _taintedPrimsH and _taintedPrimsL (and _taintedPrimLock) in favour ↵ | Justin Clark-Casey (justincc) | 2011-12-14 | 1 | -45/+14 | |
| | | | | | | | | | | | | of just a _taintedPrims HashSet. There's no point maintaining a list because any pending taint operations are all carried out in the same call anyway. | |||||
* | | Merge branch 'master' into careminster | Melanie | 2011-12-14 | 1 | -2/+1 | |
|\ \ | |/ | ||||||
| * | minor: remove pointless comment from OdeScene.cs | Justin Clark-Casey (justincc) | 2011-12-12 | 1 | -2/+1 | |
| | | ||||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-11-28 | 2 | -7/+7 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||||
| * | remove some mono compiler warnings | Justin Clark-Casey (justincc) | 2011-11-25 | 2 | -7/+7 | |
| | | ||||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-11-24 | 3 | -530/+511 | |
|\ \ | |/ | ||||||
| * | Log error if we attempt to add/remove an OdeCharacter from the _characters ↵ | Justin Clark-Casey (justincc) | 2011-11-22 | 1 | -23/+33 | |
| | | | | | | | | list inappropriately | |||||
| * | Stop removing actor from the hash maps in OdeScene.RemoveCharacter() since ↵ | Justin Clark-Casey (justincc) | 2011-11-22 | 1 | -6/+1 | |
| | | | | | | | | this is now being down in OdeCharacter.DestroyOdeStructures() | |||||
| * | Comment out uncalled OdeScene.UnCombine() | Justin Clark-Casey (justincc) | 2011-11-22 | 1 | -58/+58 | |
| | | ||||||
| * | slightly simplify OdeScene.Simulate() by removing bool processtaints, since ↵ | Justin Clark-Casey (justincc) | 2011-11-22 | 3 | -141/+128 | |
| | | | | | | | | | | | | we can inspect count of taint lists instead. also groups OdeCharacter.CreateOdeStructures() and DestroyOdeStructures() together | |||||
| * | Slightly improve "Unable to space collide" logging message, though I don't ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -1/+2 | |
| | | | | | | | | think I've ever seen this. | |||||
| * | Get rid of OdeCharacter != null checks since OdeScene._characters can never ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -17/+4 | |
| | | | | | | | | | | | | contain a null character. Ignoring the ancient code glyphs not to do this.... | |||||
| * | remove unnecessary OdeScene._activeprims locking. Code is single-threaded | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -53/+46 | |
| | | ||||||
| * | Restore defects list. In hindsight, the reason for this is becuase we can't ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 2 | -92/+112 | |
| | | | | | | | | | | | | remove the character whilst iterating over the list. This commit also removes locking on OdeScene._characters since code is single threaded | |||||
| * | simplify operation of OdeScene._perloopContact | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -45/+51 | |
| | | ||||||
| * | don't bother locking OdeScene._perloopContact in single threaded code | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -47/+42 | |
| | | ||||||
| * | don't lock OdeScene.contacts since only ever accessed by a single thread | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -10/+24 | |
| | | ||||||
| * | rename ODECharacter.AvatarGeomAndBodyCreation() -> CreateOdeStructures() to ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -8/+10 | |
| | | | | | | | | match existing DestroyOdeStructures() | |||||
| * | refactor: Eliminate one line ODECharacter.doForce() method for code clarity | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -15/+3 | |
| | | ||||||
| * | Comment out calls to OdeScene.waitForSpaceUnlock() since that method does ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 3 | -23/+24 | |
| | | | | | | | | nothing right now | |||||
| * | Reduce complexity of OdeScene.Simulate() by fully removing bad characters at ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 2 | -70/+29 | |
| | | | | | | | | point of detection rather than later on. | |||||
| * | move geom/actor map maintenance into ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 2 | -10/+9 | |
| | | | | | | | | | | | | DestroyODEStructures()/AvatarGeomAndBodyCreation(). This saves us having to do it separately when a character capsule size is changed | |||||
| * | When changing avatar size in ODE, remove the old actor from the name and ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 2 | -8/+14 | |
| | | | | | | | | actor maps | |||||
| * | When an ODECharacter is removed (e.g. when an avatar leaves a scene), remove ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 2 | -10/+23 | |
| | | | | | | | | | | | | the actor reference in OdeScene.actor_name_map rather than leaving it dangling. This also largely centralizes adds/removes in OdeScene.AddCharacter()/RemoveCharacter() | |||||
| * | Have ODECharacter and ODEPrim both use PhysicsActor.Name instead of ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 2 | -9/+5 | |
| | | | | | | | | maintaining their own properties | |||||
| * | Instead of generating a new list for bad characters on every physics pass, ↵ | Justin Clark-Casey (justincc) | 2011-11-21 | 1 | -3/+12 | |
| | | | | | | | | keep reusing the same list. | |||||
* | | Merge branch 'master' into bigmerge | Melanie | 2011-11-17 | 5 | -59/+58 | |
|\ \ | |/ | | | | | | | Conflicts: OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs | |||||
| * | Stop OdePrim and OdeCharacter insanely overriding set LocalID to set their ↵ | Justin Clark-Casey (justincc) | 2011-11-16 | 5 | -35/+19 | |
| | | | | | | | | | | | | | | own private m_localID property but leaving get to return the then unset PhysicsActor.LocalId! Instead, just have both subclasses use the PhysicsActor.LocalID property. This restores collision functionality that fell away in 45c7789 yesterday | |||||
| * | 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 |