Commit Graph

1701 Commits (031980782050127ff3f7877ba56f954ac22f98b2)

Author SHA1 Message Date
Justin Clark-Casey (justincc) 26d16567e1 Make SceneGraph.ForEachSOG() execute once for each SOG, not once for each 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-26 00:53:19 +00:00
Justin Clark-Casey (justincc) f30bf429c2 refactor: rename SOG collections in SceneGraph to make it clearer that they are indexing each part's UUID, not just the root part. 2011-03-26 00:42:48 +00:00
Justin Clark-Casey (justincc) 6ae04448f7 Start using IPrimCounts populated by PrimCountModule instead of LandData counts populated by LandManagementModule.
In order to pass ILandObject into IClientAPI.SendLandProperties(), had to push ILandObject and IPrimCounts into OpenSim.Framework from OpenSim.Region.Framework.Interfaces, in order to avoid ci
Counts are showing odd behaviour at the moment, this will be addressed shortly.
2011-03-25 23:05:51 +00:00
Justin Clark-Casey (justincc) 7f5019b0f2 Add ILandObject.IPrimCounts for the new prim count module.
Not functional yet, but tests now act against this object rather than interrogating the module directly
2011-03-25 21:47:54 +00:00
Justin Clark-Casey (justincc) d011896341 Add generic EventManager.OnObjectAddedToScene and get PrimCountModule to listen for that rather than EventManager.OnParcelPrimCountAdd
OnParcelPrimCountAdd had the wrong semantics for the PrimCountModule - it was invoked for every entity in the scene, not just new ones, which would screw up the untainted count.
Extend automated test for this scenario.
2011-03-23 21:53:14 +00:00
Huaiyu (Kitty) Liu 0ad9366abb In InventoryAccessModule.RezObject, move the calling of AddNewSceneObject to the later part of
the function, so that the object's most properties have values already set when AddNewSceneObject
is called, which will trigger RegionSyncModule.SendNewObject to sync across scene copies.
2011-03-23 10:23:13 -07:00
Justin Clark-Casey (justincc) b34743e5fe Add an initial confidence-building TestAddObject() for prim counts. 2011-03-22 23:47:36 +00:00
Justin Clark-Casey (justincc) 7acade00b9 On initial setup, include estate and regions names in questions to make it clearer what they relate to. 2011-03-21 23:26:35 +00:00
Justin Clark-Casey (justincc) 2d1f0d224c minor: slightly adjust previous method doc. 2011-03-21 22:27:16 +00:00
Justin Clark-Casey (justincc) 793bfb5a66 add method doc to IEstateDataService and IEstateDataStore interfaces 2011-03-21 22:25:20 +00:00
Huaiyu (Kitty) Liu fb8a91bc8d Removed some debug logs, and changed some from Debug to DebugFormat. 2011-03-21 14:51:03 -07:00
Justin Clark-Casey (justincc) d3a20a1e92 On initial region registration, if the user chooses the option to make the region part of an existing estate, then list the existing region names. 2011-03-21 21:37:06 +00:00
Huaiyu (Kitty) Liu b7dc2af5e6 Merge branch 'dev' of ssh://sceneapi@island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-03-17 17:20:58 -07:00
Huaiyu (Kitty) Liu 4076cb4a3c Fixed a bug in RegionSyncModule.SendSceneUpdates: if there are no SyncConnectors in connection,
clear the update list before return.
Also, if a SyncConnector receives a request GetObject, only sends back NewObject to that SyncConnector.
2011-03-17 17:18:16 -07:00
Robert Adams 6e251b13c4 Merge branch 'dev' into collisionevent 2011-03-17 10:31:16 -07:00
Robert Adams 74903876eb Collision events generated by physics engine and processed by script engine. 2011-03-17 10:29:03 -07:00
Huaiyu (Kitty) Liu 0df0e92ff0 In RegionSyncModule.DoInitialSync(), calling DeleteAllSceneObjectsBySync() instead of DeleteAllSceneObjects(). 2011-03-16 16:36:54 -07:00
Huaiyu (Kitty) Liu 271f460bae Handler of SymmetricSyncMessage.MsgType.UpdatedObject changed to HandleUpdateObjectBySynchronization,
that is, since we add objects in scene by sending around NewObject, we no longer "add" objects after
receiving UpdateObject.
Also, ProcessBackup is now only executed by Persistece Actor (ScenePersistenceSyncModule, if configured
to run, will set each SOG's ToPersistObjectState to true).
2011-03-16 11:32:26 -07:00
Huaiyu (Kitty) Liu a8c722bead Added code to encode and decode all object properties, including those in Physics bucket,
to sending and handling received NewObject sync message.
Also, NewObject, RemoveObject, and LinkObject are now all sent out via
SendSceneEventToRelevantSyncConnectors, that is, they are sent out on wire right away,
not enqueue first.
2011-03-16 09:32:27 -07:00
Huaiyu (Kitty) Liu 04ef2366c2 Merge branch 'dev' of ssh://sceneapi@island.sciencesim.com/home/sceneapi/sceneapi into dev
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2011-03-15 11:26:46 -07:00
Huaiyu (Kitty) Liu 3d17bd5654 Reimplement logic in RegionSyncModule so that a SyncRelay node (e.g. PSA) only sends out updates for a bucket
that has properties updated in the last update interval: the previous implemenation has some flaws in design.
2011-03-15 11:21:46 -07:00
Robert Adams d70deaaa64 Merge branch 'dev' into syncstats
Conflicts:
	OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/SymmetricSync/RegionSyncModule.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2011-03-11 16:02:00 -08:00
Robert Adams 9edbbf2728 sync logging added to RegionSyncModule 2011-03-11 15:42:39 -08:00
Huaiyu (Kitty) Liu 37dd39fd5d Added SendNewObject to explicitly send out NewObject sync message when new objects are added. 2011-03-11 15:39:06 -08:00
Huaiyu (Kitty) Liu 48ad2010e5 removed some debug message. 2011-03-11 13:54:09 -08:00
Huaiyu (Kitty) Liu 1ab4df9954 In RegionSyncModule.PrimUpdatesPhysicsBucketSender, if no PhysicsActor for the SOP, still sending out
"GroupPosition" and a few other properties in physics bucket. Sync'ing of phantom objects now seems working fine.
2011-03-11 11:50:46 -08:00
Huaiyu (Kitty) Liu 13798f9f7d Fixed bugs in llCreateLink to sync LinkObject properly.
Also, added logs for debug purposes.
2011-03-11 09:22:32 -08:00
Justin Clark-Casey (justincc) b821f748ac For objects loaded from an IAR, make sure the CreatorID points towards the OSP resolved ID if newer CreationData is not present.
This should resolve issues where the creator for rezzed objects was being shown as "Unknown user" where previous behaviour was to show the OSP resolved account.
This is being done by parsing the serialized objects and updating the CreatorID if no CreationData exists.  This operation might be expensive for sculpties where the sculpt texture is inlined with the object data.  Will just have to see.
This relies on the IAR streaming inventory data before asset data (as is currently the case).  Will need to introduce more stringent checks for file order on loading (much like JAR zips must start with the manifest file).
This is for IAR loading only.  Tests updated to check this behaviour.
2011-03-10 21:56:15 +00:00
Huaiyu (Kitty) Liu b848df2a3a In LSL_Api.cs, no special checking of if ScriptEngineToSceneConnectorModule exist anymore --
async model is no longer used and we get rid of the old code.
2011-03-09 17:16:03 -08:00
Huaiyu (Kitty) Liu e4bdaaaa83 Added SyncStateReport function in RegionSyncModule to do some preliminary sync state comparison. 2011-03-09 16:31:53 -08:00
Justin Clark-Casey (justincc) 9456bb77fb Upgrade nunit.framework.dll to version 2.5.9. Fix up tests appropriately.
This version removes the NUnit.Framework.SyntaxHelpers namespace, so any modules with their own tests will need to delete this using statement.
2011-03-09 23:25:24 +00:00
Huaiyu (Kitty) Liu ae258a21e4 Added code to propogate event OnChatBroadcast (llOwnerSay is handled by this), and consolidate code
with events OnChatFromClient and OnChatFromWorld.
2011-03-08 11:00:52 -08:00
Huaiyu (Kitty) Liu 052af34a52 Added Shape as one of the properties just updated in MoapModule.SetMediaEntry. 2011-03-07 16:24:48 -08:00
Dan Lake e21176f974 Merge branch 'dev' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-03-07 15:58:36 -08:00
Dan Lake 7210b7f517 Merge branch 'master' of git://opensimulator.org/git/opensim into dev
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2011-03-07 15:57:31 -08:00
Huaiyu (Kitty) Liu 3fe31ad457 Added back the LocalFlags as one of the SOP properties to be synced, so that script events such as touch is propogated properly.
Also removed some debug messages.
2011-03-07 15:51:59 -08:00
Robert Adams 6b9d58b99b Make PECharacter sync PhysActor info back to physics actor. Remove some chatty debug messages. Add checks to warn if PhysicsActor synchronization is acting on a prim rather than a character. 2011-03-01 12:42:05 -08:00
Robert Adams 400c9b5293 Using PhysActor sync for avatars and bucket sync for prims. Working with avatars kicking physical objects 2011-02-28 14:09:19 -08:00
Melanie cea47491de Fix a few little things 2011-02-27 19:49:23 +00:00
Robert Adams 11db34313d Restore old PhysicsActor sync code. Not tested yet 2011-02-25 16:54:04 -08:00
Justin Clark-Casey (justincc) 2b04cab1ee change some log messages from info to debug 2011-02-25 02:15:06 +00:00
Robert Adams f212a60067 Merge branch 'dev_kitty' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into physbucket
Conflicts:
	OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2011-02-24 14:48:11 -08:00
Robert Adams 2335968271 Adding SOG/SOP to ScenePresence working more but confusion on UUID of presence vs SOG 2011-02-24 14:41:16 -08:00
Justin Clark-Casey (justincc) 2f5394e70d Fix bug where avatars in other regions would not always show up on the mini-map 2011-02-24 22:33:54 +00:00
Mic Bowman 5a16fa882c Parameterizes the view distance used to compute and manage
child agents in neighbor regions. This means you can extend
the view on a simulator beyond the default 3x3 regions.

This uses a region default draw distance and should be
replaced at some point by the avatar specified draw distance.
That will require more careful, dynamic recomputation of child
agents every time the draw distance changes.

WARNING: this is experimental and has known instabilities. specifically
all regions "within site" should be running the same default draw distance
or agents will not be closed correctly.
2011-02-22 13:23:54 -08:00
Robert Adams 1ff16c93a3 Another attempt to add SOG/SOP to ScenePresence so it can be handled by bucket update code 2011-02-18 17:16:57 -08:00
Huaiyu (Kitty) Liu 513ca97eb0 Added code to propogate event OnAttach. 2011-02-18 17:05:25 -08:00
Justin Clark-Casey (justincc) 9e47018cfb Remove test T020_TestMakeRootAgent() which hasn't been active for ages anyway
This test was non-viable.  Keeping inactive T021_TestCrossToNewRegion() around for now since it's still useful for reference purposes in constructing a future working test.
2011-02-19 00:14:13 +00:00
Huaiyu (Kitty) Liu 1d2a25689a RegionSyncServer and RegionSyncClient will not trigger RezAttachment anymore. Attachments
are synced via object sync protocol.
2011-02-18 16:08:12 -08:00
Justin Clark-Casey (justincc) 60fe3d48ee Put some CapabilitiesModule null checks in Scene
Stop tests setting up a capabilities module by default
2011-02-18 23:50:54 +00:00
Huaiyu (Kitty) Liu 10a41ad5b5 Added code in SceneGraph.AddSceneObjectByStateSynch to handle attachment objects. 2011-02-18 15:49:01 -08:00
Justin Clark-Casey (justincc) 8249d77991 If GridService.GetNeighbours() could not find the region then log a warning rather than causing a null reference on the normal log line
This also extends the TestChildAgentEstablished() test to actually activate the EntityTransferModule, though the test is not yet viable
2011-02-18 23:25:59 +00:00
Justin Clark-Casey (justincc) dd9efc1838 extend TestChildAgentEstablished() test slightly to put in EntityTransferModule. Not yet enabled. 2011-02-18 23:05:56 +00:00
Justin Clark-Casey (justincc) eb699df5f6 On SceneSetupHelpers, go back to calling ScenePresence.CompleteMovement() for the last stage of AddRootAgent() instead of SP.MakeRootAgent()
Going this extra step doesn't appear to cause any test failures.
This is arguably better for test purposes, though at some stage another method may arise which does just call AddRootAgent().
2011-02-18 22:49:19 +00:00
Justin Clark-Casey (justincc) 023f953f39 remove another unused test teardown method 2011-02-18 22:25:45 +00:00
Justin Clark-Casey (justincc) c155f57dbe remove unused test teardown method 2011-02-18 22:22:51 +00:00
Justin Clark-Casey (justincc) c763edf56d separate attachment tests out into their own class 2011-02-18 22:20:08 +00:00
Justin Clark-Casey (justincc) 88da253c94 Add very basic test which invokes the scene update loop once and checks the frame number.
This makes Scene.Update() match its original description of performing a single update, which also matches the semantics of SOG and ScenePresence.
2011-02-18 21:54:44 +00:00
Justin Clark-Casey (justincc) e774679f62 minor: add method doc to a few ScenePresence methods 2011-02-18 21:19:16 +00:00
Justin Clark-Casey (justincc) 4725221435 Stop the avatar sometimes pausing for more than a second on the border when region crossing.
This restores a RemoveFromPhysicalScene() call in ScenePresence.CheckForBorderCrossing() when the agent has been placed in transit.
If we don't remove the agent from the physical scene, then the method continues to be called via ScenePresence.Update()
until the handover of the client between regions is completed.  Since this handover can take more than 1000ms (due to the 1000ms
event queue polling response from the server), this results in the avatar pausing on the border for the entire handover period.
2011-02-18 20:54:00 +00:00
Robert Adams a25eac0a40 Remove old physics sync code. Attempt to fake ScenePresence in physics bucket sync 2011-02-18 08:11:29 -08:00
Marck 4f9c3c73ad Add support for new naming syntax of linked regions to osTeleportAgent and osTeleportOwner. 2011-02-17 13:47:13 +01:00
Robert Adams c9c94a5f23 Physics bucket packing and unpacking 2011-02-16 17:11:16 -08:00
Huaiyu (Kitty) Liu 3d1048f1e2 In SOG.UpdateGroupPosition, added AttachedPos as an updated property is the object is an attachment. 2011-02-16 16:57:47 -08:00
Huaiyu (Kitty) Liu 7b9bd89a5c Made sure IsAttachment is set only after AttachedAvatar is set. Also, in GroupPosition get, added checking of "if m_parentGroup==null". 2011-02-16 15:42:10 -08:00
Huaiyu (Kitty) Liu f99b516eec Added serialization/deserilaization of Attachment related SOP properties to sync AttachObject. 2011-02-16 14:29:08 -08:00
Melanie 918c12c965 Change the QUERYACCESS method to eliminate spurious access denied messages 2011-02-16 08:06:11 +00:00
Huaiyu (Kitty) Liu 21a1000da6 Physics bucket properties (a partial list implemented) seem be synchronized fine with simple tests (less than 10 prims, scripts running, link/delink). 2011-02-15 14:38:43 -08:00
Huaiyu (Kitty) Liu 94e433315e Added code to send and receive SymmetricSyncMessage.MsgType.UpdatedBucketProperties sync message. 2011-02-15 14:02:53 -08:00
Huaiyu (Kitty) Liu 7229aa204e In RegionSyncModule, now each property bucket has its own list of updated-prims.
An SOP will be inserted (now it's still its parent group will be inserted) into a bucket
if that bucket has been tained as updated.

Also, added Tainted property to BucketSyncInfo.
2011-02-14 17:08:49 -08:00
Huaiyu (Kitty) Liu f05502f3fe Merge branch 'dev' into dev_kitty 2011-02-14 14:56:48 -08:00
Huaiyu (Kitty) Liu 41c85d9fd1 Changed interface of ScheduleFullUpdate and ScheduleTerseUpdate, and pass a list of updatedProperties as the argument. 2011-02-14 13:54:34 -08:00
Dan Lake 1837778cf9 Merge branch 'master' into dev
Conflicts:
	OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs
	OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
2011-02-14 13:39:27 -08:00
Huaiyu (Kitty) Liu 411fa60b2b RegionSyncModule.SendLinkObject and SendLinkObject now call BucketSyncInfoUpdate() for the linked/delinked
objects, to make sure they have updated timestamp information for synchronization purpose.
2011-02-14 11:33:57 -08:00
BlueWall c75e916ccf Set filter to send proper rotations for root part
This allows the root prim, alone or in a set, to send it's
	rotation. This fixes unsitting the avatar on sit-offsest
	type teleports where the sit target is in the root prim of
	a linkset.
2011-02-13 07:42:53 -08:00
Huaiyu (Kitty) Liu 63e35d53f7 Added implementation of GeneralBucketUpdateProcessor and PhysicsBucketUpdateProcessor 2011-02-11 16:51:38 -08:00
Justin Clark-Casey (justincc) 7e21c1eadf Hack in a crude temporary "estate show" command
This will show the estate for each region, along with that estate's id and the estate owner.
This is temporary because the command output might change.
This commit also converts the estate module from the old to the new region module format
2011-02-12 00:46:01 +00:00
Huaiyu (Kitty) Liu f47c301a56 Added SOP.HasPropertyUpdatedLocally() to help enqueue the right set of objects that have properties updated locally.
Also, in RegionSyncModule.SendSceneUpdates, added calling sog.UpdateTaintedBucketSyncInfo() to update timestamp of a tainted property bucket.
2011-02-11 16:23:03 -08:00
Huaiyu (Kitty) Liu 7a331b6a8f Switched to use ScheduleFullUpdates() and ScheduleTerseUpdates() as the funnel to catch any property updates, so as to update bucket's sync
timestamp correctly. Code good for compilation, runtime not tested yet.
2011-02-11 15:31:13 -08:00
Huaiyu (Kitty) Liu 5ef659520e Access to sop.Shape.Scale replaced by sop.Scale. 2011-02-10 17:06:15 -08:00
Huaiyu (Kitty) Liu 88e42011af In current SOP class, overrode functions in SOPBase that modified values of Shape or properties of Shape. 2011-02-10 15:32:59 -08:00
Huaiyu (Kitty) Liu 1da933041c Started to added new access functions of SOP properties. 2011-02-10 11:37:34 -08:00
Huaiyu (Kitty) Liu 3cd1ec8752 Renamed SOP and SOPInventory as SOPBase and SOPInventoryBase, and define new SOP and SOPInventory. The latters
will invoke UpdateBucketSyncInfo the set functions of their properties, while the base classes won't.
2011-02-09 17:17:16 -08:00
Huaiyu (Kitty) Liu 2dc857b31d Added code to serialization/deserialize LocalFlags. Need further testing to see if it's necessary. 2011-02-08 15:55:00 -08:00
Huaiyu (Kitty) Liu e8e9a0fb43 Enabled all synchronized properties to be updated by calling through SetXXX() to set values. 2011-02-08 15:33:54 -08:00
Diva Canto ac7bc78555 Added emergency monitoring of UDP Outgoing packets thread. Just type "emergency-monitoring on/off" 2011-02-08 12:06:14 -08:00
Huaiyu (Kitty) Liu 29053b19d8 Added set functions for the last a few properties. For some property assignments
in SOP, changed from "m_xxx=" to "Xxx=" to trigger UpdateBucketSyncInfo() as desired.
2011-02-08 10:08:09 -08:00
Huaiyu (Kitty) Liu e9b831b8f4 1. Updated SOP.InventorySerial and SOP.TaskInventory set functions, to make sure only local write accesses trigger
UpdateBucketSyncInfo().
2. LinkObjectsBySync(), DelinkObjectsBySync(), and functions they call into, all updated to set properties via calling SetXXX instead of by "XXX=", so that the set operations won't trigger UpdateBucketSyncInfo().
2011-02-07 17:16:26 -08:00
Huaiyu (Kitty) Liu 6cb8b01bef Added m_syncEnabled in SceneObjectPart to guard again modifying any syncinfo (timestamp, etc) while
deserializing and building SOP/SOG out of sync message.
2011-02-07 14:15:33 -08:00
Diva Canto 98ea78fc77 New command: show pending-objects 2011-02-06 19:39:29 -08:00
Huaiyu (Kitty) Liu c929348668 Majority of SOP properties have set functions added. 2011-02-04 17:05:08 -08:00
Huaiyu (Kitty) Liu 2ae8917c2e Modified/added set functions for SOP properties: "AllowedDrop" to "Material", as listed in SceneObjectSerializer(). 2011-02-04 15:01:38 -08:00
Kevin Cozens 034327b51f Send object date to viewer in microseconds (Fixes mantis bug #3990) 2011-02-04 20:55:41 +00:00
Huaiyu (Kitty) Liu 4fe0c6d0d2 Fixed a few bugs. Code now good for updating the physics properties implemented in SOG. Events
propagation also seems working fine (chat, link/delink objects, delete, etc).
2011-02-04 11:09:00 -08:00
Huaiyu (Kitty) Liu 62a9e0b7c4 No longer calling SyncInfoUpdate to update timestamp. Bucket based concurrency control now in place for a few physics properties
whose SetXXX() functions have been implemented in SceneObjectPart.
2011-02-03 17:21:00 -08:00
Huaiyu (Kitty) Liu 3cff68340f Implemented several SetXXXProperty functions. Set operation ("=") for these properties now first calls SetXXXProperty and then triggers UpdateBucketSyncInfo(). 2011-02-03 14:24:15 -08:00
Mic Bowman cf24069227 Change UpdateAgent (for changes in agent position) to be sent
once to each simulator rather than once to each region. This
should help with some of the delays caused by multiple outstanding
requests to a single service point.
2011-02-03 12:43:46 -08:00
Huaiyu (Kitty) Liu 97b01dcf75 check in updates in enabling bucket based synchronization. 2011-02-03 12:01:08 -08:00
Huaiyu (Kitty) Liu c84551ae2c Serialization/deserialization with BucketSyncInfoList works fine with a single object. Haven't tested with multi objects/linksets yet. 2011-02-02 16:44:05 -08:00
Huaiyu (Kitty) Liu 9ca061b25a Starting add SetXXX() functions to SceneObjectPart, where XXX is each property's name. Also fixed some bugs in InitializeBucketSyncInfo 2011-02-02 15:46:12 -08:00
Huaiyu (Kitty) Liu ce4c8e4b6f Added code to include serialization/deserialization of BucketSyncInfoList in each SceneObjectPart. 2011-02-01 14:20:09 -08:00
Huaiyu (Kitty) Liu f36f1010b7 Started to add code for concurrency control of updating objec properties on per bucket base. Added code to
process to PrimPropertyBucketMap in RegionSyncModule and BucketSyncInfo in SceneObjectPart.
2011-02-01 10:07:20 -08:00
Dan Lake a7d4c974dd Added checks for null circuit data in AddNewClient2. In the case of RegionSyncAvatars being added to the scene, there will be no circuit data, no appearance data, and no teleport flags. 2011-01-31 14:32:34 -08:00
Dan Lake e709b55f01 Fixed compilation errors due to merge conflicts. AddNewAgent2 has been greatly reduced in complexity. We need to validate that it's going to do the right thing for the REGION SYNC cases. 2011-01-30 04:27:59 -08:00
Dan Lake a23ffa2262 Merge branch 'master' from git://opensimulator.org/git/opensim into dev
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2011-01-30 04:13:20 -08:00
Melanie e7d5ff9bd2 Create the structure of classes and interfaces to replace the cruft that
is in the land management module today
2011-01-29 02:24:27 +00:00
Melanie 5942385d0e Add the prim count interfaces 2011-01-28 23:21:41 +00:00
Huaiyu (Kitty) Liu 2ffa91d72a Commented out some debug messages. 2011-01-28 13:39:05 -08:00
Huaiyu (Kitty) Liu 1252df6f1e Added code to receive and process DelinkObject sync message. Preliminary delink tests seems running fine. 2011-01-28 12:11:42 -08:00
Melanie 188d86998d Fix up QueryAccess to also check parcels 2011-01-28 04:09:04 +00:00
Melanie d90b0c53ec Fix bumping into sim borders and check estate bans for walking crossings 2011-01-28 02:38:14 +00:00
Melanie 5a0cb7d37e Thank you, Goetz, for a patch to fix prim count display in cut regions. 2011-01-28 02:34:07 +00:00
Huaiyu (Kitty) Liu 1b99c33e6c Added code to send out DelinkObject message at the actor that initiates the operation. 2011-01-27 16:19:36 -08:00
Justin Clark-Casey (justincc) be3685b1a2 When an oar is loaded, do not create a default parcel before loading the parcels from the OAR.
The region spanning parcel shouldn't exist in this situation.  If it does, when the land data is loaded it is repersisted with a local ID which comes after the ones loaded via the oar, which obliterates the oar loaded one.

Resaving the data we just loaded from the database is somewhat odd in itself (though this makes sense from the way that OAR loading was already using the same event).
2011-01-27 20:36:50 +00:00
Justin Clark-Casey (justincc) 5a26dc2743 Fix OAR parcel loading so that old parcels are replaced by the new instead of merged.
The --merge switch will still merge the old and new land parcelling.
2011-01-27 18:48:48 +00:00
Melanie b0f641fa15 Make it work 2011-01-27 06:41:07 +00:00
Melanie 17801bd78b Add a TeleportFlags member to SP so we can tell how we got there. 2011-01-27 05:33:46 +00:00
Huaiyu (Kitty) Liu 441551e7c6 Commented out debug messages in enabling LinkObject synchronization. 2011-01-26 16:39:18 -08:00
Huaiyu (Kitty) Liu 101d67c45b Enabled LinkObject to synchronize across actors. 2011-01-26 16:01:54 -08:00
Mic Bowman 2bab8e5538 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-01-26 13:35:21 -08:00
Mic Bowman 240c0eaf1d Remove the RestorePresences functions (which don't seem to be doing
anything) and clean up the code in AddNewClient (so Appearance only
gets assigned once, not three times).
2011-01-26 13:33:34 -08:00
Justin Clark-Casey (justincc) 8eb2789ae1 Add some comments on ILandObject.StartPoint and EndPoint 2011-01-26 21:19:22 +00:00
Justin Clark-Casey (justincc) a0469daf75 Implement command "land show". This shows all the parcels on the currently selected region/s
This is useful for diagnostics.  The command is "land show" rather than "show land" because it's implemented as a module specific subcommand.
2011-01-26 21:12:41 +00:00
Huaiyu (Kitty) Liu 4860eba0ba In SceneGraph.LinkObjects, call RegionSyncModule.SendLinkObject before parentGroup.LinkToGroup is called,
so that the actors who receive LinkObject message will get it before the soft-delete messages of the linked-in
parts.
2011-01-26 11:54:51 -08:00
Huaiyu (Kitty) Liu ea2dc04bac Merge branch 'dev_kitty' into dev 2011-01-25 11:15:13 -08:00
Dan Lake cf15fc0b97 Merge branch 'master' of git://opensimulator.org/git/opensim into dev
Conflicts:
	OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
2011-01-24 20:03:20 -08:00
Huaiyu (Kitty) Liu 65c4889474 Added SceneObjectPart.UpdateCollisionSound w/o calling CollisionSound set function, so that
not to trigger aggregateScriptEvent if not necessary (so as not to change LastUpdatedTimeStamp and
LastUpdatedActorID to local actor if CollisionSound is not changed).
2011-01-24 17:20:16 -08:00
Huaiyu (Kitty) Liu 005c743fae Added event SceneGraph.OnObjectCreateBySync, which will be triggered in AddSceneObjectByStateSynch.
ScriptEngineSyncModule now subscribes to this new event to create new script instances.
2011-01-24 16:25:33 -08:00
Melanie b91c99b596 Fix script data not being reset as it should be 2011-01-24 03:07:01 +00:00
Huaiyu (Kitty) Liu 677889d3b6 Get rid of SymSync in OpenSim.ini, old way of object sync no longer works (via RegionSyncServer).
SyncListenerAddress/Port renamed as SyncServerAddress/Port.
2011-01-20 16:19:51 -08:00
Huaiyu (Kitty) Liu e39d2ab14f Added DelinkFromGroupBySync and supporting functions to handle delink operations. 2011-01-20 15:58:48 -08:00
Huaiyu (Kitty) Liu a0eddfcf61 Added AddNewPart for synchronization of linked objects. 2011-01-19 17:34:28 -08:00
Huaiyu (Kitty) Liu d874e4338f Added softDelete parameter to SendDeleteObject in object synch. 2011-01-19 17:17:16 -08:00
Huaiyu (Kitty) Liu b3179d34da reimplement SceneObjectGroup.UpdateObjectAllProperties to do parts updating differently, as
an attemp to make linkset updates correct, and rename the function UpdateObjectGroupBySync.
2011-01-19 10:52:06 -08:00
Robert Adams c541b42f7e Converted PhysicsActor identification from localID to UUID 2011-01-18 16:52:37 -08:00
Robert Adams 42563e77fa Merge branch 'prephysics' into dev
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneGraph.cs
2011-01-18 09:31:33 -08:00
Diva Canto a07375a7ae Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-01-17 17:41:06 -08:00
Diva Canto c98d1cffe2 Removed the call to sceneViewer.Reset upon MakeRoot and ChildAgentUpdate, because Reset hangs for a long time waiting for the lock. That is a problem in itself -- that long holding of the lock by some thread -- but let's just avoid it altogether. 2011-01-17 17:40:48 -08:00
Justin Clark-Casey (justincc) 3083c517a0 minor: resolve some mono compiler warnings 2011-01-18 00:29:10 +00:00
Justin Clark-Casey (justincc) c544f0d0c5 Prune some of the excess logging for client logins.
Didn't touch the appearance related stuff.
2011-01-18 00:25:24 +00:00
Diva Canto 4bcee1dfb4 Revert "DEBUG DEBUG DEBUG"
This reverts commit 59c2cd04ba.
2011-01-17 13:07:02 -08:00
Diva Canto 59c2cd04ba DEBUG DEBUG DEBUG 2011-01-17 12:35:19 -08:00
Huaiyu (Kitty) Liu 719f59db3f Added code to propagate OnNewScript event, when client sends in RezScript request (e.g. add new script to a prim). 2011-01-14 16:58:06 -08:00
Melanie 30320077a2 Fix slam bits being lost when editing perms in prim inventory 2011-01-14 03:20:47 +00:00
Huaiyu (Kitty) Liu 0be2fe7f13 Changed the way RemoveObject is handled: now Scene.DeleteSceneObject() calls RegionSyncModule to
send RemovedObject message to other actors for synchronization.
2011-01-13 15:36:44 -08:00
Huaiyu (Kitty) Liu c1e19ead74 Added ScheduleFullUpdate() in SceneObjectPart.AddInventoryItem(), to enable synchronization across actors. 2011-01-12 17:20:17 -08:00
Melanie 705f4e1e4b Dont' trust the viewer! Fix a permission slam error caused by trusting
the viewer too much.
2011-01-12 21:46:49 +00:00
Melanie 914e4b319e Fix direct item give permissions 2011-01-12 21:39:13 +00:00
Melanie 7cfe17b5b3 Partial permissions fix for boxed items. 2011-01-12 21:25:38 +00:00
Melanie dd154f7403 Fix god mode perms adjustment 2011-01-12 21:21:34 +00:00
Dan Lake 86235e200e Merge branch 'prephysics' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into prephysics 2011-01-11 12:25:10 -08:00
Dan Lake ed380196ea Only AvatarFactory module should be calling ScenePresence.SendAppearanceToAllOtherAgents(). 2011-01-11 11:49:05 -08:00
Huaiyu (Kitty) Liu f8a0de591d Handling RemovedObject as event, instead of as object-update as in the previous approach. 2011-01-10 16:30:42 -08:00
Huaiyu (Kitty) Liu 5c31e0bdd3 Enabled touch events (ObjectGrab, ObjectGrabbing, ObjectDeGrab) to be propagated to script engine and triggers script. 2011-01-10 14:14:40 -08:00
Diva Canto eab0951a59 Fixes the issue of hung archives. Problem was with SceneObjectSerializer.
Also fixes a buglet in scene load xml command, where it was given the wrong argument index for filename.
2011-01-08 15:49:51 -08:00
Huaiyu (Kitty) Liu 7eb9affbd3 Enabled chats from scripted objects to be propogated to other objects and avatars. 2011-01-07 15:08:12 -08:00
Diva Canto a1c5de0f94 Try to fix a IAR problem reported by nebadon, where save iar seems stuck forever. 2011-01-07 12:32:47 -08:00
Huaiyu (Kitty) Liu 4bb99b3df5 Merge branch 'dev_kitty' into prephysics 2011-01-07 12:02:22 -08:00
Huaiyu (Kitty) Liu 739bb1dc43 Fixed a bug in deserialization during rezzing objects out of inventory: SceneObjecPart.SyncInfoUpdate() fixed. 2011-01-07 12:00:00 -08:00
Dan Lake 4f45dcf711 Commenting out verbose debug in SceneGraph.cs 2011-01-07 11:37:03 -08:00
Diva Canto c18bcf3d8d A bit more frugal on the caller side of closing agents, now that the receiving end is async. No need for so much concurrency. 2011-01-07 10:25:49 -08:00
Dan Lake 046ec22924 Modified debug messages 2011-01-06 19:26:35 -08:00
Robert Adams ce4b095a1a Merge branch 'physics' into dev 2011-01-06 17:43:41 -08:00
Huaiyu (Kitty) Liu 9ecf1c21aa Enabled chats (avatar to avatar, avatar to object) to work under the new EventManager (Dan's old way of
propagating chats is disabled by not subscribing to OnChatFromClientRaw in RegionSyncClient and
not subscribing to OnChatFromClientRaw/OnChatFromClientRaw in RegionSyncClientView.

Also, fixed a few minor bugs:
1. GetRemoteSyncListenerInfo() in RegionSyncModule fixed.
2. ActorID sent out when an actor connects to ScenePersistence actor.
2011-01-06 17:02:46 -08:00
Diva Canto 5b43f9cac4 HG bug fix. Must wait for client's UDP contact before getting scene presence. 2011-01-06 12:47:13 -08:00
Huaiyu (Kitty) Liu e4ab31e004 merged in Kitty's code on propogating events and handling remote events 2011-01-06 10:46:06 -08:00
Dan Lake 247bed199f Merge branch 'dev' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-01-06 09:21:21 -08:00
Dan Lake f2013d3c93 Updates for appearance and attachments 2011-01-06 09:20:59 -08:00
Huaiyu (Kitty) Liu 731a09bf95 Added symc sync handlers for event ScriptReset. 2011-01-05 16:39:53 -08:00
Huaiyu (Kitty) Liu 837a77b24a Abandoned the previous temporary solution of propogating events. Instead, rename legacy (Scene)EventManager
as EventManagerBase, and implement a new EventManager, to enable handling local/remote events differently.
Handlers for UpdateScript has been implemented as a sample case.
2011-01-05 15:32:43 -08:00
Huaiyu (Kitty) Liu 9b34d50643 Tried a temporary solution for propogating events across actors. See OnUpdateScript handlers. 2011-01-05 13:46:48 -08:00
Huaiyu (Kitty) Liu 42645acab9 Fix a bug and link-set objects can now be synched correctly. 2011-01-04 14:19:44 -08:00
Diva Canto fbde9b1136 Note to self: try to make only 3 things at the same time. 2011-01-04 11:33:15 -08:00
Diva Canto db55859125 Guard against null Animator. 2011-01-04 11:30:08 -08:00
Robert Adams 7441fbfa3a Merge branch 'dev' into physics
Conflicts:
	OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncServerModule.cs
2011-01-04 10:28:26 -08:00
Robert Adams 0dbd96a12f Modify remote physics configuration to work with new object sync. Remove some chatty debug messages 2011-01-04 10:19:21 -08:00
Huaiyu (Kitty) Liu d84e69fefe Added SymSync in config file. If SymSync = true, then code in the old sync module (asym sync) that handle object updates
are disabled. Then we effectively have new ways (RegionSyncModule) of handle object updates, and old ways of handling
avatar updates working together.
2011-01-04 10:12:35 -08:00
Robert Adams 7da71bd30d Merge branch 'dev' into physics 2011-01-03 15:42:17 -08:00
Huaiyu (Kitty) Liu f5df61162f Added a missing file: IRegionSyncModule.cs. 2011-01-03 15:35:16 -08:00
Robert Adams e68d9a25b1 Merge branch 'dev' into physics 2011-01-03 15:25:31 -08:00
Dan Lake 0b164072b3 Merge branch 'danmerge_symsync' into dev 2011-01-03 15:13:04 -08:00
Melanie 5286198650 Add permissions hooks for object transfers 2011-01-03 19:42:58 +00:00
Melanie e1664b8d38 Fix child agent scoping 2011-01-03 19:42:26 +00:00
Robert Adams be2af26231 Merge branch 'dev' into physics
Conflicts:
	OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
	OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncClient.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
2011-01-03 10:47:19 -08:00
Dan Lake a34e152e9b Additional debug text in ScenePresence.cs for appearance 2011-01-03 09:37:31 -08:00
Dan Lake adeab48e7e Merge branch 'master' into danmerge 2011-01-02 18:38:58 -08:00
Dan Lake 9df74cf726 The "show" command on scene does not ever seem to be called anywhere. Commenting out the implementation for now and everything still builds. Might be a patch for master or needs a way to call it. 2011-01-02 18:28:42 -08:00
Melanie 1f4d0ad460 Fix up a prior fix (refix the fixed fix :) 2010-12-30 02:31:05 +00:00
Huaiyu (Kitty) Liu 5acaba2974 Added basic implementation for ClientManagerSyncModule and PhysicsEngineSyncModule. 2010-12-29 17:01:45 -08:00
Huaiyu (Kitty) Liu 2ce7d982fa Added functions to sync terrain updates. Either script engine or Scene can update terrain
and the other will be updated.
2010-12-29 13:41:51 -08:00
Diva Canto d42e0c39fc Bug fix in neighbors: serverURI now always has a trailing '/'... neighbors were not getting notified. 2010-12-29 07:36:39 -08:00
Huaiyu (Kitty) Liu 994d70f9d8 Code good for script engine and Scene to sync on majority object operations:
e.g. script execution, editing objects, reloading
oar file on Scene (but terrian not updated correctly to the debugging viewer of script engine),
rezing objects by scripts, deleting objects.
2010-12-28 17:11:30 -08:00
Huaiyu (Kitty) Liu 821f80bf3f Add funtions in RegionSyncModule and (Actor)SyncModules to correctly process SyncStop.
E.g. script engine will save script states and delete objects in local scene copy;
ScenePersistence still maintains object copies, though.
2010-12-28 15:58:16 -08:00
Huaiyu (Kitty) Liu 130915f669 Added functions to sync on RemoveObject event. Object can now be removed from either script-engine
or Scene and can be synced.
Problem: there is significant delay form when an object is removed on one actor, to the time it also
disappears from the viewer attaching to the other actor.
2010-12-28 14:54:40 -08:00
Huaiyu (Kitty) Liu 384895cbdd Added synchronization functions to RegionSyncModule, Scene, SceneGraph, SceneObjectGroup and
SceneObjectPart: examples:
HandleAddOrUpdateObjectBySynchronization
QueueSceneObjectPartForUpdate
SceneObjectGroup.UpdateObjectAllProperties
SceneObjectPart.UpdateAllProperties

Now script engine and Scene can sync on script updating or Scene editing objects.
2010-12-28 12:09:17 -08:00
Huaiyu (Kitty) Liu f10059ccd9 1. Added ActorID to IDSGActorSyncModule and the modules that implements this interface.
2. Added LastUpdateTimeStamp and LastUpdateActorID to SceneObjectPart. Also added functions to
serialize and de-serialize the two new members.
2010-12-27 12:15:39 -08:00
Diva Canto 3eaaaa0d99 One more pass at object inventory. This time, fix SceneObjectPartInventory so that it makes sure that the file is added to Xfer's before it signals the client to come and get it. This allows the simplification of the logic of Xfer's. 2010-12-24 08:50:00 -08:00
Huaiyu (Kitty) Liu e68a8f7710 Added handlers to SceneGraph.OnObjectCreate event in both ScenePersistenceSyncModule
and ScriptEngineSyncModule, so that they can apply actor specific operations once
an object is added to the local Scene.
2010-12-23 15:42:05 -08:00
Huaiyu (Kitty) Liu d63e3db533 Added event OnPostSceneCreation to OpenSim/Region/Framework/Scenes/EventManager.cs, and TriggerOnPostSceneCreation. Reason: to emulate what PostInitialise() used to do for IRegionsModules, which is no longer included in INonSharedRegionModule.
Added OnPostSceneCreation() in RegionSynModule.cs, to gain ActorType information from the
loaded Scene.ActorSyncModule. OpenSim, when configured as ScenePersistence, can start normally now.
2010-12-23 14:07:05 -08:00
Huaiyu (Kitty) Liu 650b0bfe54 1. Restored SceneObjectSerializer.SOGToXml2() as in opensim trunk (master), so that objects
are serialized properly.
2. Added code to pass ActorType from a particular ActorSyncModule to RegionSyncModule.
2010-12-23 14:06:33 -08:00