aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneGraph.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate pointless checks of SOG.RootPart != nullJustin Clark-Casey (justincc)2011-09-011-1/+1
| | | | It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
* Remove pointless cluttering SOP.ParentGroup != null checks.Justin Clark-Casey (justincc)2011-09-011-19/+10
| | | | | The only times when ParentGroup might be null is during regression tests (which might not be a valid thing) and when scene objects are being constructed from the database. At all other times it's not possible for a SOP not to have a SOG parent.
* refactor: migrate DropObject handling fully into AttachmentsModule from SceneJustin Clark-Casey (justincc)2011-08-301-7/+0
|
* Related to #4689 - Adding missing null check for SceneObjectPartMakopoppo2011-08-271-4/+10
| | | | Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
* Don't try to save changed attachment states when an NPC with attachments is ↵Justin Clark-Casey (justincc)2011-08-181-2/+3
| | | | | | | removed from the scene. This is done by introducing a PresenceType enum into ScenePresence which currently has two values, User and Npc. This seems better than a SaveAttachments flag in terms of code comprehension, though I'm still slightly uneasy about introducing these semantics to core objects
* refactor: rename UpdatePrimPosition() to UpdatePrimGroupPosition() for ↵Justin Clark-Casey (justincc)2011-07-191-2/+2
| | | | consistency
* Rename UpdatePrimRotation() to UpdatePrimGroupRotation() since this is what ↵Justin Clark-Casey (justincc)2011-07-191-3/+3
| | | | it actually does and is more consistent with other method names.
* Stop undo of just the root prim position in the linkset from shifting the ↵Justin Clark-Casey (justincc)2011-07-191-1/+0
| | | | | | whole linkset. However, what happens now is that undo just doesn't do anything when the root prim is selected on its own. This requires more code than just fiddling with undo states.
* fix undo when resizing of non-root individual prims in a linksetJustin Clark-Casey (justincc)2011-07-191-1/+1
| | | | undo resize, rotation and position still needs fixing when only editing root prim of a linkset
* Make various tweaks to undo code in an effort to get things working better.Justin Clark-Casey (justincc)2011-07-181-0/+1
| | | | | | | Undo rotation and position appear to be working. Resizing a single prim appears to be working, though the undo has to be done twice. Resizing a group of prims still does not work properly - possibly because in the UndoState we don't store a knowledge of when we're resizing a whole group rather than individual prims. This needs to be addressed.
* Replace ifs in SOG.GroupResize() with Math.Min()Justin Clark-Casey (justincc)2011-07-161-0/+1
| | | | | Also fiddle a bit with undo. This is not currently working properly, though to be fair it also didn't appear to work in 0.7.1.1 either (at least for resize). Will get some more attention soon.
* refactor: Push all part resize code down into SceneObjectPart.Resize()Justin Clark-Casey (justincc)2011-07-161-4/+5
|
* add test for resizing one part in a groupJustin Clark-Casey (justincc)2011-07-161-1/+1
|
* remove the need to supply SceneObjectGroup.GroupResize() with a localId.Justin Clark-Casey (justincc)2011-07-161-1/+1
| | | | This is utterly pointless scene we already know which sog we're dealing with.
* refactor: Make arguments to SceneGraph.UpdatePrimFlags() more readableJustin Clark-Casey (justincc)2011-07-111-6/+11
|
* minor: add method doc to make it clear that click action is fired when the ↵Justin Clark-Casey (justincc)2011-06-101-1/+10
| | | | click action is changed, not when a prim is clicked
* refactor Scene.RezObject() to use AddNewSceneObject() rather than ↵Justin Clark-Casey (justincc)2011-05-211-8/+9
| | | | copy/pasting code with small differences
* implement Scene.GetSceneObjectGroup(string name) to match the equivalent ↵Justin Clark-Casey (justincc)2011-05-201-1/+30
| | | | GetSOP method
* implement Scene.GetSceneObjectGroup(UUID fullID) using existing indexJustin Clark-Casey (justincc)2011-05-201-0/+16
|
* add test for rezzing an object from a prim itemJustin Clark-Casey (justincc)2011-05-201-0/+3
|
* Implement agent limitsMelanie2011-04-211-0/+5
|
* Add coalesced scene objects class and serializer. This is currently only ↵Justin Clark-Casey (justincc)2011-04-131-0/+2
| | | | | | | | | used by the TestRezCoalescedObject() regression test. This structure matches the existing one for SceneObjects and will allow code to be reused by the uuid gatherer, other tests, etc. Test is not yet fully implemented due to a bug in rezzing coalesced objects where they all get the same name as the item. Only one object should get the same name as the item, which appears to be the one selected last when the the objects were coalesced in the first place. This bug will be addressed shortly.
* Fix bug where on duplication, the root part local id was continually used in ↵Justin Clark-Casey (justincc)2011-04-061-1/+1
| | | | populating the local id scene object index instead of each part's local id
* When an object is duplicated, add it to the full/local id SOG indexes as ↵Justin Clark-Casey (justincc)2011-03-261-1/+29
| | | | well as Entities
* Make SceneGraph.ForEachSOG() execute once for each SOG, not once for each ↵Justin Clark-Casey (justincc)2011-03-261-5/+25
| | | | | | | | prim (e.g. a SOG with 3 prims would have the action executed three times). To do this, a new SceneObjectGroupsByFullID index in SceneGraph which just index's prims by their root part UUID, in order to avoid the inefficiency of filtering existing lists. Existing callers to SceneGraph.ForEachSOG() did not fail due to the multiple per SOG action executions - they were probably just much less efficient. Code suggests that no callers expected ForEachSOG() to execute actions on sog multiple times
* refactor: rename SOG collections in SceneGraph to make it clearer that they ↵Justin Clark-Casey (justincc)2011-03-261-30/+30
| | | | are indexing each part's UUID, not just the root part.
* Add an initial confidence-building TestAddObject() for prim counts.Justin Clark-Casey (justincc)2011-03-221-6/+7
|
* Fix bug where avatars in other regions would not always show up on the mini-mapJustin Clark-Casey (justincc)2011-02-241-1/+2
|
* Remove the RestorePresences functions (which don't seem to be doingMic Bowman2011-01-261-2/+2
| | | | | anything) and clean up the code in AddNewClient (so Appearance only gets assigned once, not three times).
* reinstate IAttachmentsModule.UpdateAttachmentPosition() since this is being ↵Justin Clark-Casey (justincc)2010-12-141-7/+2
| | | | | | used by a 3rd party region module and contains non-obvious attachment specific code There are no functional changes. UpdateAttachmentPosition() is adapted to the new approach of only saving attachment state on logout
* fix the minimap sitting avatar location bugJustin Clark-Casey (justincc)2010-12-101-1/+1
| | | | a sitting avatar should have it's offset position added to the scene object, not its absolute position
* Change the way attachments are persisted. Editing a worn attachment will nowMelanie2010-11-161-5/+12
| | | | | | | save properly, as will the results of a resizer script working. Attachment positions are no longer saved on each move, but instead are saved once on logout. Attachment script states are saved as part of the attachment now when detaching.
* Prevent nullrefs in scene object deletion. Mantis #5156Melanie2010-10-271-1/+4
|
* I really have to say it again and again: e.Message is NOT enough data forMelanie2010-10-031-2/+1
| | | | | | troubleshooting. It MUST be combined with e.StackTrace, or e.ToString() must be used. Fix one more instance of that cr.p
* Prevent setting arbitrary groups on your objects.Melanie2010-09-271-0/+3
|
* Changed SceneObjectGroup to store parts with the fast and thread-safe ↵John Hurliman2010-09-161-33/+20
| | | | MapAndArray collection
* Remove SceneGraph.DetachObject() which was accidentally left around after ↵Justin Clark-Casey (justincc)2010-09-131-10/+0
| | | | being migrated to AttachmentsModule
* Formatting cleanup.Jeff Ames2010-09-121-3/+3
|
* Second pass at cleaning up thread safety in EntityManager and SceneGraphJohn Hurliman2010-09-101-34/+32
|
* First pass at cleaning up thread safety in EntityManager and SceneGraphJohn Hurliman2010-09-101-136/+127
|
* Make sure unlinked child prims get persistedMelanie2010-09-071-0/+5
|
* Adjust the "Magic numbers" we use because we can't reference the actualMelanie Thielker2010-08-311-1/+1
| | | | script state enum to reflect recent changes.
* Improve liveness by operating on list copies of SOG.Children where appropriateJustin Clark-Casey (justincc)2010-08-281-25/+26
|
* refactor: break out attachment position change code in ↵Justin Clark-Casey (justincc)2010-08-261-24/+13
| | | | | | Scene.UpdatePrimPosition() and move into AttachmentsModule This allows region modules to change attachment positions.
* Remove mono compiler warningsJustin Clark-Casey (justincc)2010-08-261-2/+0
|
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimJustin Clark-Casey (justincc)2010-08-261-26/+38
|\ | | | | | | | | | | | | Resolve merge conflicts Conflicts: OpenSim/Region/Framework/Scenes/SceneGraph.cs
| * Make scene object directories more robust and prevent deleted SOP's fromMelanie Thielker2010-08-251-17/+29
| | | | | | | | sticking around
* | Improve consistency of locking for SOG.m_parts in order to avoid race ↵Justin Clark-Casey (justincc)2010-08-261-45/+66
|/ | | | conditions in linking and unlinking
* Split out actual scene object insertion code from Scene.Inventory.RezObject ↵Justin Clark-Casey (justincc)2010-08-241-0/+36
| | | | | | | | and move into SceneGraph.AddNewSceneObject() The new SceneGraph method is more consumable by region modules that want to extract objects from inventory and add them to the scene in separate stages. This change also reduces the number of redundant client updates scheduled when an object is rezzed directly by a script or region module This code does not touch direct rez by a user
* Add new SceneGraphTests class. Add simple TestDuplicateObject()Justin Clark-Casey (justincc)2010-08-071-1/+1
|