Commit Graph

70 Commits (4b75353cbf50de3cae4c48ec90b55f30c1612c92)

Author SHA1 Message Date
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
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
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 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
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
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
Justin Clarke Casey 567e0d032c * break out 'xml2' deserialization from sog 2009-05-08 19:18:37 +00:00
Justin Clarke Casey 9f39a490b5 * refactor: break out sog original xml serialization to a separate class 2009-05-08 18:05:54 +00:00
Justin Clarke Casey 032e3b49eb * refactor: Break out original xml object serialization into a separate class
* No functional change
2009-05-08 15:47:59 +00:00
Homer Horwitz 7e731b024a Allow temp-on-rez prims to take part in physics (e.g. temp-on-rez bullets)
This makes re-rezzed temp-on-rez objects visible, too. Fixes Mantis #3405
2009-05-05 19:44:19 +00:00
Melanie Thielker d604cd284e Again, completely revamp the unlink code to finally allow unlinking
arbitrary combinations of root and child prims from one or multiple
link sets. Please test throughly and consider things UNSTABLE until
this is proven out.
2009-04-29 15:54:16 +00:00
Dr Scofield 07b435b2b9 From: Alan Webb <alan_webb@us.ibm.com>
Cleanup tabs and spacing.
2009-04-23 14:38:55 +00:00
Dr Scofield 7dbcf0570f From: Alan Webb <alan_webb@us.ibm.com>
Changes to enable script state persistence across non-restart
serialization situations (inventory/OAR/attachments)

Also fixing test cases for OAR and IAR so they don't barf with the new code.
2009-04-22 18:09:55 +00:00
Charles Krinke 84602c9480 Thank you kindly, Marcus Llewellyn, for a patch that:
An attachment with the physical checkbox checked will not allow the 
phantom checkbox to be cleared. This interfers with scripting 
functions such as llMoveToTarget(), which won't work while an object 
is phantom. If the prim containing the script is rezzed to the ground, 
it will then allow the phantom checlbox to be cleared, and the script 
works as expected.
2009-04-22 14:44:19 +00:00
Jeff Ames cad0aab793 Formatting cleanup. 2009-04-14 11:38:33 +00:00