Justin Clark-Casey (justincc)
de19dc3024
refactor: rename SOG/SOP.GetProperties() to SendPropertiesToClient() to reflect what it actually does
...
This also makes it consistent with some other methods that send data to the client.
2011-09-15 18:58:58 +01:00
Tom
cda4cd6b55
Merge fixes, and fix the build
2011-09-14 18:46:42 -07:00
Tom
03f6734f43
First set of merge fixes
2011-09-07 09:42:18 -07:00
Tom
9cc2d0b60a
Now merging the core changes.
2011-09-04 08:30:23 -07:00
Tom
af59352c4c
Change of tactic. Reverting this to the careminster version, then i'll selectively merge the changes made to core.
2011-09-04 07:54:17 -07:00
Tom
9ab951a954
I fucked up the merge for SOG, so reverting back to OpenSim Core's version...
2011-09-04 07:38:25 -07:00
Tom
66dec3b874
Resolve merge commits, stage 1
2011-09-04 07:06:36 -07:00
Justin Clark-Casey (justincc)
26b471f25a
Go back to resetting the State parameter for all parts of a SOG when SOG.ClearPartAttachmentData() is called.
...
Even though we don't use these on rez they are still present after an unlink, after which selecting them causes various viewers to crash
Hopefully really does address http://opensimulator.org/mantis/view.php?id=5664
2011-09-02 22:28:27 +01:00
Justin Clark-Casey (justincc)
7eca929686
Eliminate pointless checks of SOG.RootPart != null
...
It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
2011-09-01 02:11:00 +01:00
Justin Clark-Casey (justincc)
a90e1cf3aa
add Name property to ISceneEntity
2011-08-30 22:39:16 +01:00
Justin Clark-Casey (justincc)
1615e7d29f
Eliminate duplicate AttachmentPoint properties by always using the one stored in the root part's state field.
2011-08-27 00:33:24 +01:00
Justin Clark-Casey (justincc)
33a894f3d2
refactor: move SOP.IsAttachment and AttachmentPoint up into SOG to avoid pointless duplication of identical values
2011-08-27 00:15:21 +01:00
Justin Clark-Casey (justincc)
15a514fcbc
refactor: simplify SOP.AttachedAvatar into SOG.AttachedAvatar
...
This does a tiny bit to reduce code complexity, memory requirement and the cpu time of pointlessly setting this field to the same value in every SOP
2011-08-26 23:06:41 +01:00
Justin Clark-Casey (justincc)
5f3ffc195f
refactor: move SOG.DetachToGround() to AttachmentsModule.DetachSceneObjectToGround() and remove redundant code
2011-08-26 22:49:11 +01:00
Justin Clark-Casey (justincc)
002313bf13
refactor: move sog.DetachToInventoryPrep() into AttachmentsModule.DetachSingleAttachmentToInv()
2011-08-26 22:02:23 +01:00
Justin Clark-Casey (justincc)
6d4432f440
refactor: simplify EntityBase.IsDeleted property
2011-08-24 22:34:26 +01:00
Justin Clark-Casey (justincc)
9ba4511d3e
add SOG helper properties IsPhantom, IsTemporary, etc. to improve code readability
...
use these in some sog methods
2011-08-24 21:53:12 +01:00
Justin Clark-Casey (justincc)
5d6c9644fa
early code to allow scripts to force npcs not to fly when moving to target
...
this is to allow walking on prims. it will be up to the script writer to be sure that there is a continuous path.
currently implemented in osNpcMoveToTarget(), but none of this is final.
2011-08-10 01:47:37 +01:00
Justin Clark-Casey (justincc)
ba89fc3aa1
Add regression test for setting phantom status on a scene object. This is not yet complete.
2011-08-05 23:42:05 +01:00
Justin Clark-Casey (justincc)
a333c60f28
refactor: rename the move to position methods to move to target to be consistent with terminology used by scene object part and elsewhere
2011-08-03 22:34:05 +01:00
Justin Clark-Casey (justincc)
2964467708
get rid of vestigal move to parameters
2011-08-03 22:11:05 +01:00
Justin Clark-Casey (justincc)
c122489e09
Partially fix autopilot/go here
...
This now works again except that it requires a click or avatar mvmt to get going
This is because the ScenePresence.HandleAgentUpdate() method doesn't trigger until the client does something significant, at which point autopilot takes over.
Even clicking is enough to trigger.
This will be improved presently.
2011-08-02 23:41:12 +01:00
Justin Clark-Casey (justincc)
bc3679b67d
Fix undo when changing just the root prim's position in a linkset.
...
I think (ha ha) this largely fixes undo, except for the fact that rotation a set of prims with 'edit linked parts' selected doesn't quite work properly (though this works fine if the checkbox isn't selected).
Also, the double undo bug for resize is still present.
Redo might be incredibly buggy, haven't even looked at that yet.
2011-07-19 05:46:17 +01:00
Justin Clark-Casey (justincc)
0ef29da9b2
refactor: rename UpdatePrimPosition() to UpdatePrimGroupPosition() for consistency
2011-07-19 05:20:04 +01:00
Justin Clark-Casey (justincc)
62325829ec
comment out all kinds of debugging guff
2011-07-19 05:14:58 +01:00
Justin Clark-Casey (justincc)
1fdb16f1cd
Fix undo for rotation of the root prim in a linkset on its own.
...
The only obviously broken things right now are the undo of the position of just a root prim (stays in place) and the fact that resizes need two undoes.
2011-07-19 05:05:50 +01:00
Justin Clark-Casey (justincc)
b2722e984a
Fix undo of rotation of single prims in a linkset
2011-07-19 04:40:02 +01:00
Justin Clark-Casey (justincc)
97f1edfd95
Fix undo of prim group rotation.
...
This isn't that great since I think I broke it a few commits earlier.
Undo of rotation of individual prims in a linkset is still broken
2011-07-19 04:15:27 +01:00
Justin Clark-Casey (justincc)
c94dc95844
fix undo when resizing of non-root individual prims in a linkset
...
undo resize, rotation and position still needs fixing when only editing root prim of a linkset
2011-07-19 03:27:16 +01:00
Justin Clark-Casey (justincc)
430a4aeba8
Fix undo for resizing linksets
...
This involves implementing a boolean in UndoState to signal whether the undo needs to be done for an entire group/linkset or just a single prim
Resizing individual components of linksets is still dodgy.
Resizing still has to be down twice, since for some reason the client is sending two multiobjectupdate packets on every resize except the very first. This applies to single prims and linksets. Need to look into this.
2011-07-19 03:01:54 +01:00
Justin Clark-Casey (justincc)
6fc74b36d1
Make various tweaks to undo code in an effort to get things working better.
...
Undo rotation and position appear to be working.
Resizing a single prim appears to be working, though the undo has to be done twice.
Resizing a group of prims still does not work properly - possibly because in the UndoState we don't store a knowledge of when we're resizing a whole group rather than individual prims.
This needs to be addressed.
2011-07-18 04:54:21 +01:00
Justin Clark-Casey (justincc)
f5ddf37112
Replace ifs in SOG.GroupResize() with Math.Min()
...
Also fiddle a bit with undo. This is not currently working properly, though to be fair it also didn't appear to work in 0.7.1.1 either (at least for resize).
Will get some more attention soon.
2011-07-16 05:23:21 +01:00
Justin Clark-Casey (justincc)
9a80adf33a
remove now unncessary parts of SceneObjectGroup.Resize()
2011-07-16 04:49:21 +01:00
Justin Clark-Casey (justincc)
2b68ac4ba3
refactor: Push all part resize code down into SceneObjectPart.Resize()
2011-07-16 04:22:57 +01:00
Justin Clark-Casey (justincc)
df2a59d31b
refactor: make SceneObjectGroup.GroupScale() a property rather than a mehod
2011-07-16 03:30:14 +01:00
Justin Clark-Casey (justincc)
982e71b6b8
eliminate unused and redundant SceneObjectGroup.AssetReceived()
2011-07-16 03:08:28 +01:00
Justin Clark-Casey (justincc)
c82f19e41c
fix build break from last commit
2011-07-16 03:06:30 +01:00
Justin Clark-Casey (justincc)
27fae36a21
remove the need to supply SceneObjectGroup.GroupResize() with a localId.
...
This is utterly pointless scene we already know which sog we're dealing with.
2011-07-16 02:53:36 +01:00
Justin Clark-Casey (justincc)
50bd48542c
Add very basic test for resizing a scene object with one prim
2011-07-16 02:44:00 +01:00
Justin Clark-Casey (justincc)
da7340b9fb
If resized shape is a mesh/sculpt, leave it to the mesh asset callback to trigger the physics actor taint.
...
In the last commit, the fix was made by updating all the child prim physics actors with the new size rather than just the root part.
2011-07-16 01:42:56 +01:00
Justin Clark-Casey (justincc)
18652eb87e
Fix physics proxy regeneration when a mesh with more than one submesh is resized
...
Addresses http://opensimulator.org/mantis/view.php?id=5584
2011-07-16 01:36:27 +01:00
root
b5fcd2caba
Fix some local id issues in physics glue
2011-07-15 20:11:12 +01:00
root
e9dbe54ab1
Fix some local id issues in physics glue
2011-07-15 20:07:59 +01:00
Robert Adams
b55076990c
fix duplication of physical objects for physics engines that care about the initial value of localID
2011-07-15 11:37:34 -07:00
Melanie
c7dbd7cbd0
Fox some local id issues in physics glue
2011-07-15 19:36:00 +02:00
Melanie
8dff9d564d
Revert "Add localid support to ch0de properly"
...
This reverts commit bb402d0d95
.
2011-07-15 19:35:49 +02:00
Tom
bb402d0d95
Add localid support to ch0de properly
2011-07-15 12:08:40 -07:00
Justin Clark-Casey (justincc)
df0e5cc9fe
When a mesh object is added to a scene, delay adding the physics actor until the sculpt data has been added to the shape (possibly via an async asset service request)
...
This prevents spurious 'no asset data' for meshes added on startup.
2011-07-12 02:33:09 +01:00
Justin Clark-Casey (justincc)
0badf3718d
refactor: push the part of SceneObjectGroup.CheckSculptAndLoad() that actually deals with the part into a SceneObjectPart.CheckSculptAndLoad() method
2011-07-11 03:35:29 +01:00
Justin Clark-Casey (justincc)
2f3d0e209f
When a sculpt/mesh texture is received by a part on a callback request, don't do the unnecessary work of copying the base shape.
...
Just setting the new base shape is enough to reinsert the sculpt data and set the taint.
Also cleans up a few more left-in debugging messages.
2011-07-11 03:13:59 +01:00
Justin Clark-Casey (justincc)
01b98c2e62
refactor: Make arguments for SceneObjectGroup.UpdatePrimFlags() more readable
2011-07-11 02:18:19 +01:00
Mic Bowman
ad84728aba
Add localID to physical object creation functions.
2011-06-15 11:31:32 -07:00
Mic Bowman
29da57e380
Add the PhysActor to the correct SOP when duplicating a physical
...
prim. Thanks, MisterBlue
2011-06-15 11:26:45 -07:00
Melanie
a1c16a4200
Merge branch 'master' into careminster-presence-refactor
2011-06-11 12:08:02 +01:00
Justin Clark-Casey (justincc)
b5518dc906
minor: Add some commented out destructor logging messages for potential future use.
...
At the moment, client and scene objects are being garbage collected as expected, at least in simple scenarios.
2011-06-10 20:40:14 +01:00
Melanie
61bf2bf2dd
Make Buoyancy a prim property
2011-06-02 18:32:25 +02:00
Melanie
4d324f1b74
Change setter on changed flags to public so modules can reset it
2011-05-26 16:29:00 +02:00
Melanie
28c25d8477
Allow disabling the legacy backup mechanism to avoid the object clone if
...
backup is not used.
2011-05-24 04:03:51 +01:00
Melanie
62e0c96036
Allow disabling the legacy backup mechanism to avoid the object clone if
...
backup is not used.
2011-05-24 03:37:25 +02:00
Diva Canto
73caa4e94a
Minor correction to yesterday's changes. Make normal prim crossing (no attach) work well again.
2011-04-29 08:42:51 -07:00
Diva Canto
9892e115cc
Fatpack message on agent transfers: 1 message only (UpdateAgent) containing the agent and all attachments. Preserves backwards compatibility -- older sims get passed attachments one by one. Meaning that I finally introduced versioning in the simulation service.
2011-04-28 20:19:54 -07:00
Melanie
d1913f2429
Merge branch 'master' into careminster-presence-refactor
2011-04-18 20:17:29 +01:00
Mic Bowman
452ae375f0
Merge branch 'master' into test-merge0418
2011-04-18 11:29:43 -07:00
Melanie
474910c9d6
Merge branch 'master' into careminster-presence-refactor
2011-04-17 18:48:53 +01:00
Justin Clark-Casey (justincc)
aaf9125869
simplify coalesced object tests by using existing scene object set up utils
...
this change makes it possible to set an absolute position on a group before it is put into a scene.
2011-04-14 17:33:55 +01:00
Mic Bowman
69d014e1dc
First pass at moving object property requests into a queue similar
...
to the entity update queue. The number of property packets can
become significant when selecting/deselecting large numbers of
objects.
This is experimental code.
2011-04-12 15:58:57 -07:00
Melanie
738daadace
Merge branch 'master' into careminster-presence-refactor
2011-04-08 04:16:29 +01:00
Justin Clark-Casey (justincc)
8318915d7e
Signal prim count taint if the AbsolutePosition of a scene object changes.
...
This updates prim counts correctly if an object is moved by something other than an avatar (e.g. scripts, region modules)
Create TestMoveOwnerObject() regression test for this case.
2011-04-06 20:48:00 +01:00
Melanie
407c2b1823
Merge branch 'master' into careminster-presence-refactor
2011-04-06 09:22:55 +01:00
Justin Clark-Casey (justincc)
2497962360
Change some text to make the autoreturn mechanism more obvious, and align with the fact that it's one word rather than two.
2011-04-05 22:25:00 +01:00
Tom
f7276dda02
Flag root prim changes for persistence
2011-03-27 14:20:25 -07:00
Tom
2d2a1acfae
Upgrade terse to full update on root rotation change. Not entirely sure why, but it seems that the terse update causes the first prim to rotate improperly on occasion (only temporary, it's fixed by the full update on deselect, but this will prevent confusion.)
2011-03-27 13:43:32 -07:00
Tom
553a195493
Fix issues with UpdateRootRotation and also increase efficiency
2011-03-27 13:09:19 -07:00
Kitto Flora
b6dda231f2
Corrections for Avatar Auto-pilot target; add llStopMoveToTarget() for Avatar-attached.
2011-02-04 17:31:52 +00:00
Melanie
72048169c0
Taint SOGs the right way
2011-01-10 22:02:09 +01:00
Melanie
f2dd324bc8
Fix linking link sets to rotated prims.
2010-12-26 20:42:47 +01:00
Melanie
62e66b17bc
Make sure the material is set on physical prims
2010-12-15 17:54:57 +01:00
Melanie
342dc532ec
Merge branch 'master' into careminster-presence-refactor
...
Also prevent god takes from ending up in Lost and Found
2010-12-03 02:36:13 +00:00
Justin Clark-Casey (justincc)
7e72afcb3e
Only force prim persistence before delete if the prim is the result of an unpersisted delink
...
This considerably improves delete performance for objects with large linksets
2010-12-03 00:12:59 +00:00
Melanie
b3a71c6df1
Prevent an overlength button label from producing a debug dump and aborting
...
the script.
2010-11-24 18:56:25 +01:00
Melanie
6557d5f359
Merge branch 'master' into careminster-presence-refactor
2010-11-23 14:05:09 +00:00
Marck
e1c72cedb3
Let CHANGED_SCALE also trigger when editing prims and linksets with the viewer's edit tools.
...
This event used to trigger only when the scale was changed with a script.
2010-11-22 19:38:44 +01:00
Melanie
7bb005b0d1
Change the way attachments are persisted. Editing a worn attachment will now
...
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
2010-11-16 21:01:56 +00:00
Melanie
4f15b8d4e6
Change the way attachments are persisted. Editing a worn attachment will now
...
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
2010-11-16 20:44:39 +01:00
Melanie
15da52d73a
Prevent temp-on-rez prims from being persisted
2010-11-08 19:00:03 +01:00
Melanie
b8924167e0
Fix creation of a duplicate physics actor on chained drag-copy operations,
...
the main cause for "ghost prims"
2010-11-04 10:37:39 +01:00
Melanie
52dd547863
Make SendKillObject send multiple localIDs in one packet. This avoids the
...
halting visual behavior of large group deletes and eliminates the packet flood
2010-10-08 11:31:52 +02:00
Melanie
9a5d0984a5
Fix autoreturn to not return zero objects
2010-10-07 02:16:36 +01:00
Melanie
2db0ac74c7
Implement taking of coalesced objects.
...
WARNING!!!!!
You can TAKE them, but you can't REZ them again. Only the first of the contained
objects will rez, the rest is inaccessible until rezzing them is implemented.
Also, rotations are not explicitly stored. This MAY work. Or not.
2010-10-07 01:13:17 +02:00
Melanie
abfede7819
Plumb the path for multiple object deletes
2010-10-06 20:00:51 +01:00
Melanie
42f76773a1
Plumb the path for multiple object deletes
2010-10-06 19:59:30 +02:00
Melanie
9522881404
Fix a potential key collision
2010-09-30 02:46:47 +02:00
Melanie
4fbdcb95a0
Merge branch 'master' into careminster-presence-refactor
2010-09-25 06:19:26 +01:00
Justin Clark-Casey (justincc)
6325fa515d
Add UUID to physics prim name parameter so that diagnostic messages can be made more useful.
...
If a separate UUID parameter is better for the future then this can be added later on.
2010-09-25 00:51:40 +01:00
Melanie
41847e8fdf
Merge branch 'careminster-presence-refactor' of ssh://melanie@3dhosting.de/var/git/careminster into careminster-presence-refactor
2010-09-21 04:03:40 +01:00
Melanie
9feef34a81
Merge branch 'master' into careminster-presence-refactor
2010-09-21 04:03:14 +01:00
Justin Clark-Casey (justincc)
a85779e477
If the uuid of a SceneObjectGroup (RootPart) is changed before adding to the scene, remove the old uuid reference from m_parts as well as adding the new one.
...
The separate remove and set operations is SOG.set_UUID() are both locked under m_parts.SyncRoot since they are logically atomic (though this isn't such an issue if the SOG isn't part of a scene)
Added unit test for this behaviour.
Also changed the second m_parts.AddOrReplace() to m_parts.Add(). As the old reference is now removed we never end up replacing an identical uuid. And if we replace a uuid that's already there (from a child part) then this is an error.
2010-09-21 00:58:54 +01:00
Melanie
9cf8795ecf
Fix a merge artefact that broke script state persistence in XAttachments
2010-09-19 22:53:05 +02:00
root
87a1e00f05
Remove the now unused partslock
2010-09-17 04:00:00 +02:00
Melanie
7df4383235
Merge branch 'master' into careminster-presence-refactor
...
Integrate the next large patch.
Don't use this version, it has a ghost avatar issue. Next push
will fix it.
2010-09-17 03:49:30 +01:00
John Hurliman
b49cb3355f
Fixed a regression in SOG.Copy()
2010-09-16 17:57:00 -07:00
John Hurliman
860b2a502f
Changed SceneObjectGroup to store parts with the fast and thread-safe MapAndArray collection
2010-09-16 17:30:46 -07:00
root
1e4e978f7f
Removing debug
2010-09-16 23:26:53 +02:00
root
a0c87b5af6
JustinCC is evil. f7b28dd3
broke script persistence. This fixes it.
2010-09-16 23:12:32 +02:00
root
ec89dc99b7
Some small bug fixes
2010-09-16 18:58:25 +02:00
Melanie
58b1ee8e2c
Merge branch 'master' into careminster-presence-refactor
2010-09-16 18:04:50 +01:00
Justin Clark-Casey (justincc)
39d27fc879
rename SceneObjectGroup.DeleteGroup() to DeleteGroupFromScene() to improve code readability
2010-09-15 22:29:58 +01:00
Justin Clark-Casey (justincc)
16f296f489
Instead of locking SOG.Children when a group is being removed from the scene, iterate over an unlocked list instead
...
Previously, deadlock was possible because deleting a group took a SOG.Children lock then an m_entityUpdates.SyncRoot lock in LLClientView
At the same time, a thread starting from LLClientView.ProcessEntityUpdates() could take an m_entityUpdates.SyncRoot lock then later attempt to take a SOG.Children lock in PermissionsModule.GenerateClientFlags() and later on
Taking a children list in SOG appears to be a better solution than changing PermissionsModule to not relook up the prim. Going the permission modules root would require that all downstream modules not take a SOG.Children lock either
2010-09-15 21:51:13 +01:00
Melanie Thielker
540a1912ce
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
2010-09-14 22:14:23 +02:00
Melanie
1212cb0c74
Merge branch 'master' into careminster-presence-refactor
2010-09-14 22:03:42 +01:00
Melanie Thielker
cc290abf7a
Adjust the code for ghost prim removal to new information from Kitto
2010-09-14 22:13:44 +02:00
Melanie Thielker
d299f8b55c
Fix a small left over buglet and also add checking of the physics actor
...
position on backup. This way, ant object that has been moved will be
checked for ghost prims as soon as it is persisted.
2010-09-14 19:41:53 +02:00
Justin Clark-Casey (justincc)
36f81c66e5
Comment out SOG storing debug log message
...
This can get very spammy with regularly changing objects. Please uncomment if required.
2010-09-14 00:05:38 +01:00
Melanie
6a1ce17cdb
Merge branch 'master' into careminster-presence-refactor
...
The modules will need to be updated for this to compile and run again. Please
don't use until I do the companion commit to modules later on.
2010-09-13 16:17:38 +01:00
John Hurliman
c03b24cbfd
Merged
2010-09-12 14:21:51 -07:00
John Hurliman
0db1ed0b5a
* Added ISimulationDataService and IEstateDataService
...
* Removed StorageManager
* CONFIG CHANGE: There are no more database settings in OpenSim.ini. Check the config-include configuration files for region store and estate store database settings
2010-09-12 14:20:26 -07:00
Jeff Ames
f1f0bc23f4
Formatting cleanup.
2010-09-12 13:43:49 -04:00
John Hurliman
109b517583
Fixed the naming mess around data connectors for simulation data
2010-09-11 20:43:06 -07:00
John Hurliman
b597a295c4
Second pass at cleaning up thread safety in EntityManager and SceneGraph
2010-09-10 12:41:36 -07:00
Melanie
3284356bba
Merge branch 'master' into careminster-presence-refactor
2010-09-07 01:48:00 +01:00
Justin Clark-Casey (justincc)
3d033520fa
Fix deletion persistence when freshly delinked prims are removed
...
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is not required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.
Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:43:20 +01:00
Justin Clark-Casey (justincc)
11f4a65f42
Fix deletion persistence when freshly delinked prims are removed
...
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.
Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:12:06 +01:00
Justin Clark-Casey (justincc)
953b7f4917
Add test to check persistence of newly added pre-linked objects
...
Added a MockRegionDataPlugin to do in-memory persistence for tests since adding this to OpenSim.Data.Null.NullDataStore doesn't seem appropriate
NullDataStore can do nothing because OpenSim only ever retrieve region objects from the database on startup. Adding an in-memory store here would be unecessary overhead.
2010-09-06 23:00:24 +01:00
Justin Clark-Casey (justincc)
6cbf66827b
refactor: move SOG.AttachToAgent() into AttachmentsModule
2010-09-01 01:11:52 +01:00
Melanie
79bfa275da
Merge branch 'master' into careminster-presence-refactor
2010-08-30 02:30:28 +01:00
Justin Clark-Casey (justincc)
1c0b4457cd
Improve liveness by operating on list copies of SOG.Children where appropriate
2010-08-28 00:40:33 +01:00
Justin Clark-Casey (justincc)
166ab59420
replace m_parts.Count linknum with 0 in CopyRootPart since m_parts.Count is always 0 (and any other number would cause an error anyway)
2010-08-26 00:15:26 +01:00
Justin Clark-Casey (justincc)
8031f8ec09
Improve consistency of locking for SOG.m_parts in order to avoid race conditions in linking and unlinking
2010-08-26 00:08:53 +01:00
Melanie
fc8d2be632
Merge branch 'master' into careminster-presence-refactor
...
This was rather conflicted. Please test linking.
2010-08-26 00:11:07 +01:00
Justin Clark-Casey (justincc)
24d06b12c2
If setting SOG.UUID, update the SOG.m_parts index as well as the root part UUID
...
Being able to change a SOG.UUID is useful for region modules that want to supply their own UUID, before the object is rezzed
2010-08-25 23:05:54 +01:00
Melanie
e74809ff4c
Merge branch 'master' into careminster-presence-refactor
2010-08-18 00:59:20 +01:00
Justin Clark-Casey (justincc)
39a748b47a
refactor: Use SOP.Flags rather than SOP.ObjectFlags
2010-08-13 20:23:53 +01:00
Mikko Pallari
3f942a4f74
Removed abstract SetText method from EntityBase to make cleaner API.
...
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10 19:37:15 +01:00
Justin Clark-Casey (justincc)
2a1c11fda9
On shift-copy of an object, set up a new physics actor (as appropriate) for every copied prim, not just the root
...
This addresses http://opensimulator.org/mantis/view.php?id=4295
2010-08-10 20:15:44 +01:00
meta7
fb14390fb0
Note to self: don't break the build
2010-08-10 09:17:30 -07:00
meta7
9fba4b66bb
Resolve merge failure
2010-08-10 09:11:55 -07:00
Melanie
24b9a2885f
Resolve merge issues
2010-08-10 20:11:55 +01:00
Melanie
c2e5d1d203
Merge branch 'master' into careminster-presence-refactor
2010-08-10 19:49:35 +01:00
Melanie
d98d5ee6be
Remove windows line endinge
2010-08-10 19:42:18 +01:00
meta7
1ead2ed5ee
Add a stack trace to the error output on the recursive read lock warning on my RWlocks. Whilst recursive locks are safe, coupled with other issues we're experiencing with the TaskInventoryDictionary it implies that somewhere the lock is not being freed possibly due to a merge error somewhere, and thus it needs to be looked into.
2010-08-10 09:07:17 -07:00
Melanie
321e1148da
Merge branch 'master' into careminster-presence-refactor
2010-08-08 18:24:33 +01:00
meta7
19ab4c9508
Fix a rather nasty issue where the Backup() process causes objects and avatars sitting on them to be pushed to the corner of the sim.
2010-08-07 16:52:03 -07:00
Justin Clark-Casey (justincc)
903cfa8c7e
minor: Remove overly verbose schedule full update log message for attachments
2010-08-07 22:28:42 +01:00
sacha
b58a47c373
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
2010-08-07 13:41:56 +00:00
sacha
00cc42a607
and another endless debug cleaning
2010-08-07 13:40:38 +00:00
Tom
4f80d75bf3
Add a CHANGED_POSITION event so scripts don't have to run expensive loops to check for position changes
2010-08-07 06:28:04 -07:00
Melanie
26387252f5
Merge branch 'master' into careminster-presence-refactor
2010-08-06 18:08:40 +01:00
Tom
a636af13e7
Make sure the avatar position gets moved along with a prim it is sitting on. This fixes mantis #208 and (maybe) issues with chat and sound coming from the wrong place when sat on a vehicle.
2010-08-06 06:37:40 -07:00
Justin Clark-Casey (justincc)
f067f733ea
add userExposed parameter to part copy event
2010-07-28 19:38:20 +01:00
Justin Clark-Casey (justincc)
b51b2efdc8
Add EventManager.OnSceneObjectPreSave() for future use. This is triggered immediately before a copy of the group is persisted to storage
2010-07-26 23:34:22 +01:00
Melanie Thielker
516ec4acd0
Eat a lockign exception that kills scripts. May bear more investigation
...
in the long run.
2010-07-25 08:11:39 +02:00
Melanie Thielker
d4022becc3
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
2010-07-21 12:16:30 +02:00
Melanie
f63a4c8f2f
Merge branch 'master' into careminster-presence-refactor
2010-07-21 12:03:44 +01:00
Melanie Thielker
c72c84b455
Refine autoreturn a bit
2010-07-21 12:16:17 +02:00
Melanie
ac1a34714d
Allow Megaregions to start properly after an unclean shutdown
2010-07-20 23:24:04 +01:00
Tom Grimshaw
c5891c14c7
Bail out in AttachToBackup if the group is an attachment
2010-07-13 15:32:35 -07:00
Tom Grimshaw
e947d04038
Undo fix is now complete. This commit repairs the special case of the root prim moving or rotating independently of the rest of the group.
2010-07-05 05:44:35 -07:00
Tom Grimshaw
8849b9af8b
Fix single prim rotation undo. All UNDO functions are now working correctly except for when the root prim is moved or rotated as a single prim (coming soon).
2010-07-04 20:45:11 -07:00
Tom Grimshaw
5b68343361
The majority of the Undo fix. There is still an issue with Rotation which i'll address next; however position undo and scale undo should be working just fine now. Also removed some residual debug logging.
2010-07-04 19:28:39 -07:00
Tom Grimshaw
fe2b044d38
Fix Undo! Made a lot of changes to Undo state saving; it now considers that groups of objects can be moved and not just individual prims..
2010-07-03 06:10:55 -07:00
Melanie Thielker
85a9c305a2
Remove AgentID and GroupOD from the signature of SOG.Copy(). They were never
...
used, but made for a very mispleading read of the code in the callers.
2010-06-28 01:43:26 +01:00
Melanie Thielker
4cdda2cae9
Fix Copy on Ray, Drag Copy and other little things. Removed the wrong and
...
nonworking ownership assignment in SOG, which messed things up before.
No longer trust the client to send the ID of the person something is copied
as, since it allows to run a script with someone else's permissions. Properly
adjust inventory ownership and perms.
2010-06-28 01:36:40 +01:00
Melanie Thielker
a817f6b48c
Remove AgentID and GroupOD from the signature of SOG.Copy(). They were never
...
used, but made for a very mispleading read of the code in the callers.
2010-06-28 01:48:24 +02:00
Melanie Thielker
d570cffa39
Fix Copy on Ray, Drag Copy and other little things. Removed the wrong and
...
nonworking ownership assignment in SOG, which messed things up before.
No longer trust the client to send the ID of the person something is copied
as, since it allows to run a script with someone else's permissions. Properly
adjust inventory ownership and perms.
2010-06-28 01:29:30 +02:00
Tom Grimshaw
f64d1cb396
Add new event: OnChangedBackup
2010-06-25 14:39:15 -07:00
Tom Grimshaw
96e649189f
Add two events: OnAttachToBackup and OnDetachFromBackup.
2010-06-25 14:25:39 -07:00
Tom Grimshaw
49d7d8534c
Allow moving an avatar as part of a linkset using llSetLinkPrimitiveParams. This unlocks an awful lot of poseball-free content, and is a step towards resolving mantis #59 .
2010-06-19 10:06:09 -07:00
Melanie Thielker
f9b4f5f594
Revert "Introduce SOP.UpdateSitters() to update sitting avatars' chat position if"
...
This reverts commit f59e272643
.
2010-06-14 00:05:01 +02:00
Melanie Thielker
f59e272643
Introduce SOP.UpdateSitters() to update sitting avatars' chat position if
...
needed
2010-06-13 22:21:05 +02:00
Tom Grimshaw
3ea11fe2e6
Get rid of spamming SOG debug message
2010-06-12 04:35:51 -07:00
Diva Canto
e80cb815df
Bug fix on attachments: attach->drop->attach works now.
2010-06-09 12:51:24 -07:00
Melanie
1dce243661
Merge branch 'master' into careminster-presence-refactor
2010-06-09 20:25:05 +01:00
Melanie
20ea823c19
Merge branch 'master' into careminster-presence-refactor
2010-06-08 22:07:01 +01:00
Justin Clark-Casey (justincc)
b6076d7b33
Reduce number of full updates sent on region crossing for attachments/huds to 1 from 3
...
This is one step towards reducing hud glitches on region crossing, since the viewer fails to display prims if it receives child full updates before the root prim full update
This commit also introduces a mechanism in LLClientView to stop child attachment updates ever going out before the root one
This is a very temporary mechanism and will be commented out when the next step of the fix (to give root prims higher udpate priority) is committed
This code is a foreport from the equivalent changes in 0.6.9-post-fixes
2010-06-08 15:07:57 +01:00
Melanie Thielker
16d8602d3c
Fix prim returns I broke earlier
2010-06-01 03:17:21 +02:00
Melanie Thielker
4867dd135d
Fix prim returns I broke earlier
2010-06-01 02:12:56 +01:00
Melanie Thielker
2fce7d9bcf
Split GetAxisAlignedBoundingBox into two methods to allow calculation of
...
combined bounding boxes and offsets
2010-06-01 02:10:08 +01:00
Melanie Thielker
70f7790413
Split GetAxisAlignedBoundingBox into two methods to allow calculation of
...
combined bounding boxes and offsets
2010-06-01 01:07:46 +02:00
Melanie Thielker
d4b4cbf5a5
Fix create selection getting overwritten by multiple updates for the same prim.
2010-05-31 19:00:02 +02:00
Melanie Thielker
e515467c5e
Fix create selection getting overwritten by multiple updates for the same prim.
2010-05-31 17:55:56 +01:00
Tom Grimshaw
e3dac1292e
Implement suspended updates - When an operation is occurring on lots of prims in a single group, don't schedule any updates until the operation has completed. This makes things like llSetAlpha(LINK_SET,0.0,ALL_SIDES); a *lot* faster, more efficient and less buggy, and also makes unlinking a lot better. Linking is still treacherous.. this needs to be analysed.
2010-05-29 02:10:34 -07:00
Melanie
297bcb5c3d
Merge branch 'master' into careminster-presence-refactor
2010-05-21 21:16:04 +01:00
John Hurliman
93ef65c690
* Moving all of the prioritization/reprioritization code into a new file Prioritizer.cs
...
* Simplified the interest management code to make it easier to add new policies. Prioritization and reprioritization share code paths now
* Improved the distance and front back policies to always give your avatar the highest priority
2010-05-21 13:55:36 -07:00
Tom Grimshaw
fd37a21b59
Kill some locks that have crept into SOG
2010-05-12 08:34:47 -07:00
Tom Grimshaw
3cda854ef3
Fix overlooked readLock which was left open
2010-05-10 08:47:41 -07:00
Melanie Thielker
8766401777
Adapt CM to the new CHANGED_OWNER handling
2010-05-03 04:28:30 +02:00
Melanie Thielker
81ff5eaba0
Make scripted attachment states work. Finally. Also replace two monitor locks
...
with RWLocks, hunting the 10^3 bug. Not successful, but needed to be done anyway
2010-04-25 22:03:35 +02:00
Melanie Thielker
31e0704c8d
Remove debug output, the culprit has been identified
2010-04-23 17:48:50 +02:00
Melanie Thielker
780630d7c0
Fix a nullref in attachment handling. Add some debug to find the attachment
...
state issue
2010-04-23 14:41:20 +02:00
Melanie
9920e219dd
Merge branch 'careminster' into careminster-presence-refactor
2010-04-13 04:36:08 +01:00
Thomas Grimshaw
2f454843d8
Fix up my own shoddy code! Fixes prim rez break. Whups!
2010-04-05 23:17:06 +02:00
Thomas Grimshaw
07b4889eab
Merge branch 'master' of ssh://TOR/var/git/careminster
2010-04-05 22:11:11 +02:00
Thomas Grimshaw
7a3bb266eb
This commit adds some randomness to object persistence. It's a Work In Progress, I am working on improving this to a tiered approach.
2010-04-05 22:11:05 +02:00
Melanie
2fbbc13c71
Fix some overlooked merge conflicts that got committed
2010-04-05 19:42:15 +01:00
Melanie
ba31b31ed0
Merge branch 'careminster' into careminster-presence-refactor
2010-04-05 18:22:15 +01:00
Melanie
04a68db195
Merge branch '0.6.9-post-fixes' into careminster
2010-04-05 18:10:36 +01:00
Melanie
7d917e7c5c
Rename Meta7Windlight to LightShare
2010-03-30 23:29:03 +01:00
Melanie
4c2a51b1b5
Merge branch 'master' into careminster-presence-refactor
2010-03-18 20:09:04 +00:00
Dan Lake
73e9b0be72
Inconsistent locking of ScenePresence array in SceneGraph. Fixed by eliminating option to return the actual list. Callers can now either request a copy of the array as a new List or ask the SceneGraph to call a delegate function on every ScenePresence. Iteration and locking of the ScenePresences now takes place only within the SceneGraph class.
...
This patch also applies a fix to Combat/CombatModule.cs which had unlocked iteration of the ScenePresences and inconsistent try/catch around the use of those ScenePresences.
2010-03-17 11:21:27 -07:00
Melanie
d3f33acc1a
Merge branch 'master' into careminster-presence-refactor
2010-03-15 17:23:35 +00:00
Melanie
898fa637c3
Merge branch 'careminster' into careminster-presence-refactor
2010-03-15 17:12:08 +00:00
Kitto Flora
8198062610
RotLookAt repaired; debug msg cleanup.
2010-03-14 16:22:13 -04:00
Jeff Ames
f58a0394ed
Formatting cleanup. Add copyright notices.
2010-03-10 13:15:36 +09:00
Justin Clark-Casey (justincc)
5caae0293a
Fix bug where approximately half the time, attachments would rez only their root prim until right clicked (or otherwise updated).
...
The root cause of this problem was that multiple ObjectUpdates were being sent on attachment which differed enough to confuse the client.
Sometimes these would eliminate each other and sometimes not, depending on whether the scheduler looked at the queued updates.
The solution here is to only schedule the ObjectUpdate once the attachment code has done all it needs to do.
Backport from head.
2010-03-09 18:53:04 +00:00
Melanie
1f7a0cf892
Merge branch '0.6.9-post-fixes' into careminster
2010-03-06 12:24:09 +00:00
Melanie
107a0a4905
Merge branch 'master' into careminster-presence-refactor
2010-03-04 11:02:01 +00:00
Justin Clark-Casey (justincc)
716e6f20e1
compiler warnings revealed that public PlaySoundSlavePrims properties were changing the wrong protected fields.
...
correcting these may resolve the sound problems seen recently on the mailing list, though not guaranteed.
2010-03-03 23:40:32 +00:00
Justin Clark-Casey (justincc)
8305e6af07
refactor: push sog.SendPartFullUpdate() down into sop where it better belongs
...
no functional changes
2010-03-03 23:29:09 +00:00
Justin Clark-Casey (justincc)
edb176447b
Fix bug where approximately half the time, attachments would rez only their root prim until right clicked (or otherwise updated).
...
The root cause of this problem was that multiple ObjectUpdates were being sent on attachment which differed enough to confuse the client.
Sometimes these would eliminate each other and sometimes not, depending on whether the scheduler looked at the queued updates.
The solution here is to only schedule the ObjectUpdate once the attachment code has done all it needs to do.
2010-03-03 22:14:06 +00:00
Melanie
028a87fe37
Merge branch 'master' into careminster-presence-refactor
...
This brings careminster on the level of master. To be tested
2010-03-03 02:07:03 +00:00
Jeff Ames
2dea162073
Formatting cleanup.
2010-02-22 12:25:59 +09:00
Justin Clark-Casey (justincc)
4c90ee2943
Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim
2010-02-16 19:08:06 +00:00
Justin Clark-Casey (justincc)
052f2b3e27
minor: Make SOG.DelinkFromGroup() return the newly delinked scene object instead of void
2010-02-16 14:36:08 +00:00
Revolution
9821c4f566
Revolution is on the roll again! :)
...
Fixes: Undo, T-pose of others on login, modifiedBulletX works again, feet now stand on the ground instead of in the ground, adds checks to CombatModule. Adds: Redo, Land Undo, checks to agentUpdate (so one can not fall off of a region), more vehicle parts. Finishes almost all of LSL (1 function left, 2 events).
Direct flames and kudos to Revolution, please
Signed-off-by: Melanie <melanie@t-data.com>
2010-02-14 22:18:46 +00:00
Melanie
c8f3bb56ff
Merge branch 'master' into careminster
2010-02-08 22:11:38 +00:00
Justin Clark-Casey (justincc)
9f4883d146
refactor: Reuse SceneObjectGroup.IsAttachmentCheckFull() in Scene.AddSceneObject since this wraps a check that is much less clear
2010-02-08 19:10:54 +00:00
Melanie
0f1a3f8ed2
Merge branch 'master' into careminster
2010-02-03 00:16:02 +00:00
Justin Clark-Casey (justincc)
96d5c8196a
minor: add reminder to lock SOG.Children before using it directly in order to avoid threading issues
2010-02-02 15:45:41 +00:00
Melanie
649d45a2d4
Merge branch 'master' into careminster
2010-01-11 02:04:58 +00:00
Melanie
2320b17ca9
Whitespace cleanup
2010-01-11 02:04:05 +00:00
Melanie
0ae861d7d7
Merge branch 'master' into careminster
2010-01-11 02:01:23 +00:00
Revolution
a0859754c0
Adds llRotTarget and the events at_rot_target and not_at_rot_target.
...
Signed-off-by: Melanie <melanie@t-data.com>
2010-01-11 02:00:40 +00:00
Melanie
aa51b83fdc
Merge branch 'master' into careminster
2009-12-31 23:31:45 +00:00
Revolution
3ec502f551
Readds llCollisionFilter and adds llPassCollision.
...
Applied with whitespace cleanup
Signed-off-by: Melanie <melanie@t-data.com>
2009-12-31 23:29:32 +00:00
Melanie
fa0621b486
Merge branch 'master' into careminster
2009-12-22 00:41:56 +00:00
Melanie
e530180c1e
Glue code for a couple of new LSL function implementations
2009-12-22 00:26:12 +00:00
CasperW
172e2f4e76
Fix to existing ReaderWriterLockSlim implementations
2009-12-06 17:23:07 +01:00
Melanie
5259a32319
Remove extra forced updates. They're not needed for each prim. Really.
2009-12-06 02:53:50 +00:00
Melanie
e3a22ff37d
Eliminate multiple updates on link/unlink
2009-12-06 02:53:34 +00:00
Melanie
f2891e7738
Remove extra forced updates. They're not needed for each prim. Really.
2009-12-06 00:50:28 +00:00
Melanie
ceccfe02d0
Eliminate multiple updates on link/unlink
2009-12-06 00:02:24 +00:00
Melanie
43a6fa1d01
Merge branch 'master' into careminster
2009-12-05 19:53:54 +00:00
Teravus Ovares (Dan Olivares)
781db43a76
* Fixes the 10x10x10 hard physics limitation. (wierdly, you have to set this for each region in your Regions.ini[PhysicalPrimMax = 10(default)])
...
* Adds a configurable maximum object mass before the mass is clamped. Default is 10000.01. Configurable by changing maximum_mass_object in the [ODEPhysicsSettings] section.
* Clamping the mass is important for limiting the amount of CPU an object can consume in physics calculations. Too high, and the object overcomes restitution forces by gravity alone. This generates more collisions potentially leading to 'deep think'.
2009-12-03 20:21:10 -05:00
CasperW
2e6dce434f
Enforce physical prim max size on single prims.
...
Also convert a lock() to ReaderWriterLockSlim that i missed in the last commit
2009-11-30 21:52:55 +01:00
CasperW
9888f95068
Convert multiple lock()s which directly hinder script performance in linksets to ReaderWriterLockSlim.
2009-11-30 21:17:15 +01:00
Melanie
b9eb244d6d
Reset update flag when a SOG is deleted. This fixes llDie();
2009-11-27 08:59:03 +00:00
Melanie
aa695e92f7
Reset update flag when a SOG is deleted. This fixes llDie();
2009-11-27 08:58:26 +00:00
Melanie
06f41bb017
Merge branch 'master' into careminster
2009-11-26 17:27:03 +00:00
Melanie
9d63f90467
Remove the old (Remoting) region crossing code. Fix the new code to
...
pass script state and assembly again properly. Reintroduce respecting tht
TrustBinaries flag. Changes the interregion protocol! No version bump
because it was broken anyway, so with a version mismatch it will simply
stay broken, but not crash. Region corssing still doesn't work because
there is still monkey business with both rezzed prims being pushed across
a border and attached prims when walking across a border. Teleport is
untested by may work.
2009-11-26 17:03:09 +00:00
KittoFlora
873c9098d8
Merge branch 'careminster' into tests
2009-11-16 01:40:15 +01:00
Diva Canto
d5c18f6149
Make GroupRootUpdate be a terse update. This method is not used by opensim (it should), but it's used by external modules.
2009-11-14 14:14:08 -08:00
John Hurliman
ec2ebf2598
Removing EntityBase.Rotation
2009-11-04 16:08:10 -08:00
John Hurliman
1927945053
Another race condition fix in SceneObjectGroup
2009-11-02 15:09:07 -08:00
John Hurliman
59eb378d16
Small performance tweaks to code called by the heartbeat loop
2009-10-28 23:10:16 -07:00
John Hurliman
1c9696a9d2
Always send a time dilation of 1.0 while we debug rubberbanding issues
2009-10-28 15:11:01 -07:00
KittoFlora
1113b3b6eb
Merge branch 'vehicles' into tests
...
Conflicts:
OpenSim/Region/Physics/Manager/PhysicsActor.cs
OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
2009-10-27 22:42:55 +01:00
John Hurliman
d199767e69
Experimental change of PhysicsVector to Vector3. Untested
2009-10-26 18:23:43 -07:00
KittoFlora
8428b25939
Add llRotLookat pt1.
2009-10-26 00:10:23 +01:00
John Hurliman
730930955a
Changing Scene.ForEachClient to use the synchronous for loop instead of Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces
...
* Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff
* Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape()
* Improved the instantiation of PrimitiveBaseShape
2009-10-25 00:40:21 -07:00
John Hurliman
62f1a5e36d
Implemented a "FrontBack" prioritizer, using distance plus the plane equation to give double weight to prims/avatars in front of you
2009-10-23 02:38:59 -07:00
John Hurliman
588361e2a2
Experimental change to use an immutable array for iterating ScenePresences, avoiding locking and copying the list each time it is accessed
2009-10-23 01:02:36 -07:00
Melanie
c4969d47d9
Merge branch 'master' into vehicles
2009-10-22 07:12:10 +01:00
John Hurliman
142008121e
* Change Util.FireAndForget to use ThreadPool.UnsafeQueueUserWorkItem(). This avoids .NET remoting and a managed->unmanaged->managed jump. Overall, a night and day performance difference
...
* Initialize the LLClientView prim full update queue to the number of prims in the scene for a big performance boost
* Reordered some comparisons on hot code paths for a minor speed boost
* Removed an unnecessary call to the expensive DateTime.Now function (if you *have* to get the current time as opposed to Environment.TickCount, always use DateTime.UtcNow)
* Don't fire the queue empty callback for the Resend category
* Run the outgoing packet handler thread loop for each client synchronously. It seems like more time was being spent doing the execution asynchronously, and it made deadlocks very difficult to track down
* Rewrote some expensive math in LandObject.cs
* Optimized EntityManager to only lock on operations that need locking, and use TryGetValue() where possible
* Only update the attachment database when an object is attached or detached
* Other small misc. performance improvements
2009-10-19 15:19:09 -07:00
John Hurliman
4b75353cbf
Object update prioritization by Jim Greensky of Intel Labs, part one. This implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon
2009-10-15 16:35:27 -07:00
Melanie
6deef7d0f3
Merge branch 'master' into vehicles
2009-10-15 21:14:13 +01:00
Dan Lake
5976ac16b0
Optimized heartbeat by calling Update() only on updated objects.
...
During the heartbeat loop, Update() is called on every SceneObjectGroup which in turn checks if any SceneObjectPart has changed. For large regions (> 100k prims) this work consumes 20-30% of a CPU even though there are only a few objects updating each frame.
There is only one other reason to check every object on every frame, and that is the case where a script has registered the object with an "at target" listener. We can easily track when an object is registered or unregistered with an AtTarget, so this is not a reason to check every object every heartbeat.
In the attached patch, I have added a dictionary to the scene which tracks the objects which have At Targets. Each heartbeat, the AtTarget() function will be called on every object registered with a listener for that event. Also, I added a dictionary to SceneGraph which stores references to objects which have been queued for updates during the heartbeat. At each heartbeat, Update() is called only on the objects which have generated updates during that beat.
2009-10-13 19:32:59 -07:00
Melanie
46955f4260
Merge branch 'master' into vehicles
2009-10-02 19:04:46 +01:00
dr scofield (aka dirk husemann)
2107b67f1b
- cleaning up LandData/ILandObject capitalization issues
...
- adding LandDataSerializer to OAR mechanics
2009-10-02 11:31:30 +02:00
Melanie
212e132e79
Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity"
...
This reverts commit 39842eb4af
.
2009-10-02 00:47:01 +01:00
Melanie
d6301db382
Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity"
...
This reverts commit 39842eb4af
.
2009-10-02 00:45:31 +01:00
Melanie
41ff39414b
Merge branch 'master' into vehicles
2009-10-01 14:08:15 +01:00
John Hurliman
cb26878f96
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2009-09-30 17:51:34 -07:00
Jeff Ames
606e831ff5
Formatting cleanup.
2009-10-01 09:38:36 +09:00
John Hurliman
acfe2d9f4e
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2009-09-30 15:28:23 -07:00
Kitto Flora
07df0e0ab0
Merge branch '0.6.7-post-fixes' into vehicles
2009-09-30 19:07:18 +02:00
opensim
827b0fb199
Commit initial version of KittoFlora's vehicle changes
2009-09-30 18:51:02 +02:00
Jeff Ames
ee205e7e81
Formatting cleanup.
2009-10-01 01:17:47 +09:00
Teravus Ovares (Dan Olivares)
2bb513329a
* Does a full battery of tests to ensure that the object isn't an attachment before border crossing
...
* Fixes 'Inconsistent Attachment State' when teleporting into another region besides the SW most region slot on a MegaRegion.
* Fixes a host of other unintended attachment border cross edge cases that lead to Inconsistent attachment state.
2009-09-25 16:06:04 -04:00
John Hurliman
39842eb4af
* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity
2009-09-16 17:17:40 -07:00
John Hurliman
f42d085ab1
SceneObjectGroup cleanup. Removes the default constructor and unnecessary null checks on m_rootPart
2009-09-16 15:06:08 -07:00
Teravus Ovares (Dan Olivares)
9505297fb1
* One last attempt to get the bordercrossing/primcrossing/attachmentcrossing right in the new border framework.
...
* This also contains some inactive preliminary code for disconnecting combined regions that will be used to make one root region a virtual region of a new root region.
2009-09-02 04:39:00 -04:00
Melanie
f32de6fe88
Thank you, dslake, for a set of patches to improve OpenSim startup
...
and idle performance.
2009-09-02 03:33:31 +01:00
Teravus Ovares (Dan Olivares)
b997174d08
* Fix attachment cross issues with new borders.
2009-08-31 20:07:33 -04:00
Teravus Ovares (Dan Olivares)
66c40dd3de
* Switch border cross tests over to the new Border class.
...
* Use List<Border> for each cardinal to allow for irregular regions.
2009-08-20 19:24:31 -04:00
Diva Canto
e02062051d
Making attachments work again. Tons of debug more. This needs more testing and a lot of cleaning.
2009-08-16 16:17:19 -07:00
Diva Canto
6808b9109e
Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim into inventory-connector
2009-08-16 08:59:58 -07:00
Jeff Ames
9d9fcac038
Misc cleanup.
2009-08-16 17:14:21 +09:00
Diva Canto
1bbf06405c
Changed FromAssetID to FromItemID
2009-08-15 09:36:45 -07:00
Diva Canto
ea940d98f9
Added ToXml2() to ISceneObject, so that components other than regions can use this abstraction.
2009-08-06 16:41:24 -07:00
Melanie
17bdc45c5c
Add plumbing for the SceneObjectDeleter to wait for the script engine to
...
allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
2009-08-04 03:17:13 +01:00
lbsa71
169a353cca
* minor ccc
2009-07-24 06:59:27 +00:00
Teravus Ovares
bb4b81d70f
* patch from jonc
...
* Fixes scaling a group in some situations.
* fixes mantis #3886
* Thanks jonc!
2009-07-17 21:32:35 +00:00
MW
acea31518b
fixed the bug where changing the rotation of a selection of prims in a linkset, made each of those prims rotate around its own centre rather than around the geometric centre of the selection like they should do (and like the client expects).
...
This involved adding a new OnUpdatePrimSingleRotationPosition event to IClientAPI so that we can get the changed position from the client.
Btw adding new events to IClientAPI is really tedious where you have to copy the change across to at least 5 or 6 other files.
[Note this doesn't fix the bug where any rotation changes to the root prim (but not the whole linkset) cause rotation errors on the child prims.]
2009-07-17 14:58:54 +00:00
MW
a266e6dc4b
Bounding Box/find rez from inventory point code now seems to be working correctly.
...
So next step is to clean up that code and wait for bug reports.
2009-07-15 19:46:32 +00:00
MW
856d5f4375
Yet more work on fixing the boundingbox code.
2009-07-15 18:55:28 +00:00
MW
3a72531e4c
More fixing of the boundingbox code.
...
Still more work needed to get linksets to rezz correctly (not in the ground)
2009-07-15 10:42:27 +00:00
MW
08d4fffdfd
A attemp to fix the boundingBox code that I committed the other day.
2009-07-15 10:26:12 +00:00
Melanie Thielker
fb4067c844
A stab at implementing llSetDamage. Not persistent.
2009-07-15 00:10:01 +00:00
MW
58b05e5cbe
A commit to retrigger panda
2009-07-13 15:14:44 +00:00
MW
c4318136ba
Changed it so that when rezzing prims from inventory, a bounding box containing all the prims in the group is used for working out the rezzing point. So that none of the child prims are underground. Or at least thats what it is meant to do, still needs more testing and there are still some issues with link sets getting rezzed too high above the ground/target prim.
2009-07-13 14:42:46 +00:00
Charles Krinke
8344df886b
Thank you kindly, AnakinLohner, for a patch that addresses:
...
The patch included updates the root and child prims' AttchedAvatar
with the right UUID. It also cleans the AttachedAvatar properties
for the root and child prims on Drop and Detach
2009-07-02 16:02:18 +00:00
Sean Dague
49f89dd758
make methods surounding backup virtual so they could be override for server side created objects
2009-07-02 12:00:39 +00:00
Jeff Ames
840de6c036
Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt.
2009-06-01 06:37:14 +00:00
Dahlia Trimble
179724b4fc
some clean up of sculpt map caching code
...
remove a redundant debug message
2009-05-29 08:57:10 +00:00
Dahlia Trimble
05cbf0b502
reinstate a hopefully more robust experimental decoded sculpt map caching scheme
2009-05-29 06:50:15 +00:00
Dahlia Trimble
1609e7eac0
disable sculpt map caching until a better method of avoiding asset requests can be found
2009-05-29 05:11:50 +00:00
Dahlia Trimble
db4f8d1298
Experimental decoded sculpt map caching
2009-05-29 02:46:35 +00:00
diva
5e4fc6e91e
Heart surgery on asset service code bits. Affects OpenSim.ini configuration -- please see the example. Affects region servers only.
...
This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing.
Known problems:
* HG asset transfers are borked for now
* missing texture is missing
* 3 unit tests commented out for now
2009-05-15 05:00:25 +00:00
Justin Clarke Casey
303aa4b65e
* refactor: move bottom part of 'xml2' serializaton to separate class
2009-05-14 18:08:54 +00:00
Justin Clarke Casey
d10b5e29bc
* refactor: break some of xml2 serialization out of sog
2009-05-14 16:33:04 +00:00