aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix llGetLinkKey() to return the last sat avatar as the last link number.Justin Clark-Casey (justincc)2013-01-041-6/+29
| | | | | | | | As per http://wiki.secondlife.com/wiki/LlGetLinkKey This is done by keeping a scene-object wide list of sitters. This also fixes bugs in this function where linknums 0 and 1 weren't treated properly if there were sitting avatars on a single prim. This also fixes a minor race condition for multiple concurrent sitters on a prim with no current sitters by locking on the object-wide list rather than individual sop lists Addresses http://opensimulator.org/mantis/view.php?id=6477
* Replace axis rotation numeric constants (STATUS_ROTATE_XYZ) with symbols. ↵Robert Adams2012-12-181-0/+9
| | | | Also made it so llSetStatus() can individually enable disable rotation axi using the bitmask of flags.
* BulletSim: experimentally remove unit displacement from prim border crossing ↵Robert Adams2012-12-161-2/+13
| | | | test. This seems to cause border crossing to be sensed either a little early or a little late depending on which directin the object is moving. If border crossings become totally borked or someone remembers why this was displacement was done, revert this change.
* extend coment to include all unused SOG CheckSculptAndLoad()UbitUmarov2012-10-181-3/+4
|
* [DANGER UNTESTED] ODE mesh assets. Other plugins will not do meshs/sculptsUbitUmarov2012-10-181-2/+2
| | | | | | now Signed-off-by: Melanie <melanie@t-data.com>
* Add MaxPrimsUndo config setting to [Startup] section of OpenSim.ini.Justin Clark-Casey (justincc)2012-09-271-8/+0
| | | | | | This controls how many undo steps the simulator will store for each prim. Default is now 20 rather than 5 as it briefly was. The default number could be increased through this is a memory tradeoff which will scale with the number of prims in the sim and level of activity.
* Make it possible to rescale SOGs when they are not in a scene.Justin Clark-Casey (justincc)2012-09-261-26/+28
|
* Fix indentation and issues where tabs were used instead of spaces in commit ↵Justin Clark-Casey (justincc)2012-09-121-7/+8
| | | | 783ee949
* implementing per-region configuration of limits on the number of prims one ↵SignpostMarv2012-09-091-0/+18
| | | | | | | | can have in a linkset Applied with changes - patch was based on a repo different from core Signed-off-by: Melanie <melanie@t-data.com>
* Fix bad child prim permissions that can make objects change perms after rezzingMelanie2012-08-241-3/+15
| | | | Port from Avination
* enables configurable minimum sizes for physical & non-physical primsSignpostMarv2012-08-151-6/+54
|
* Restore SOG constructor chaining removed in recent 513b77b. This is not a ↵Justin Clark-Casey (justincc)2012-08-031-1/+1
| | | | functional change.
* refactor: rename SOG.RezzingObjectID to SOG.FromPartID to match ↵Justin Clark-Casey (justincc)2012-08-031-1/+1
| | | | FromFolderID, FromItemID and to reflect that it's a SOP ID rather than a SOG ID.
* Don't bothre setting RezzingObjectID to UUID.Zero in SOG constructor - this ↵Justin Clark-Casey (justincc)2012-08-031-3/+4
| | | | is already its default value as it's a struct.
* Initialize the Rezzing object to UUID.ZeroMelanie2012-08-021-3/+4
|
* reduced-complexity implementation of function to get rezzing object keySignpostMarv2012-08-021-0/+8
| | | | Signed-off-by: Melanie <melanie@t-data.com>
* Many explanitory comments added to the link and delink code inRobert Adams2012-07-111-15/+73
| | | | SOG and SOP. Should have no functionality changes.
* Do not allow a script to attach a prim if its being sat upon.Justin Clark-Casey (justincc)2012-07-091-0/+14
| | | | | | This prevents a stack overflow where a get position on the avatar will refer to the attachment which will in turn refer back to the avatar. This required recording of all sitting avatars on a prim which is done separately from recording the sit target avatar. Recording HashSet is null if there are no sitting avatars in order to save memory.
* Remove redundant SetScene() function in Scene.AddSceneObject()Justin Clark-Casey (justincc)2012-07-071-10/+0
| | | | | This is always done later on in SceneGraph.AddSceneObject() if the call hasn't failed due to sanity checks. There's no other purpose for this method to exist and it's dangerous/pointless to call in other conditions.
* minor: Add some method doc to HasGroupChanged and Schedule ↵Justin Clark-Casey (justincc)2012-07-031-2/+21
| | | | GroupForFull/PartUpdate() to indicate when region modules need to invoke them
* Fix bug where attachments would not retain position if just rotated and not ↵Justin Clark-Casey (justincc)2012-06-221-0/+5
| | | | | | moved. This was because we were not setting AttachedPos in SOG.UpdateGroupPositionPR, unlike UpdateGroupPosition
* Use HasPrivateAttachmentPoint properties in SOG.DeleteGroupFromScene() ↵Justin Clark-Casey (justincc)2012-06-201-2/+3
| | | | instead of magic numbers
* Add SOG.HasPrivateAttachmentPoint to tell if a SOG has a private attachment ↵Justin Clark-Casey (justincc)2012-06-141-0/+16
| | | | | | | | point. HUDs attachment points are private. Change SOP.SendFullUpdateToClient() and SoundModule.PlayAttachedSound() to use this rather than different magic number formulations. This also corrects a bug in PlayAttachedSound() where the code assumed that all attachment points over 30 were HUDs. It appears this is no longer true with Neck and Root (Avatar Center)
* Port Avination's collision fixes to core.Melanie2012-05-151-11/+0
|
* Stop llSetPos from sending one update per child primMelanie2012-05-061-1/+1
|
* Port Avination link order to make OpenSim behave like SL. Make Primstar ↵Melanie2012-04-251-2/+40
| | | | scripts work. Fixes Mantis #5990
* Fix a bug where linking a non-physical prim with a physical prim as root ↵Justin Clark-Casey (justincc)2012-04-211-0/+3
| | | | | | | | would make the non-physical prim phantom rather than part of the physics object. On region restart, the whole object would become physical as expected. Observed behaviour from elsewhere is that all prims in a new linkset should take on the status of the root prim. Add regression test for this behaviour.
* minor: Add some method doc. Add warnings since calling SOG link/delink ↵Justin Clark-Casey (justincc)2012-04-171-0/+19
| | | | methods directly rather than through Scene may allow race conditions.
* Mantis 55025 Implement script time.Talun2012-04-121-0/+39
| | | | Signed-off-by: nebadon <michael@osgrid.org>
* Mantis5502 implementation of some of the new constantsTalun2012-04-091-1/+27
| | | | Signed-off-by: Melanie <melanie@t-data.com>
* Rather than having a FromFolderID property on every single prim and only ↵Justin Clark-Casey (justincc)2012-04-071-4/+15
| | | | | | ever using the root prim one, store on SOG instead. This reduces pointless memory usage.
* Store FromItemID for attachments once on SOG instead of on every SOP and ↵Justin Clark-Casey (justincc)2012-04-071-16/+12
| | | | | | only ever using the root part entry. This eliminates some pointless memory use.
* Eliminate race condition where many callers would check SOP.PhysicsActor != ↵Justin Clark-Casey (justincc)2012-04-031-54/+86
| | | | | | | | null then assume it was still not null in later code. Another thread could come and turn off physics for a part (null PhysicsActor) at any point. Had to turn off localCopy on warp3D CoreModules section in prebuild.xml since on current nant this copies all DLLs in bin/ which can be a very large number with compiled DLLs No obvious reason for doing that copy - nothing else does it.
* refactor: Rename SOG.GetChildPart() to GetPart() since it can also return ↵Justin Clark-Casey (justincc)2012-03-311-20/+20
| | | | the 'root' part.
* Rename SOG.HasChildPrim(uint) to SOG.ContainsPart(uint) to match existing ↵Justin Clark-Casey (justincc)2012-03-311-29/+18
| | | | | | ContainsPart method and remove method duplication. HasChildPrim is also misleading since the 'root' prim can also be returned.
* Replace script-lines-per-second with the script execution time scaled by its ↵Justin Clark-Casey (justincc)2012-03-161-8/+1
| | | | | | | | | | | measurement period and an idealised frame time. The previous lines-per-second measurement used for top scripts report was inaccurate, since lines executed does not reflect time taken to execute. Also, every fetch of the report would reset all the numbers limiting its usefulness and we weren't even guaranteed to see the top 100. The actual measurement value should be script execution time per frame but XEngine does not work this way. Therefore, we use actual script execution time scaled by the measurement period and an idealised frame time. This is still not ideal but gives reasonable results and allows scripts to be compared. This commit moves script execution time calculations from SceneGraph into IScriptModule implementations.
* Fix: Object owned by the group does not return to the last owner ↵PixelTomsen2012-02-161-1/+1
| | | | http://opensimulator.org/mantis/view.php?id=5404
* Stop a scene object from attempting to link with itself (which results in an ↵Justin Clark-Casey (justincc)2012-02-081-0/+4
| | | | | | exception and constant complaints in v3 viewers). Aims to address http://opensimulator.org/mantis/view.php?id=5878
* Add start GC memory and end GC memory to object stress test printouts.Justin Clark-Casey (justincc)2012-02-071-1/+2
| | | | | This illustrates that references to Scene, SOG, etc. are not currently being released when a stress test ends (or at regression test end in general). This means even the current stress tests take much more memory than they need, a problem that will have to be addressed.
* Make configuration uniformBlueWall2012-02-051-3/+3
| | | | Pickup the max physical prim size in Scene to make it uniform since adding code to get default size from the OpenSim*.ini.
* Implement "show object uuid <uuid>" console command.Justin Clark-Casey (justincc)2012-01-311-0/+6
| | | | This will show details about a part with the given uuid if it's found.
* Add experimental --publish option to "save oar" so that OARs reloaded to the ↵Justin Clark-Casey (justincc)2012-01-281-0/+6
| | | | same grid don't have the publisher as owner.
* Cleaned up the LookAt code in SOP and SOG. Added support for incrementallyMic Bowman2012-01-131-6/+0
| | | | | rotating physical objects. This does not use physics. Currently the rate of change is determined as 1 / (PI * Strength).
* fix the UsesPhysics flag to reference the physics flag rather than the ↵Mic Bowman2011-12-221-1/+1
| | | | temponrez flag
* Remove unused m_physicalPrim parameter from SOG.ApplyPhysics()Justin Clark-Casey (justincc)2011-12-221-3/+2
|
* Fix bug where objects could not be set to a new group if the group had been ↵Justin Clark-Casey (justincc)2011-12-171-0/+2
| | | | | | | | | | created in that client session, or if no other action has been performed on the object. There were two problems here: 1) On object group update, we looked for the group is the IClientAPI group cache rather than in the groups service. This fails to groups created newly in that session 2) On object group update, we weren't setting the HasGroupChanged flag. This meant that the change was not persisted unless some other action set this flag. This commit fixes these issues and hopefully addresses http://opensimulator.org/mantis/view.php?id=5588 This commit also moves HandleObjectGroupUpdate() to the GroupsModule from the Scene.PacketHandlers.cs file
* refactor: simplify methods in Scene.PacketHandlers.cs by using ↵Justin Clark-Casey (justincc)2011-12-171-4/+10
| | | | GetGroupByPrim() rather than retrieving GetEntities() and inspecting the entire list
* Stop generating client flags when we send out full object updates.Justin Clark-Casey (justincc)2011-12-161-3/+2
| | | | These were entirely unused.
* Just adding a comment to SendFullUpdatToClientDan Lake2011-12-131-0/+2
|
* Remove SceneViewer from ScenePresence to reduce quadruple queueing ofDan Lake2011-11-111-24/+0
| | | | | | | | | | | | prim update to only triple queuing. Existing method was: 1. Schedule prim for update, adding to scene update list 2. Update on SOGs during heartbeat queues update onto each SceneViewer 3. Update on SPs during heartbeat queues update onto each IClientAPI 4. ProcessEntityUpdates queues updates into UDP send stack Now the SceneViewer has been eliminated so updates are scheduled at any time and then put onto the IClientAPI priority queues immediately during SceneGraph.UpdateObjectGroups.