Commit Graph

289 Commits (bcd7f300894ccfe330fb74b33e05418b976b6725)

Author SHA1 Message Date
Robert Adams d71b49c2a4 Force HandleTerrainUpdate message to set the terrain no matter what the timestamp. This temp fix allows the initial terrain update to be set. 2011-04-04 11:26:10 -07:00
Huaiyu (Kitty) Liu 2abffd867f Fixed more bugs while merging in the functions from commit 5b79e15285. 2011-03-31 16:45:12 -07:00
Huaiyu (Kitty) Liu 8df517454d Merge branch 'dev' of ssh://sceneapi@island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-03-31 11:41:01 -07:00
Robert Adams fa7a8fb9c1 Move event count from per connection to per event 2011-03-31 10:22:46 -07:00
Huaiyu (Kitty) Liu 170a230e51 Merge branch 'dev' of ssh://sceneapi@island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-03-29 17:13:15 -07:00
Huaiyu (Kitty) Liu cce9a12dbe Fixed a few bugs introduced by my last commit. 2011-03-29 17:11:58 -07:00
Dan Lake fe623f0900 Updated dev code to work with latest changes in opensim master 2011-03-29 16:29:00 -07:00
Huaiyu (Kitty) Liu 5b79e15285 Checked in Functions that encode/decode sync messages based on object/prim properties.
These functions will convert the GroupPosition or Postiion properties into/out of the encoding.
	NewObjectMessageEncoder
	GeneralBucketPropertiesEncoder
	PhysicsBucketPropertiesEncoder
	NewObjectMessageDecoder
	GeneralBucketPropertiesDecoder
	PhysicsBucketPropertiesDecoder

Also checked some changes to SendXXXToRelevantSyncConnectors functions.
2011-03-29 14:55:21 -07:00
Huaiyu (Kitty) Liu eed53e8a56 Fixed terrain synchroniztion to work properly when clients edit the terrain via viewer. 2011-03-28 17:22:24 -07: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
Huaiyu (Kitty) Liu fb8a91bc8d Removed some debug logs, and changed some from Debug to DebugFormat. 2011-03-21 14:51:03 -07:00
Huaiyu (Kitty) Liu 83b4d4121e Added CopyRight disclaimers in RegionSyncModule files. 2011-03-18 13:59:33 -07: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 d5acb9a214 Merge branch 'dev' into syncstats 2011-03-11 16:34:50 -08:00
Huaiyu (Kitty) Liu 4803745c0d Added 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.
2011-03-11 16:29:10 -08: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 e72f08e02a Default physics logging to off 2011-03-11 15:56:33 -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
Robert Adams 7f6529af4e Merge branch 'dev' into syncstats 2011-03-10 14:13:41 -08:00
Robert Adams a1fa5c28c3 Add sync statistics collector class 2011-03-10 14:05:59 -08:00
Robert Adams cc2a679121 Sync statistics to a file 2011-03-10 14:04:10 -08: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
Robert Adams d514c31cc2 Merge branch 'dev' into syncstats 2011-03-08 14:23:41 -08:00
Robert Adams e0f28ac5ba Basic SyncConnector status for ssync status 2011-03-08 12:59:46 -08: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 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 59fbb9cbef Restore physics bucket serialization that was lost in previous commit 2011-03-03 11:37:24 -08:00
Robert Adams b76c233db3 Merge branch 'dev_kitty' into physbucket
Conflicts:
	OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/SymmetricSync/RegionSyncModule.cs
2011-03-03 08:54:01 -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
Robert Adams 11db34313d Restore old PhysicsActor sync code. Not tested yet 2011-02-25 16:54:04 -08:00
Robert Adams 319c48f112 Restore old PhysActor synchronization routines 2011-02-25 16:30:52 -08:00
Huaiyu (Kitty) Liu a5c55a19ef Merge branch 'dev' into dev_kitty 2011-02-25 16:23:57 -08:00
Huaiyu (Kitty) Liu 9d613a20c0 Relocate functions within RegionSyncModule.cs: the IRegionSyncModule region now
only contains functions defined in IRegionSyncModule.
2011-02-25 16:20:58 -08:00
unknown 784cb6c95c Changed some less important messages from Warn to Debug 2011-02-25 15:21:07 -08: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 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
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
Huaiyu (Kitty) Liu 10a41ad5b5 Added code in SceneGraph.AddSceneObjectByStateSynch to handle attachment objects. 2011-02-18 15:49:01 -08: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
Robert Adams c9c94a5f23 Physics bucket packing and unpacking 2011-02-16 17:11:16 -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
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 41c85d9fd1 Changed interface of ScheduleFullUpdate and ScheduleTerseUpdate, and pass a list of updatedProperties as the argument. 2011-02-14 13:54:34 -08:00
Huaiyu (Kitty) Liu 2b2eb4dbe3 Merge branch 'dev_kitty' into dev 2011-02-14 11:36:57 -08:00
Huaiyu (Kitty) Liu b31fa7d8fe Merge branch 'dev' of ssh://sceneapi@island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-02-14 11:36:25 -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
Robert Adams 4d343d0fea Move actor registration to actor modules. Add physics registation 2011-02-14 09:37:36 -08: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
Robert Adams 9970677ed8 Quark/Endpoint registration and lookup for three table database 2011-02-11 15:50:25 -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
Robert Adams 4fe0bd32d4 Actor/Quark registration for Simian backend 2011-02-09 17:17:50 -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 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 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
Huaiyu (Kitty) Liu 97b01dcf75 check in updates in enabling bucket based synchronization. 2011-02-03 12:01:08 -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
Robert Adams af29f4083f move logging to central module. Fix orientation bug. Fix message echo bug. 2011-01-28 13:59:04 -08: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
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
Robert Adams 270f7e653a Add rotationalVelocity and acceleration to variables that are synced in PhysicsActor. Remove unused Prop class. 2011-01-27 11:05:26 -08:00
Robert Adams cfab010b10 Add IClientCore to RegionSyncAvatar to fix cast error on teleport 2011-01-27 11:01:48 -08:00
Huaiyu (Kitty) Liu 85b7bb916f Added some if condition in RegionSyncModule.SendSceneUpdates, so that if no updates to send, no thread is assigned to send updates. 2011-01-26 17:17:03 -08: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
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 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
Robert Adams 3123671651 Configuration of PhysicsSyncServerAddress and port in regions file 2011-01-21 12:28:12 -08: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 67858f0dcd Merge branch 'dev_kitty' into dev 2011-01-20 12:08:15 -08:00
Huaiyu (Kitty) Liu 43edf89a34 Changes names in Regions.ini, and added one more config item: SyncQuarkLocation. 2011-01-20 12:05:10 -08:00
Huaiyu (Kitty) Liu d874e4338f Added softDelete parameter to SendDeleteObject in object synch. 2011-01-19 17:17:16 -08:00
Dan Lake 7a1a21cd15 Merge branch 'dev' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-01-19 13:04:09 -08:00
Robert Adams 8256caad3f Remove setting of localID on newly created avatar. This solves the case of later viewers in other regions not seeing position updates for other avatars. 2011-01-19 08:50:41 -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
Huaiyu (Kitty) Liu c8dc14fb01 Configuration of SyncListenerIPAddress, SyncListenerPort, ServerIPAddress, and
ServerPort is moved to Regions.ini.
2011-01-17 17:13:15 -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
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 9e08ede0bd Commented out DeleteAllSceneObjects in RegionSyncClient, and fixed a bug in "ssync stop". 2011-01-11 16:00:14 -08:00
Huaiyu (Kitty) Liu 95be9c1f7d Fixed a bug so that "ssync start" won't start new connections if a region is already synced. 2011-01-11 14:25:33 -08:00
Huaiyu (Kitty) Liu b5f1137a7d Merge branch 'prephysics_kitty' into prephysics 2011-01-11 12:35:58 -08:00
Huaiyu (Kitty) Liu b29e7c6e5e Let RegionSyncModule to automatically start synchronization when all region loading is done. 2011-01-11 12:33:32 -08: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 9d5888e0f6 Fixed typo in Region Sync Module debug message Log Headers. 2011-01-11 12:21:04 -08:00
Dan Lake b5463e042c Workaround for NaN in rotation update from PSA to CM. 2011-01-11 12:20:06 -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
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
Dan Lake 9d7fd472c0 Fixed a problem with PhysEngineToSceneConnectorModule.cs disabling regionsync when physics syncing is disabled. 2011-01-07 08:27:06 -08:00
Dan Lake 046ec22924 Modified debug messages 2011-01-06 19:26:35 -08:00
Dan Lake a7ec095063 Merge branch 'dev' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-01-06 17:56:18 -08:00
Robert Adams ce4b095a1a Merge branch 'physics' into dev 2011-01-06 17:43:41 -08:00
Dan Lake 17504fcccb Merge branch 'dev' of ssh://island.sciencesim.com/home/sceneapi/sceneapi into dev 2011-01-06 17:33:13 -08:00
Dan Lake a339598bad Added scene name to config options 2011-01-06 17:32:10 -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
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
Robert Adams 2152a5ab7b Merge branch 'dev' into physics 2011-01-05 16:49:28 -08:00
Robert Adams 9669aa93f8 Added region specification to configuration of SyncListenerIPAddress and SyncListenerPort 2011-01-05 16:45:08 -08:00
Huaiyu (Kitty) Liu 731a09bf95 Added symc sync handlers for event ScriptReset. 2011-01-05 16:39:53 -08:00
Robert Adams 251592e54a Code cleanup for better exception processing when looking for a scenePresence when routing a physics event 2011-01-05 16:22:27 -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
Robert Adams 254436e914 Cause PhysicsterseUpdate event to happen in the persistance actor when the attributes are changed by the physics actor 2011-01-04 16:15:55 -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
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 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
Robert Adams ae8f8d60a6 remove some load balancing routine invocations to eliminate build breaks. Remove chatty grab debug messages 2011-01-03 12:21:38 -08: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 f0c2fe6569 Fixed build problem from merge. Needed to add 2 new functions to RegionSyncAvatar.cs as part of IClientAPI interface. 2011-01-02 18:56:59 -08:00
Dan Lake a5c321a548 Added region name to RegionSync debug messages for cases when there are multiple regions being synced by a single simulator. 2011-01-02 18:27:45 -08: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
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
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 d0b429c186 Added SymmetricSyncMessage.cs to git index.
Added ScriptEngineSyncModule.cs with basic implementation. Code now good for script engine
to initilaize local scene by synch'ing with ScenePersistence's copy.

Fixed a bug in SyncStart(), so that it won't read in remote listeners' config info every time
SyncStart() is called.
2010-12-23 14:36:02 -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
Huaiyu (Kitty) Liu dc6964444e Two SyncConnectors now exchange RegionName and Terrian (Scene and Scriptengine tested). 2010-12-22 16:56:34 -08:00
Robert Adams bdeeead120 Add physics actor taint setting after receiveing update values 2010-12-22 15:35:26 -08:00
Huaiyu (Kitty) Liu f97fe18648 Code good for an actor (script engine tested) to connect to ScenePersistence for synchronization.
Need to work on data transmission along the connection as next step.
2010-12-22 11:41:31 -08:00