Commit Graph

3718 Commits (97c37c370be9ad01433722f3305f8dce02488782)

Author SHA1 Message Date
Melanie bae35ad97e Revert "Place instrumentation in the proper place. This needs reverting, too!"
This reverts commit d9b0b03aa3.
2012-07-12 01:01:29 +02:00
Melanie c66367e619 Add "gc collect" console command for debugging memleaks 2012-07-12 00:16:19 +02:00
Melanie d9b0b03aa3 Place instrumentation in the proper place. This needs reverting, too! 2012-07-11 23:54:45 +02:00
Melanie ea91a36483 Add instrumentation to log finalizer being called. Suppressed for backup
interim copies to avoid spammage. Not for release to the grid, must be
reverted first!
2012-07-11 23:33:13 +02:00
Melanie 59cd0a2419 Change order of operations on backup to ensure keyframe motions are backed
up properly
2012-07-11 23:32:12 +02:00
Justin Clark-Casey (justincc) fc24563206 Add regression TestDetachScriptedAttachmentToInventory()
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-11 21:43:35 +01:00
Melanie 89c9528e38 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
2012-07-11 14:27:33 +01:00
UbitUmarov 7836933133 Melanie fix: detach SOGs from backup on linking 2012-07-11 03:58:58 +01:00
Melanie 0bc8238a6c Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Watchdog.cs
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-07-11 03:56:50 +01:00
Justin Clark-Casey (justincc) 337ea019bd If a part has a sit target and an avatar is already sitting, allow another avatar to sit in the position given if no sit target was set.
Previous behave was that the second avatar could not sit.
This matches behaviour observed on the LL grid.
2012-07-10 23:55:22 +01:00
Justin Clark-Casey (justincc) cdea572d2e refactor: move management of SOP.SitTargetAvatar into SOP.AddSittingAvatar() and SOP.RemoveSittingAvatar() 2012-07-10 23:50:04 +01:00
Justin Clark-Casey (justincc) 11e0ad6dc8 Revert "refactor: Add SOP.IsSitTargetOccupied to improve readability"
This reverts commit c8f0d476d2.
On reconsideration, I think this is less readable since immediately following code still sets SitTargetAvatar directly
2012-07-10 23:39:05 +01:00
Justin Clark-Casey (justincc) c8f0d476d2 refactor: Add SOP.IsSitTargetOccupied to improve readability 2012-07-10 23:34:40 +01:00
Justin Clark-Casey (justincc) 69a6f6e3cd refactor: use sit orientation argument passed in to SP.SendSitResponse() rather than creating a new copy
There are no issues with side-effects since this is a struct.
2012-07-10 23:26:40 +01:00
Justin Clark-Casey (justincc) e8347b7095 Move common code to detect whether a part has a valid sit target into a SOP property rather than being repeated in SP.
This also makes the detection in SP.FindNextAvailableSitTarget() and SendSitResponse() identical.
Previously they varied slightly (SendSitResponse didn't check for an older type of invalid quaternion) but the practical effect is most probably zero.
2012-07-10 23:21:39 +01:00
Justin Clark-Casey (justincc) 506437b684 Remove log line accidentally left in SP.SendSitResponse() 2012-07-10 23:06:34 +01:00
Justin Clark-Casey (justincc) 58869e5aa0 Fix recent SOP.GetSittingAvatars() to return null if there are no sitting avatars rather than throwing an exception.
Extends sitting avatar regression tests to test new sitters information
2012-07-10 23:03:52 +01:00
Justin Clark-Casey (justincc) f3134b5cf6 When an attachment is detached to inv or derezzed, stop the scripts, update the known item with script state still in the script engine and then remove the scripts.
This is to fix a regression starting from 5301648 where attachments had to start being deleted before persistence in order to avoid race conditions with hud update threads.
2012-07-10 22:41:11 +01:00
UbitUmarov acec9da95c let SOP AngularVelocity set physics actor angular velocity if it's
physical root prim and not a vehicle. With this llSetAngularVelocity
should work and also llTargetOmega will do the same in this case.
but for now this llTargetOmega is being a normal physical rotation with
damping, and stops with selection. Thats not like SL apparently
2012-07-10 05:37:41 +01:00
UbitUmarov 652ac5f66b more work on llSetAngularVelocity() 2012-07-10 05:28:47 +01:00
Justin Clark-Casey (justincc) d6f563794e Don't allow a prim to be sat upon if its part of an attachment 2012-07-09 21:43:44 +01:00
Justin Clark-Casey (justincc) 2eaa6d5ace Do not allow a script to attach a prim if its being sat upon.
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.
2012-07-09 21:24:32 +01:00
Melanie 470019b52a Change semantics of FromXML on vehicle data to make the serializer a bit cleaner 2012-07-07 19:59:55 +02:00
UbitUmarov afa02aa104 fix vehicle to XML string 2012-07-07 07:41:11 +01:00
Melanie 6535f23e4b Add saving vehicle physics data to the database 2012-07-07 02:05:01 +02:00
Justin Clark-Casey (justincc) 7ff4eec79c Remove redundant SetScene() function in Scene.AddSceneObject()
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.
2012-07-07 00:02:45 +01:00
Justin Clark-Casey (justincc) f1f390cfdf Remove now duplicate interregion object check that should have been removed a few commits ago in 43a2da9 2012-07-06 23:22:40 +01:00
Justin Clark-Casey (justincc) 056c9a59b2 Add assert to attachment regression tests to check that number of objects in the scene graph 2012-07-06 23:07:50 +01:00
Talun 1b1f841c6a Mantis 6063 osNpcTouch.
Allow NPCS to touch obects.
2012-07-06 22:37:19 +01:00
Justin Clark-Casey (justincc) 43a2da9edb Pull prim crossing/teleport checks up into Scene.IncomingCreateObject() from Scene.AddObject()
Only IncomingCreateObject() needs these checks.  General object adding does not need to perform crossing perm checks
2012-07-06 22:33:16 +01:00
Melanie 26d89777d8 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/PollServiceEventArgs.cs
	OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-07-06 20:51:18 +01:00
UbitUmarov ce7864632b added llSetVelocity. will refuse to work on vehicles and on attachments ( this last may need fix) added also some code for llSetAngularVelocity but not working still 2012-07-06 17:13:11 +01:00
Melanie 5776351f6a Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-07-05 22:17:39 +01:00
Justin Clark-Casey (justincc) 951b45b80f Add OSSL function osForceAttachToAvatarFromInventory()
This works like osForceAttachToAvatar() but allows an object to be directly specified from the script object's inventory rather than forcing it to be rezzed in the scene first.
Still only attaches objects to the owner of the script.
This allows one to bypass the complicated co-ordination of first rezzing objects in the scene before attaching them.
Threat level high.
2012-07-05 00:05:06 +01:00
Justin Clark-Casey (justincc) f7b4802577 Correct spelling mistake m_BanedViewers to m_BannedViewers 2012-07-03 23:26:02 +01:00
Justin Clark-Casey (justincc) 8183c2926d minor: Add some method doc to HasGroupChanged and Schedule GroupForFull/PartUpdate() to indicate when region modules need to invoke them 2012-07-03 23:19:11 +01:00
Justin Clark-Casey (justincc) 3c9b9a848f Fix issue in database tests where sogs being stored are not in a scene.
This puts an extra m_part.ParentGroup.Scene == null check at the top of SceneObjectPartInventory.QueryScriptStates()
2012-07-03 22:58:58 +01:00
Michelle Argus 3399596e0e Adds a list of viewers that are allowed or banned from the region.
Signed-off-by: Melanie <melanie@t-data.com>
2012-07-02 18:45:11 +01:00
Melanie d32cf21576 Add preservation of running state of scripts when drag-copying. 2012-07-01 18:30:59 +01:00
Melanie e5eef139ed Merge branch 'master' into careminster 2012-07-01 03:04:23 +01:00
Justin Clark-Casey (justincc) a4551b027b Removing unused handling of incoming create object by userID and itemID only.
It appears this was never actually used since attachments were rezzed in other code.
This was never available on remote simulator comms, only local.
2012-06-30 01:14:49 +01:00
Justin Clark-Casey (justincc) 56c776066c Remove code listed for removal in 0.7.3 that handled script restart for incoming attachments from pre-fatpack regions (versions of OpenSimulator more than a year old) 2012-06-30 01:06:37 +01:00
Melanie 6137f37028 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-06-29 22:24:53 +01:00
Melanie 05cf51cbbd Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/PollServiceWorkerThread.cs
2012-06-29 22:11:49 +01:00
Justin Clark-Casey (justincc) f202c36106 Add IScene.Name for code clarity to replace the RegionInfo.RegionName used in many, many log messages. 2012-06-29 00:03:22 +01:00
Justin Clark-Casey (justincc) bfa6896678 Change AttachmentsModule.DetachSingleAttachmentToInv() to accept a SOG directly instead of an item ID to then shuffle through attachments, saving CPU busywork.
Almost all callers already had the sog to hand.
Still checking that it's really an attachment, but now by inspecting SOG.AttachedAvatar
2012-06-28 23:31:23 +01:00
Melanie a1a22a2f10 Revert "Mantis 5977 Corrections to llRegionSayTo"
This reverts commit 679da63da6.

Conflicts:

	OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs
2012-06-28 22:02:20 +01:00
Melanie 498820a74f Merge branch 'ubitwork' into avination 2012-06-28 22:06:02 +02:00
Melanie c87f0ac226 Fix llRegionSayTo the right way 2012-06-28 21:23:42 +02:00
Melanie 41a1903c60 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
2012-06-28 03:21:08 +01:00
Justin Clark-Casey (justincc) d043213317 refactor: Move ScenePresence <-> AgentData attachments copying code into AttachmentsModule. 2012-06-27 00:41:46 +01:00
Melanie 7cc5b3d7d3 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-06-26 17:35:55 +01:00
Justin Clark-Casey (justincc) e5b739aaeb When attachments are being saved and deleted for a closing root agent, delete first to avoid a hud race condition with update threads.
If delete doesn't occur first then the update thread can outrace the IsAttachment = false necessary to save attachments and send hud artifacts to other viewers.
2012-06-25 22:48:13 +01:00
Justin Clark-Casey (justincc) 5301648cff In AttachmentsModule.DetachSingleAttachmentToInvInternal(), remove attachment before changing properties for correct inventory serialization.
Serialization of attachments requires IsAttachment = false so that correct positions are serialized instead of avatar position.
However, doing this when a hud is still attached allows race conditions with update threads, resulting in hud artifacts on other viewers.
This change sets SOG.IsDeleted before serialization changes take place (IsDeleted itself is not a serialized property).
LLClientView then screens out any deleted SOGs before sending updates to viewers.
2012-06-25 21:08:19 +01:00
UbitUmarov 9ca9770cf6 fix a seg fault in sp.cs 2012-06-25 00:44:09 +01:00
BlueWall 6d3ee8bb39 Fix script "Running" behavior
Unchecking "Running" box in script editor now persists. This fixes http://opensimulator.org/mantis/view.php?id=6057
2012-06-23 04:15:14 -04:00
Justin Clark-Casey (justincc) fda39c11bf Fix bug where attachments would not retain position if just rotated and not moved.
This was because we were not setting AttachedPos in SOG.UpdateGroupPositionPR, unlike UpdateGroupPosition
2012-06-22 01:33:27 +01:00
UbitUmarov c8f7cd60cd fix turning off phanton always decreasing number of physical parts 2012-06-21 19:05:36 +01:00
UbitUmarov 909572ed86 fix SceneGraph Add/Remove PhysicalPrim counters 2012-06-21 09:40:51 +01:00
Melanie eab211f94d Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-06-21 01:10:13 +01:00
Justin Clark-Casey (justincc) 68ea096f1b Use HasPrivateAttachmentPoint properties in SOG.DeleteGroupFromScene() instead of magic numbers 2012-06-20 23:25:07 +01:00
Justin Clark-Casey (justincc) 714db90832 refactor: use SOG.HasPrivateAttachmentPoint in SOP.SendTerseUpdateToClient() instead of attachmentpoint magic numbers. 2012-06-20 22:46:01 +01:00
Justin Clark-Casey (justincc) 0fa303b1cf Log how many scripts are candidates for starting and how many are actually started.
Adds DebugLevel infrastructure to XEngine though currently commented out and unused.
2012-06-20 00:10:19 +01:00
Justin Clark-Casey (justincc) 9737e6d52e If RegionReady is active, don't falsely say that logins are enabled in the main scene loop before RegionReady is signalled when initial script compilation finishes.
Also raises this logging level to Info from Debug since this information is of high importance.  This matches the behaviour of the RegionReady module
2012-06-20 00:07:03 +01:00
Justin Clark-Casey (justincc) e23d7ff9c0 minor: If logging because mesh/sculpt data isn't present for an object, log object UUID rather than local id, since UUID doesn't potentially vary between simulator starts. 2012-06-20 00:05:48 +01:00
UbitUmarov 8cf414ba32 *CHECK/REVIEW* comented out not used sp.ParentPosition. Comented out SOG.AbsolutePosition changing 'linked' avatars positions ( reason in code coment ) 2012-06-17 11:38:40 +01:00
Melanie ff21007b93 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-06-15 15:48:34 +01:00
UbitUmarov 5d32979170 Revert changes...
This reverts commit c8227e1bb7.
2012-06-15 14:31:35 +01:00
UbitUmarov 065cda3711 Add sop IsPhysical and IsPhantom to be used gradually in core in place of asking physics engines all the time. Some engines delays may make them give wrong answers. 2012-06-15 12:19:42 +01:00
Justin Clark-Casey (justincc) a4290048e5 Add SOG.HasPrivateAttachmentPoint to tell if a SOG has a private attachment 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)
2012-06-14 01:20:55 +01:00
Melanie 36117e079a Merge branch 'master' into careminster 2012-06-14 00:57:05 +01:00
UbitUmarov 7bd274b3d3 Changed t adding the avatar dependent sit offset and not subtracting, so not to break inworld contents. SL ported scripts will show a sit error around 0.1m. Added respective compensation in LSL api to maintain coerence. Fixed several bugs still on SET/GET[link]PrimitiveParams[fast] and llGetObjectDetails() 2012-06-13 04:59:09 +01:00
UbitUmarov b4ab9a7350 *TEST this will affect inworld sittargets by +-0.1m, so may be very BAD *. Changed the sign of the sitoffset dependent on avatar size in SP.cs. Removed that offset correction from SET/GET..primitiveParams in LSL api. If the sign needs to be the previus one, then all references to avatar positions on LSL api need to be fixed with that correction, not only SET/GETprimitiveParams. 2012-06-13 01:26:15 +01:00
Melanie dfafb5ca14 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
2012-06-12 03:09:52 +01:00
Justin Clark-Casey (justincc) 1b1f0a2d77 OnConnectionClosed listeners, retrieve data from IClientAPI.SceneAgent rather than scanning all scene for the presence with the right id
Stop checking IsLoggingOut on these listeners, if called with a root agent then we always want to perform these actions.
This covers cases where the client is closed due to manual kick, simulator shutdown, etc.
2012-06-12 02:43:33 +01:00
UbitUmarov 5fd6f678a4 Moved auxiliar funtions of last commit from sop to lsl api since they are only used on one place each 2012-06-12 02:20:47 +01:00
UbitUmarov 24e8e5d818 *UNTESTED* extended llGet*PrimitiveParam() to support avatars. Some auxiliar code in SOP.cs 2012-06-12 01:26:03 +01:00
Justin Clark-Casey (justincc) 8c7149063b In PresenceDetector.OnConnectionClose(), use the IsChildAgent check already available on IClientAPI.SceneAgent rather than retrieving it again by scanning all scenes. 2012-06-12 01:25:09 +01:00
Justin Clark-Casey (justincc) bab7dab4c5 Comment out the scene presence sitting debug log messages for now 2012-06-11 23:37:16 +01:00
Melanie 76a9885ad2 Merge branch 'master' into careminster 2012-06-11 23:15:38 +01:00
UbitUmarov cd49949478 change object drag so it applies a impulse and not a push force so it works as before my fix to impulse/forces 2012-06-11 22:43:35 +01:00
Melanie 84377a23db Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/Framework/Interfaces/ISimulationDataService.cs
	OpenSim/Services/Connectors/Simulation/SimulationDataService.cs
	OpenSim/Tests/Common/Mock/MockRegionDataPlugin.cs
2012-06-11 16:56:40 +01:00
Melanie efff5a7c0d Fix a corner case where checking for region corssing may cross an avatar back if
it's pending to be sat onto a vehicle that is in the process of crossing.
2012-06-08 18:25:36 +02:00
Melanie 1eee525c88 Revert "Add a frame based watchdog function to keyframed motion"
This reverts commit 2d98d6354c.
2012-06-08 16:54:47 +02:00
Melanie dadac6816b Merge branch 'ubitwork' into avination 2012-06-08 15:15:17 +02:00
Melanie 2d98d6354c Add a frame based watchdog function to keyframed motion 2012-06-08 15:14:38 +02:00
Justin Clark-Casey (justincc) 30f4a33f01 Don't make duplicate call to ScenePresence.Close() separately in ETM.DoTeleport() if an agent needs closing.
This is always done as part of Scene.RemoveClient()
Also refactors try/catching in Scene.RemoveClient() to log NREs instead of silently discarding, since these are useful symptoms of problems.
2012-06-08 01:26:43 +01:00
Melanie 8ebe2cd3da Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-06-08 01:12:37 +01:00
Justin Clark-Casey (justincc) 5c162ccd57 Go back to calling IncomingCloseAgent() in the "kick user" command for consistency instead of IClientAPI.Close() directly.
This no longer double counts child agent removals
2012-06-08 00:59:39 +01:00
Melanie 48add77a4c Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-06-08 00:43:39 +01:00
Justin Clark-Casey (justincc) d547bcf8d1 Remove duplicate update of user count in Scene.IncomingCloseAgent()
This is already done in Scene.RemoveClient() which IncomingCloseAgent() always ends up calling.
2012-06-08 00:40:38 +01:00
Justin Clark-Casey (justincc) b56673c920 Fix bug with "kick user" reducing agent counts by 2 instead of 1.
This is done by making the kick user command call IClientAPI.Close() rather than routing through Scene.IncomingCloseAgent(), which also called IClientAPI.Close()
DisableSimulator for child agents is moved from IncomingCloseAgent() to RemoveClient(), this is not a functional change since IncomingCloseAgent() always ends up calling RemoveClient()
2012-06-08 00:18:25 +01:00
Melanie c5af3e384c Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
2012-06-08 00:14:39 +01:00
Justin Clark-Casey (justincc) 0c5fefacb4 Record the fact that child agents can have asset transactions.
Also change code to grab the agent asset transaction module once.
2012-06-07 23:51:04 +01:00
Justin Clark-Casey (justincc) de87e4871b Don't send kill object messages to clients when a child agent is closed. 2012-06-07 23:35:21 +01:00
Melanie 69dd5b855a Merge branch 'avination' into careminster 2012-06-07 23:34:22 +01:00
Melanie e8cd9fbbb7 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
2012-06-07 23:33:40 +01:00
Melanie 038acc39be Cut off collision sounds with avatar at 3.2. This makes most walkig collisions
with walls and stairs silent. Falls from greater height and running into things
will still be heard. a CollisionSound defined for the object will override this
so one can still script a soccer ball with sounds.
2012-06-08 00:09:30 +02:00
Melanie ad1df33006 Further limit the amount of avatar collisions that will actually trigger
sounds. They are distracting.
2012-06-07 23:41:10 +02:00
Melanie 26c5b32988 Add the ability to query the MYSQL databse for a list of the stored prim UUIDs 2012-06-07 22:39:03 +02:00
Melanie 4942314435 Implement playing of the real collision sounds, change scaling for avatar
collisions to make them really soft because otherwise climbing stairs
makes an unbearable amount of noise.
2012-06-07 20:51:03 +02:00
Melanie f5cbe56c56 Make not_at_target stop when the target is reached even if the script
is not listening to at_target
2012-06-07 19:01:33 +02:00
Melanie 64aefe9c28 Disable default collision sounds until they can be uploaded, but enable custom ones 2012-06-07 17:59:38 +02:00
Melanie e93308072e Make the "delay restart" button delay restart for 1 hour rather than aborting
it altogether. Allow a maximum of three uses before the restart goes through.
2012-06-07 16:32:07 +02:00
Melanie 67483a6e50 Remove two causes of recursive locking. Merge artefact cleanup. 2012-06-06 20:36:47 +02:00
Melanie c0b21d92c2 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-06-06 14:16:19 +01:00
Melanie e733fb32cf Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/World/Warp3DMap/Warp3DImageModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SimStatsReporter.cs
2012-06-06 13:07:05 +01:00
UbitUmarov bdc62144ae fix the real cause of double velocity 2012-06-05 05:53:44 +01:00
Melanie 170b820a11 Fix land collisions to work like SL. 2012-06-05 01:53:25 +02:00
Justin Clark-Casey (justincc) 96d1ba90d7 Scale down per frame MS stats to match scaled simulator FPS stat.
This makes frame time stats properly tally with fps, which saves confusion and makes it easier to interpret numbers.
In some ways this is not so artifical - physics FPS runs at the higher rate.
2012-06-05 00:27:51 +01:00
Justin Clark-Casey (justincc) 655625ab87 Start sending spare frame time MS viewer stat. Make frame time correctly display total frame time, not just non-spare time.
This makes it easier to see when components of frame time exceed normal permitted frame time.
Currently reflect scene frame times.
2012-06-05 00:17:55 +01:00
Justin Clark-Casey (justincc) c3d9acc9a9 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-06-05 00:15:29 +01:00
Justin Clark-Casey (justincc) a7f4804f53 Properly show per frame millisecond statistics per frame, not as amount of time taken per second.
This is to make these statistics actually match their names (and also be more accurate as number of frames can vary under heavy load)
Currently using scene frames (11.23 every second) instead of physics frames (56.18 per second)
2012-06-04 23:07:53 +01:00
Melanie fd176aab8f Actually trigger land collisions in the root even when a child collides 2012-06-04 22:41:29 +02:00
Melanie 28e5abd917 Fix llAttachToAvatar and "Attach" viewer option to preserve saved attach positions. 2012-06-04 21:05:56 +02:00
Robert Adams f94ef37b46 Correct the delegate specification in EventManager.TriggerTerrainTainted. Looks like the wrong one was cut and pasted. 2012-06-04 10:26:39 -07:00
Melanie 8e735efff0 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-06-02 02:01:48 +01:00
Melanie 522f36345d Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SimStatsReporter.cs
2012-06-02 01:40:42 +01:00
Melanie 928e3e9e21 Fix LSL animation state reporting and animation state transitions on crossing 2012-06-01 23:04:28 +02:00
Justin Clark-Casey (justincc) 72219eae7d Instead of updating sim stats root agent, child, objects and scripts accounts every single scene frame, update in the once every 3 seconds SimStatsReporter run 2012-06-01 04:47:11 +01:00
Melanie e696d1d952 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-05-31 03:37:43 +01:00
Melanie e80161753f Merge branch 'master' into careminster 2012-05-31 03:35:24 +01:00
Justin Clark-Casey (justincc) 0b02a4d42e Add an optional mechanism for physics modules to collect and return arbitrary stats.
If active, the physics module can return arbitrary stat counters that can be seen via the MonitoringModule
(http://opensimulator.org/wiki/Monitoring_Module)
This is only active in OdeScene if collect_stats = true in [ODEPhysicsSettings].
This patch allows OdeScene to collect elapsed time information for calls to the ODE native collision methods to assess what proportion of time this takes compared to total physics processing.
This data is returned as ODENativeCollisionFrameMS in the monitoring module, updated every 3 seconds.
The performance effect of collecting stats is probably extremely minor, dwarfed by the rest of the physics code.
2012-05-31 01:52:26 +01:00
Melanie b660c4991b Fix collision filtering. The filter should be checked on the receiving part! 2012-05-29 18:18:47 +01:00
Melanie 100d2968c4 Add advanced collision processing into ScenePresence 2012-05-29 17:24:17 +02:00
Melanie c46b31a9b4 Re-add script collisions that were lost in a merge 2012-05-29 16:58:08 +02:00
Melanie 10e9ad0086 Fix collision filtering 2012-05-29 16:56:04 +02:00
Melanie 9129a0cce4 Merge branch 'avination' 2012-05-29 08:45:44 +02:00
UbitUmarov 5141f4075f Merge branch 'avination' into ubitwork
Conflicts:
	OpenSim/Region/Framework/Scenes/CollisionSounds.cs
2012-05-28 13:13:01 +01:00
UbitUmarov 121433d03a disable collision sounds for now 2012-05-28 13:10:02 +01:00
Melanie b70fb7df78 Place the return back into collision sounds. 2012-05-28 11:28:46 +02:00
Melanie bbaf450c30 Modify SceneManeger to use a DoubleDictionary and work without locks.
Changes to the scenes dictionary are exceedingly rare and using atomic
operations makes the chance of collisions nearly nil in any case.
2012-05-28 02:14:14 +02:00
Melanie 78e657fd8d Merge branch 'avination' into careminster 2012-05-27 19:35:36 +01:00
Melanie 884c0e7bb1 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
	OpenSim/Data/MySQL/Resources/RegionStore.migrations
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
	OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
2012-05-27 19:24:30 +01:00
Justin Clark-Casey (justincc) 43a6f28620 If restating a region, clean up the physics scene after the main scene has been closed not before.
If this is done before then on ODE agent update calls still incoming can fail as they try to use a raycastmanager that has been disposed.
Bullet plugin does nothing on Dispose()
However, I wouldn't be at all surprised if individual region restarting was buggy in lots of other areas.
2012-05-26 01:55:35 +01:00
Justin Clark-Casey (justincc) ff53add54d refactor: replace LSL_Api.InventoryKey(string) largely with SceneObjectPartInventory.GetInventoryItem(string)
Also gets llStopAnimation() to call KeyOrName rather than duplicating logic.
2012-05-26 00:36:01 +01:00
Justin Clark-Casey (justincc) 9f1fc7ea88 Remove a call stack debugging line accidentally left in from a few days ago at SceneObjectPartInventory.ApplyNextOwnerPermissions(). 2012-05-25 02:54:37 +01:00
Justin Clark-Casey (justincc) 40c78b0624 Stop it being possible for an agent to teleport back to its source region before the source region has finished cleaning up old agent data and structures.
If this is allowed, then the client usually gets forcibly logged out and data structures might be put into bad states.
To prevent this, the binary state machine of EMT.m_agentsInTransit is replaced with a 4 state machine (Preparing, Transferring, ReceivedAtDestination, CleaningUp).
This is necessary because the source region needs to know when the destination region has received the user but a teleport back cannot happen until the source region has cleaned up.
Tested on standalone, grid and with v1 and v3 clients.
2012-05-25 02:02:53 +01:00
Justin Clark-Casey (justincc) 459c7635af If an agent is still registered as 'in transit' by the source region, don't allow an immediate teleport back.
This is to help relieve a race condition when an agent teleports then immediately attempts to teleport back before the source region has properly cleaned up/demoted the old ScenePresence.
This is rare in viewers but much more possible via scripting or region module.
However, more needs to be done since virtually all clean up happens after the transit flag is cleared .
Possibly need to add a 'cleaning up' state to in transit.
This change required making the EntityTransferModule and HGEntityTransferModule per-region rather than shared, in order to allow separate transit lists.
Changes were also required in LocalSimulationConnector.
Tested in standalone, grid and with local and remote region crossings with attachments.
2012-05-24 00:31:14 +01:00
PixelTomsen bc543c1797 Environment Module - allows Environment settings for Viewer3 warning: includes database region store migrations for mssql, mysql, sqlite
enable/disable this module:
Cap_EnvironmentSettings = "localhost" (for enable)
Cap_EnvironmentSettings = "" (for disable) at ClientStack.LindenCaps section (OpenSimDefaults.ini file)
 or owerwrite in OpenSim.ini

mantis: http://opensimulator.org/mantis/view.php?id=5860

Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-23 17:04:19 -04:00
BlueWall 682d4075e3 Fix llGetSimulatorHostname to return configured hostname 2012-05-23 15:08:39 -04:00
Justin Clark-Casey (justincc) ee98b9c394 Add "show scene" command which lists stats for the currently selected console scene(s)
This includes prim count, script count, avatar count, etc.
Information is currently the same as "show stats", though show stats can only show one scene at a time because it listens for the latest outgoing stats packet (a bad approach that needs to change).
Might be better to tie this module into the other stats module to display arbitrary stats rather than fetching directly from scene.SimStatsReporter.
Console command is "show scene" because "show region" already exists for the grid service, which is unfortunate.
Might need to make a distinction between "scene" relating to a live scene and "region" relating to more static region data (url, coords, etc.)
2012-05-23 04:10:45 +01:00
Justin Clark-Casey (justincc) ff429a259b Fix bug where an avatar that had an object they owned attached through llAttachToAvatar() or osForceAttachToAvatar() would wrongly have next permissions come into play when they detached that object and rezzed it in scene.
This is because the attachments module code was setting the 'object slam' bit by using PermissionMask.All
Solution here is to route the attachment item creation call through the existing inventory code in BasicInventoryAccessModule rather than copy/pasted code in AttachmentsModule itself.
2012-05-23 01:58:10 +01:00
Justin Clark-Casey (justincc) 7e97f0e898 minor: extend commented out LinkInventoryItem log message for future use 2012-05-21 21:00:22 +01:00
Melanie 7305d2e0ef Merge branch 'ubitwork' into avination 2012-05-21 07:32:27 +02:00
UbitUmarov 32e63fc04f missing update script events call 2012-05-20 17:30:01 +01:00
UbitUmarov 2767574d0f fix m_sitAvatarHeight to be half size.z, reduced default to a more resonable value ( 1m); 2012-05-19 18:10:44 +01:00
UbitUmarov 10889c86d9 reduce useless waste of cpu. Make character collision events be done similiar to parts. Let same thread do it all ( like in parts ) ( to change this some structs copies must be added) 2012-05-19 16:35:48 +01:00
UbitUmarov 2c498baf58 a bit faster collision sound type verification plus a few fixes/changes 2012-05-19 13:53:49 +01:00
Melanie 768e495147 Merge branch 'master' into careminster 2012-05-19 13:35:21 +01:00