aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-10-15* Removed some of the redundant broadcast functions in Scene and SceneGraph ↵John Hurliman4-56/+15
so it is clear who/what the broadcast is going to each time * Removed two redundant parameters from SceneObjectPart * Changed some code in terse update sending that was meant to work with references to work with value types (since Vector3 and Quaternion are structs) * Committing a preview of a new method for sending object updates efficiently (all commented out for now)
2009-10-14* Replaced (possibly broken?) math for calculating the unix timestamp in ↵John Hurliman3-6/+7
MySQLAssetData with Utils.DateTimeToUnixTime() * Disabled UpdateAccessTime() function since it was only writing zeros anyways. This gave me a significant performance improvement for startup times and avatar logins in standalone mode * Load attachments asynchronously so avatars with lots of attachments don't have to race the timeout clock to login
2009-10-14Setting changeY in border crossing.Diva Canto1-0/+1
2009-10-13Optimized heartbeat by calling Update() only on updated objects.Dan Lake3-73/+52
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* Fixes some prim crossings on megaregions with regions beyond the 512m markTeravus Ovares (Dan Olivares)1-21/+93
* There's a slight chance that this could cause a problem with regular prim crossings.. but hopefully not. Revert if it does.
2009-10-13* Consolidated adding / removing ClientManager IClientAPIs to two places in ↵John Hurliman1-0/+4
Scene * Added some missing implementations of IClientAPI.RemoteEndPoint * Added a ClientManager.Remove(UUID) overload * Removed a reference to a missing project from prebuild.xml
2009-10-13* Rewrote ClientManager to remove Lindenisms from OpenSim core, improve ↵John Hurliman2-4/+4
performance by removing locks, and replace LLUDPClientCollection * Removed the confusing (and LL-specific) shutdowncircuit parameter from IClientAPI.Close() * Updated the LLUDP code to only use ClientManager instead of trying to synchronize ClientManager and m_clients * Remove clients asynchronously since it is a very slow operation (including a 2000ms sleep)
2009-10-13* Unregister event handlers in LLUDPServer when a client logs out and ↵John Hurliman4-20/+28
disconnects * Move ViewerEffect handling to Scene.PacketHandlers * Removing the unused CloseAllAgents function * Trimming ClientManager down. This class needs to be reworked to keep LLUDP circuit codes from intruding into the abstract OpenSim core code
2009-10-12* Fixes http://opensimulator.org/mantis/view.php?id=4225Diva Canto3-54/+79
* Fixes http://opensimulator.org/mantis/view.php?id=3959 * Allows for viewing inventory textures outside home grid
2009-10-11Fixed tree crossing. This will alleviateDiva Canto1-56/+54
http://opensimulator.org/mantis/view.php?id=4163
2009-10-10* comment out the velocity test, using updates every 500 ms as set in ↵Teravus Ovares (Dan Olivares)1-2/+4
ScenePresence.AddToPhysicalScene. * This causes time to be counted in ODECharacter and, when a collision occurs, the physics scene will report the collisions only if the the difference of last time it reported the collisions from now was more then the set ms. * This is cool because the time accrues while collisions are not taking place and when they do take place again, you get an immediate update.
2009-10-10* Make ODECharacter respect the scene's requested collision update timeTeravus Ovares (Dan Olivares)1-1/+1
* Set the Scene collision update time to 500 ms
2009-10-10Adjust velocity threshold for triggering flailing. Thanks to KittoFlora for ↵dahlia1-1/+1
researching this.
2009-10-10* Fix incorrect math on the Velocity check in PhysicsCollisionUpdate. This ↵Teravus Ovares (Dan Olivares)1-1/+1
may reduce avatar flailing.
2009-10-10* Move the 'On Collision Update Movement Animation' routine to above the ↵Teravus Ovares (Dan Olivares)1-3/+8
'm_invulnerable' test. It doesn't fix anything but it should really be there anyway.
2009-10-09Change the backup thread to run on a BackgroundWorker instead of a Thread. I ↵John Hurliman1-4/+4
don't have an explanation, but this seems to stop a slow but steady memory leak I was experiencing
2009-10-06A small change in FetchInventoryDescendantsCAPS.Diva Canto1-1/+2
2009-10-06Uncommented log message on CAPs FetchInventoryDescendantsDiva Canto1-3/+3
2009-10-07Uncommented log message on CAPs FetchInventoryDescendantsDiva Canto1-3/+3
2009-10-06* One more debug message on FetchInventoryDescendantsDiva Canto1-0/+1
* More streams close on finally
2009-10-07Revert "Rewrote parts of the code that were double-locking different ↵Melanie2-43/+29
objects. This is about half of the code base reviewed." This reverts commit e992ca025571a891333a57012c2cd4419b6581e5.
2009-10-07Revert "Merging in diva's locking fixes"Melanie2-43/+29
This reverts commit 832cc685138b2244529f10b54b373c34adb4a633.
2009-10-06Rewrote parts of the code that were double-locking different objects. This ↵Diva Canto2-29/+43
is about half of the code base reviewed.
2009-10-06Added a debug line for nebadonJohn Hurliman1-0/+3
2009-10-06Commenting the DEBUG code that I added yesterday, because it's causing mono ↵Diva Canto1-6/+6
to fail with https://bugzilla.novell.com/show_bug.cgi?id=538854
2009-10-06Lock the heartbeat against multiple invocations. May prevent deadlocks and/orMelanie1-0/+10
runaway thread use
2009-10-06Fixing a few compile errors in the previous commitJohn Hurliman1-2/+0
2009-10-05Correction on the DEBUG code.Diva Canto1-4/+3
2009-10-05#if DEBBUG code for monitoring the ThreadPool.Diva Canto1-0/+7
2009-10-04disable physics actors for flexible primsdahlia1-3/+4
2009-10-02* Creates Util.UTF8 and switches some references of Encoding.UTF8 to ↵John Hurliman2-2/+2
Util.UTF8 (not all references were switched since not all OpenSim libraries reference OpenSim.Framework) * Shrinks the largest in-memory object, the LLRAW.HeightmapLookupValue struct (only used for exporting to LLRAW terrain files), to the minimum possible size. This seems to have the odd side effect of cutting the size of the two double[256,256] terrain objects in half. Possibly an alignment optimization?
2009-10-02- cleaning up LandData/ILandObject capitalization issuesdr scofield (aka dirk husemann)2-15/+15
- adding LandDataSerializer to OAR mechanics
2009-10-01Added messages to assertions in the failing tests, so that we know which ↵Diva Canto1-12/+19
ones are failing.
2009-10-02Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization ↵Melanie3-36/+16
of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity" This reverts commit 39842eb4af3b5a8c52d56c0f7f05ad54f0651bb0.
2009-09-30Removed an innefficent List.Contains lookup from UpdateQueueJames J Greensky1-5/+4
Changed the underlying data structure used to detected duplicate in OpenSim.Region.Framework.Scenes.Types.UpdateQueue from a List to a Dictionary.
2009-10-01Formatting cleanup.Jeff Ames8-13/+13
2009-09-30* Change the signature of the agent set appearance callback to prevent ↵John Hurliman1-7/+32
unnecessary serialization/deserialization of TextureEntry objects and allow TextureEntry to be inspected for missing bakes * Inspect incoming TextureEntry updates for bakes that do not exist on the simulator and request the missing textures * Properly handle appearance updates that do not have a TextureEntry set
2009-09-30Remove predecode-j2k and it's assoaciated logicMelanie1-122/+0
2009-09-30Attempting to improve the robustness of texture decoding by always ignoring ↵John Hurliman1-1/+1
LayerInfo.End values and creating guessed default layer boundaries on failed decodes Changed a noisy J2K decode log message from Info to Debug Replacing openjpeg-dotnet decoding with managed CSJ2K decoding. Should be much more reliable, faster, and use less memory * Re-added openjpeg-dotnet files since they are used elsewhere in OpenSim * Updated prebuild.xml with a reference to CSJ2K * Renamed IJ2KDecoder and J2KDecoder member names to follow standard naming conventions * Removed j2kDecodeCache cruft and replaced it with the OpenSim cache system * Rewrote the default layer boundary algorithm to use percentages instead of an exponent * Switched from an infinite in-memory cache to an expiring cache (10 minute timeout) * Slightly quieted logging errors for failed texture decodes
2009-10-01Formatting cleanup.Jeff Ames27-124/+124
2009-09-29 This fix addresses the problem where phantom objects do notAlan M Webb1-1/+1
always behave like they are phantom, and llVolumeDetect seems to operate in a random fashion. Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-29A little hack to see if this fixes the problems with ~20% of SOG's becoming ↵Diva Canto2-0/+22
phantom after an import to megaregions.
2009-09-28I think I have fixed something that was broken in the scene setup (tests) ↵Diva Canto1-3/+4
and that needs to be reflected in all other services setups. But the teleport test still doesn't work. Commenting it for now.
2009-09-28Improved the Local grid connector to fetch data from the DB when it doesn't ↵Diva Canto1-3/+4
find it in the cache. Commented out the Standalone teleport test because it's failing, and the scene setup is very confusing. I suspect it may be wrong -- the connectors-as-ISharedRegionModules are being instantiated several times when there are several scenes.
2009-09-29Add copyright header. Formatting cleanup.Jeff Ames1-1/+1
2009-09-27Neighbours cache working.Diva Canto2-3/+5
2009-09-27Unpacking the mess with OtherRegionUp, so we can have a real cache of the ↵Diva Canto5-95/+74
neighbours in the grid service modules.
2009-09-26Moved all HG1 operations to HGGridConnector.cs and ↵Diva Canto2-23/+29
HypergridServerConnector.cs/HypergridServiceConnector.cs, away from Region.Communications and HGNetworkServersInfo. Fixed small bugs with hyperlinked regions' map positions.
2009-09-26Fixed MapBlocks bug, wrong order of arguments. First version that seems ↵Diva Canto1-7/+1
completely functional. Also fixed the notification of the message server in standalone -- that server doesn't usually exist.
2009-09-26First pass at the heart surgery for grid services. Compiles and runs ↵Diva Canto6-455/+181
minimally. A few bugs to catch now.