aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneGraph.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-09-01Eliminate pointless checks of SOG.RootPart != nullJustin Clark-Casey (justincc)1-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
2011-09-01Remove pointless cluttering SOP.ParentGroup != null checks.Justin Clark-Casey (justincc)1-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.
2011-08-30refactor: migrate DropObject handling fully into AttachmentsModule from SceneJustin Clark-Casey (justincc)1-7/+0
2011-08-27Related to #4689 - Adding missing null check for SceneObjectPartMakopoppo1-4/+10
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-18Don't try to save changed attachment states when an NPC with attachments is ↵Justin Clark-Casey (justincc)1-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
2011-07-19refactor: rename UpdatePrimPosition() to UpdatePrimGroupPosition() for ↵Justin Clark-Casey (justincc)1-2/+2
consistency
2011-07-19Rename UpdatePrimRotation() to UpdatePrimGroupRotation() since this is what ↵Justin Clark-Casey (justincc)1-3/+3
it actually does and is more consistent with other method names.
2011-07-19Stop undo of just the root prim position in the linkset from shifting the ↵Justin Clark-Casey (justincc)1-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.
2011-07-19fix undo when resizing of non-root individual prims in a linksetJustin Clark-Casey (justincc)1-1/+1
undo resize, rotation and position still needs fixing when only editing root prim of a linkset
2011-07-18Make various tweaks to undo code in an effort to get things working better.Justin Clark-Casey (justincc)1-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.
2011-07-16Replace ifs in SOG.GroupResize() with Math.Min()Justin Clark-Casey (justincc)1-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.
2011-07-16refactor: Push all part resize code down into SceneObjectPart.Resize()Justin Clark-Casey (justincc)1-4/+5
2011-07-16add test for resizing one part in a groupJustin Clark-Casey (justincc)1-1/+1
2011-07-16remove the need to supply SceneObjectGroup.GroupResize() with a localId.Justin Clark-Casey (justincc)1-1/+1
This is utterly pointless scene we already know which sog we're dealing with.
2011-07-11refactor: Make arguments to SceneGraph.UpdatePrimFlags() more readableJustin Clark-Casey (justincc)1-6/+11
2011-06-10minor: add method doc to make it clear that click action is fired when the ↵Justin Clark-Casey (justincc)1-1/+10
click action is changed, not when a prim is clicked
2011-05-21refactor Scene.RezObject() to use AddNewSceneObject() rather than ↵Justin Clark-Casey (justincc)1-8/+9
copy/pasting code with small differences
2011-05-20implement Scene.GetSceneObjectGroup(string name) to match the equivalent ↵Justin Clark-Casey (justincc)1-1/+30
GetSOP method
2011-05-20implement Scene.GetSceneObjectGroup(UUID fullID) using existing indexJustin Clark-Casey (justincc)1-0/+16
2011-05-20add test for rezzing an object from a prim itemJustin Clark-Casey (justincc)1-0/+3
2011-04-21Implement agent limitsMelanie1-0/+5
2011-04-13Add coalesced scene objects class and serializer. This is currently only ↵Justin Clark-Casey (justincc)1-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.
2011-04-06Fix bug where on duplication, the root part local id was continually used in ↵Justin Clark-Casey (justincc)1-1/+1
populating the local id scene object index instead of each part's local id
2011-03-26When an object is duplicated, add it to the full/local id SOG indexes as ↵Justin Clark-Casey (justincc)1-1/+29
well as Entities
2011-03-26When an object is duplicated, add the dupe to the uuid/local id indexes as ↵Justin Clark-Casey (justincc)1-1/+29
well as the basic entities list. Added a prim counts test to reinforce this - shift-copy was no incrementing prim count. This will sometime become a basic scene test. New code needs to be refactored so we just call SceneGraph.AddSceneObject(). This will happen in the near future. With this, basic owner prim counts on a single parcel appear to be working fine (with the same previous existing taint calls as used by the land management module). More work to do.
2011-03-26Make SceneGraph.ForEachSOG() execute once for each SOG, not once for each ↵Justin Clark-Casey (justincc)1-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
2011-03-26refactor: rename SOG collections in SceneGraph to make it clearer that they ↵Justin Clark-Casey (justincc)1-30/+30
are indexing each part's UUID, not just the root part.
2011-03-22Add an initial confidence-building TestAddObject() for prim counts.Justin Clark-Casey (justincc)1-6/+7
2011-02-24Fix bug where avatars in other regions would not always show up on the mini-mapJustin Clark-Casey (justincc)1-1/+2
2011-01-26Remove the RestorePresences functions (which don't seem to be doingMic Bowman1-2/+2
anything) and clean up the code in AddNewClient (so Appearance only gets assigned once, not three times).
2010-12-14reinstate IAttachmentsModule.UpdateAttachmentPosition() since this is being ↵Justin Clark-Casey (justincc)1-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
2010-12-10fix the minimap sitting avatar location bugJustin Clark-Casey (justincc)1-1/+1
a sitting avatar should have it's offset position added to the scene object, not its absolute position
2010-11-16Change the way attachments are persisted. Editing a worn attachment will nowMelanie1-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.
2010-10-27Prevent nullrefs in scene object deletion. Mantis #5156Melanie1-1/+4
2010-10-03I really have to say it again and again: e.Message is NOT enough data forMelanie1-2/+1
troubleshooting. It MUST be combined with e.StackTrace, or e.ToString() must be used. Fix one more instance of that cr.p
2010-09-27Prevent setting arbitrary groups on your objects.Melanie1-0/+3
2010-09-16Changed SceneObjectGroup to store parts with the fast and thread-safe ↵John Hurliman1-33/+20
MapAndArray collection
2010-09-13Remove SceneGraph.DetachObject() which was accidentally left around after ↵Justin Clark-Casey (justincc)1-10/+0
being migrated to AttachmentsModule
2010-09-12Formatting cleanup.Jeff Ames1-3/+3
2010-09-10Second pass at cleaning up thread safety in EntityManager and SceneGraphJohn Hurliman1-34/+32
2010-09-10First pass at cleaning up thread safety in EntityManager and SceneGraphJohn Hurliman1-136/+127
2010-09-07Make sure unlinked child prims get persistedMelanie1-0/+5
2010-08-31Adjust the "Magic numbers" we use because we can't reference the actualMelanie Thielker1-1/+1
script state enum to reflect recent changes.
2010-08-28Improve liveness by operating on list copies of SOG.Children where appropriateJustin Clark-Casey (justincc)1-25/+26
2010-08-26refactor: break out attachment position change code in ↵Justin Clark-Casey (justincc)1-24/+13
Scene.UpdatePrimPosition() and move into AttachmentsModule This allows region modules to change attachment positions.
2010-08-26Remove mono compiler warningsJustin Clark-Casey (justincc)1-2/+0
2010-08-26Improve consistency of locking for SOG.m_parts in order to avoid race ↵Justin Clark-Casey (justincc)1-45/+66
conditions in linking and unlinking
2010-08-25Make scene object directories more robust and prevent deleted SOP's fromMelanie Thielker1-17/+29
sticking around
2010-08-24Split out actual scene object insertion code from Scene.Inventory.RezObject ↵Justin Clark-Casey (justincc)1-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
2010-08-07Add new SceneGraphTests class. Add simple TestDuplicateObject()Justin Clark-Casey (justincc)1-1/+1