aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of some of the identical exception catching in Scene.Update().Justin Clark-Casey (justincc)2012-02-241-17/+1
|
* Stop spurious scene loop startup timeout alarms for scenes with many prims.Justin Clark-Casey (justincc)2012-02-241-3/+9
| | | | | | | | On the first frame, all startup scene objects are added to the physics scene. This can cause a considerable delay, so we don't start raising the alarm on scene loop timeouts until the second frame. This commit also slightly changes the behaviour of timeout reporting. Previously, a report was made for the very first timed out thread, ignoring all others until the next watchdog check. Instead, we now report every timed out thread, though we still only do this once no matter how long the timeout.
* Try to resolve some problems with viewers crashing after hitting parcel ↵Justin Clark-Casey (justincc)2012-02-231-5/+12
| | | | | | | | | | banlines or freezing on the banline. This involves 1) On forcible teleport, call m_scene.RequestTeleportLocation() rather than ScenePresence.Teleport() - only EntityTransferModule now should call SP.Teleport() 2) When avatar is being forcibly moved due to banlines, use a 'stop movement' tolerance of 0.2 to requested position rather than 1 This prevents the avatar sometimes being stuck to banlines until they teleport somewhere else. This aims to fix some problems in http://opensimulator.org/mantis/view.php?id=5822
* Merge branch 'master' of melanie@opensimulator.org:/var/git/opensimMelanie2012-02-231-8/+2
|\
| * Remove two spurious m_sceneGraph != null checks in Scene.cs. It's set in ↵Justin Clark-Casey (justincc)2012-02-221-8/+2
| | | | | | | | constructor and never subsequent set to null.
* | Add a position parameter to region crossing of objects. This avoids theMelanie2012-02-231-1/+4
|/ | | | | | potential bad update that places an object at the opposite side of the origin sim for a moment before actually crossing it. Especially important in grids like OSG where lag between sims is high.
* Fix bug where NPCs would establish child agents on other neighbour regions ↵Justin Clark-Casey (justincc)2012-02-211-15/+14
| | | | that had come up after the NPC was created.
* Use localy defined name, TPFlags, for Constants.TeleportFlagsBlueWall2012-02-191-6/+6
|
* Route logins according to Estate, Telehub and TeleportFlagsBlueWall2012-02-181-2/+4
|
* Propagate our teleport flags on loginsBlueWall2012-02-181-1/+4
|
* Fix missing telehub handling on loginBlueWall2012-02-171-0/+21
|
* Add some more data to the new user connection logging for debug purposes.Justin Clark-Casey (justincc)2012-02-141-3/+3
|
* change NonPhysicalPrimMax to NonphysicalPrimMax in Scenes.cs to make thenebadon2012-02-041-1/+1
| | | | variable in OpenSim.ini and Regions.ini match
* ObjectAddedToScene event should be fired when duplicating objectsDan Lake2012-02-021-4/+22
|
* Add event RegionHeartbeatEnd for modules interested in coordinating activity ↵Dan Lake2012-02-011-10/+12
| | | | with region heartbeats
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimDan Lake2012-02-011-112/+51
|\
| * Small optimization to last commitMelanie2012-02-011-5/+5
| |
| * Fix copy/paste errorsMelanie2012-02-011-2/+2
| |
| * Straighten out some attachment mess. Don't save attachment states for HGMelanie2012-02-011-1/+11
| | | | | | | | | | visitors at all. On Leaving a sim, save only the changed ones. Don't save all scripted stuff when leaving a sim.
| * Move object delete commands into a commands region module, in preparation ↵Justin Clark-Casey (justincc)2012-01-311-104/+0
| | | | | | | | for adding similar show commands.
| * Add torture tests to test adding 10,000, 100,000 and 200,000 single prim ↵Justin Clark-Casey (justincc)2012-01-311-0/+2
| | | | | | | | | | | | | | | | | | scene objects. These can be run using the "nant torture" target. They are not part of "nant test" due to their long-run future nature. Such tests are designed to do some testing of extreme situations and give some feedback on memory usage, etc. However, data can be inconsistent due to different machine circumstances and virtual machine actions. This area is under development.
| * Support rejecting a teleport if a user is banned in all parcels that haveMelanie2012-01-261-0/+30
| | | | | | | | spawn points
| * Teleport DebuggingBlueWall2012-01-101-2/+0
| | | | | | | | | | | | Move setting from ini to existing facitilies - thanks justincc toggle with console command: debug teleport
| * Add some run-time debugging supportBlueWall2012-01-091-0/+3
| | | | | | | | | | | | Add configuration option - DEBUG to enable debugging methods. This is temporary for helping users testing teleport routing be able to report back the data with the test cases. We can remove when finished with this, or leave it if it proves to be useful. Users: set DEBUG = true in OpenSim.ini to get more information from teleport routing. The default is false. It presently prints the TeleportFlags value.
| * Use our TeleportFlagsBlueWall2012-01-091-2/+2
| | | | | | | | Switch to our TeleportFlags enum instead of LibOMV because we need to define a type for HG Logins. Also moved some debugging in ScenePresence into a function to make it simpler to enable/disable.
* | Add a version of GetGroupByPrim to Scene which accepts UUID instead of localIDDan Lake2012-01-191-0/+10
|/
* Added EventManager.OnRegionStarted which is triggered when Heartbeat is started.Dan Lake2012-01-041-0/+1
|
* Bug fix in map tiles in standalone: the map has been blank since commit ↵Diva Canto2011-12-301-13/+20
| | | | | | 01ae916bad672722aa62ee712b7b580d6f5f4370 r/17324 (Nov.18, justincc). But the root cause comes from commit 02e54c57c4901167779f07ed3e89fb1d24ffc22a Author: Oren Hurvitz Date: 7/22/2011 This is a nasty situation. The map tile UUID is, in principle, stored authoritatively in RegionSettings. However, it also needs to be stored in the Grid Service because that's how other sims can retrieve it to send it in Map Blocks to non-V3 viewers. So every time the tile image changes, that change needs to propagate to the Grid Service, and this is done via RegisterRegion (ugh!). Interestingly, this problem didn't affect grids because by default AllowRemoteDelete is false, so the prior images aren't being deleted from the asset servers -- but they were not being correctly updated in the map either, the map was stuck with old images.
* rename Scene.m_physicalPrim to PhysicalPrims since its public and access ↵Justin Clark-Casey (justincc)2011-12-221-2/+2
| | | | external as a property
* Make it possible to force all prims to be phantom via the collidable_prim ↵Justin Clark-Casey (justincc)2011-12-221-0/+9
| | | | | | | | | boolean setting in the OpenSim.ini config [Startup] section. Naturally, default is true. When set to false, "phantom" flags on prims can be set as usual but all prims remain phantom. This setting is for test purposes. This switch does not affect the collision of avatars with the terrain.
* Move HandleObjectGroupUpdate() from GroupsModule to Scene.PacketHandlers.cs ↵Justin Clark-Casey (justincc)2011-12-191-6/+5
| | | | as this is updating SOG/SOP.GroupID, which is arguably generic.
* Fix bug where objects could not be set to a new group if the group had been ↵Justin Clark-Casey (justincc)2011-12-171-3/+1
| | | | | | | | | | 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
* No functional changes. Changed the prefix of that log message [CONNECTION ↵Diva Canto2011-12-161-6/+6
| | | | | | BEGIN] to [SCENE] because that's where the message happens. Also changed the instantiation of a vector object to be done only once instead of every time we receive a position update.
* Cleaned up ScenePresence parameters for Flying, WasFlying, FlyingOld and ↵Dan Lake2011-12-121-4/+4
| | | | IsColliding
* Do some clean up Scene.cs log messages.Justin Clark-Casey (justincc)2011-12-091-24/+38
| | | | | This prints out both exception message and stacktrace (Exception.ToString()) isn't enough on Windows. This also uses m_log.*Format() which is more efficient than string concat.
* Get rid of IScene.PresenceChildStatus() which always had to execute a lookup ↵Justin Clark-Casey (justincc)2011-12-091-11/+0
| | | | in favour of IClientAPI.ISceneAgent.IsChildAgent instead.
* Remove unnecessary AgentCircuitData null check from Scene.AddNewClient().Justin Clark-Casey (justincc)2011-12-081-11/+4
| | | | | The only caller is the LLUDP stack and this has to validate the UDP circuit itself, so we know that it exists. This allows us to eliminate another null check elsewhere and simplifies the method contract
* On a new client circuit, send the initial reply ack to let the client know ↵Justin Clark-Casey (justincc)2011-12-081-12/+3
| | | | | | | | | it's live before sending other data. This means that avatar/appearance data of other avatars and scene objects for a client will be sent after the ack rather than possibly before. This may stop some avatars appearing grey on login. This introduces a new OpenSim.Framework.ISceneAgent to accompany the existing OpenSim.Framework.ISceneObject and ISceneEntity This allows IClientAPI to handle this as it can't reference OpenSim.Region.Framework.Interfaces
* Simplify Scene.AddNewClient()Justin Clark-Casey (justincc)2011-12-081-17/+28
| | | | | If sp becomes null right after we've checked or created it, then behaviour down the line is going to be wrong anyway. So instead retain the check/create ScenePresence reference and use this.
* On an Exception in Scene.RemoveClient(), always remove the client (and SP) ↵Justin Clark-Casey (justincc)2011-12-071-19/+28
| | | | structure so that logout on unexpired packets isn't retriggered, causing the same exception
* Implement XMLRPCAdmin command admin_teleport_agent.Justin Clark-Casey (justincc)2011-12-071-3/+3
| | | | This allows someone with access to this command on the XMLRPCAdmin interface to teleport an avatar to an arbitrary region and/or position.
* Stop some places where we're trying to reset animations in child agents ↵Justin Clark-Casey (justincc)2011-12-021-1/+0
| | | | where such requests are ignored.
* Remove bizarre call to PhysicsScene.Simulate(0) in ↵Justin Clark-Casey (justincc)2011-11-241-4/+2
| | | | | | Scene.GetNearestAllowedPosition() At least on ODE, this wasn't doing any harm but there wasn't any point to it either
* Don't register a region twice on both official registration and maptile ↵Justin Clark-Casey (justincc)2011-11-191-7/+5
| | | | | | regeneration. Maptile storage appears orthogonal to region registration
* In AddNewClient, iterator over copy of entities rather than copying under ↵Dan Lake2011-11-151-2/+3
| | | | read lock
* Make tracked per scene thread names conform to the majorirty format.Justin Clark-Casey (justincc)2011-11-151-1/+3
| | | | This is <thread-name> (<region-name>)
* Removed unused and mostly commented out SceneCommunicationService methodsJustin Clark-Casey (justincc)2011-11-151-36/+2
| | | | As far as I can see, the SCS is only now used for informing neighbours of up/down status and possibly sending child agent updates and close requests
* remove SceneCommunicationService.OnAvatarCrossingIntoRegion. This stuff is ↵Justin Clark-Casey (justincc)2011-11-151-2/+0
| | | | not being used any more - it's now IEntityTransferModule and SimulationService instead
* Remove SceneViewer from ScenePresence to reduce quadruple queueing ofDan Lake2011-11-111-0/+10
| | | | | | | | | | | | 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.
* Convert SendKillObject to take a list of uint rather than sending oneMelanie2011-11-061-19/+13
| | | | packet per prim. More to come as we change to make use of this.