aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLImageManager.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-06-25From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield1-44/+37
This change moves texture send processing out of the main packet processing loop and moves it to a timer based processing cycle. Texture packets are sent to the client consistently over time. The timer is discontinued whenever there are no textures to transmit. The behavior of the texture sending mechanism is controlled by three variables in the LLCLient section of the config file: [1] TextureRequestRate (mS) determines how many times per second texture send processing will occur. The default is 100mS. [2] TextureSendLimit determines how many different textures will be considered on each cycle. Textures are selected by priority. The old mechanism specified a value of 10 for this parameter and this is the default [3] TextureDataLimit determines how many packets will be sent for each of the selected textures. The old mechanism specified a value of 5, so this is the default. So the net effect is that TextureSendLimit*TextureDataLimit packets will be sent every TextureRequestRate mS. Once we have gotten a reasonable feeling for how these parameters affect overall processing, it would be nice to autonmically manage these values using information about the current status of the region and network. Note that this also resolves the pathologcal problem that previously existed which was that a seated avatar generated very few in-bound packets (theoretically) and would therefore be the least able to retrieve the images being displayed by a projector script.
2009-06-01Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames1-1/+1
LICENSE.txt.
2009-05-15Heart surgery on asset service code bits. Affects OpenSim.ini configuration ↵diva1-3/+4
-- 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-04-29fixes exception thrown when client session is shutdown whileDr Scofield1-0/+2
packethandler still active
2009-04-20It is possible that apacket is recieved before the clint stack is fully ready.Melanie Thielker1-0/+2
This causes a nullref we need to catch here.
2009-04-18Thank you kindly, RemedyTomm for a patch that:Charles Krinke1-51/+102
Following feedback from 0003440, i've made some changes to the new texture pipeline to optimise performance. The changes are: - Fixed a math issue where a small percentage of images with a certain size (on the packet boundary) would not have their final data delivered. This issue has been present since pre- 0003440 - It was suggested that a discardlevel of -1 and a prioriy of 0 meant to abandon the transfer, this is incorrect and caused some textures to clog. - The texture throttle blocking queue is now only filled in relation to the actual throttle amount.. i.e, on a connection throttled to 300k, only twenty packets will be placed in the queue at a time, on a larger connection it will be much more. This is to balance responsiveness to requests and speed, and to minimise wasted packets. - The engine now keeps track of the number of pending textures, and the stack will not be walked if there's no textures pending, saving CPU. Textures are only considered "pending" when they've already been decoded. - As part of the above, some textures may receive twice as much data per cycle if the number of pending textures is below the cycle threshold, this should prevent loading from slowing down when there are fewer textures in the queue.
2009-04-14* Commit a variety of fixes to bugs discovered while trying to fix the NaN ↵Teravus Ovares1-0/+10
singularity. * WebStatsModule doesn't crash on restart. GodsModule doesn't crash when there is no Dialog Module. LLUDPServer doesn't crash when the Operation was Aborted. * ODEPlugin does 'Almost NaN' sanity checks. * ODEPlugin sacrifices NaN avatars to the NaN black hole to appease it and keep it from sucking the rest of the world in.
2009-04-13scream out a bit warning if we failed to set default imageSean Dague1-0/+2
2009-04-13put J2KImage into it's own file, please no doubling up on classes inSean Dague1-316/+0
files
2009-04-10* Patch from RemedyTomm Mantis 3440Teravus Ovares1-507/+410
* Revamps the server side texture pipeline * Textures should load faster, get clogged less, and be less blurry * Minor tweak to ensure the outgoing texture throttle stays private. * Fixes mantis 3440
2009-02-22Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:Charles Krinke1-7/+11
* Added log4net dependency to physxplugin in prebuild.xml. * Added missing m_log fields to classes. * Replaced Console.WriteLine with appropriate m_log.Xxxx * Tested that nant test target runs succesfully. * Tested that local opensim sandbox starts up without errors.
2009-02-17- remove the Metadata property from AssetBase and return all previousMike Mazur1-1/+1
properties as before - prefix private variables with m_ in AssetBase.cs - related to Mantis #3122, as mentioned in https://lists.berlios.de/pipermail/opensim-dev/2009-February/005088.html - all services will likely need to be upgraded after this commit
2009-02-13* Apply http://opensimulator.org/mantis/view.php?id=3149Justin Clarke Casey1-14/+2
* If the texture does not contain any discard levels the last image packet was not sent * Thanks Snowdrop
2009-02-13* refactor: Move export map function to world map module from sceneJustin Clarke Casey1-6/+0
2009-02-12* optimized usings.lbsa711-5/+3
2009-02-09From Alan Webb <awebb@linux.vnet.ibm.com>Sean Dague1-2/+2
These changes replace all direct references to the AssetCache with IAssetCache. There is no change to functionality. Everything works as before. This is laying the groundwork for making it possible to register alternative asset caching mechanisms without disrupting other parts of OpenSim or their dependencies upon AssetCache functionality.
2009-02-06This changeset is the step 1 of 2 in refactoringDr Scofield1-1/+1
OpenSim.Region.Environment into a "framework" part and a modules only part. This first changeset refactors OpenSim.Region.Environment.Scenes, OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region modules in OpenSim.Region.Environment. The next step will be to move region modules up from OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and then sort out which modules are really core modules and which should move out to forge. I've been very careful to NOT BREAK anything. i hope i've succeeded. as this is the work of a whole week i hope i managed to keep track with the applied patches of the last week --- could any of you that did check in stuff have a look at whether it survived? thx!
2009-02-04- add OpenSim.Framework.AssetMetadata class. AssetBase is now composed of itMike Mazur1-26/+26
- trim trailing whitespace
2009-01-25* Adds console command, 'predecode-j2k <number of threads>' to load all of ↵Teravus Ovares1-1/+13
the texture assets from the scene and decode the j2k layer data to cache. The work is split between the number of threads you specify. A good number of threads value is the number of cores on your machine minus 1. * Increases the number of ImageDataPackets we send per PriorityQueue pop and tweak it so that the number of packets is ( (2 * decode level) + 1 ) * 2, and (((2 * (5-decode level)) + 1) * 2). The first one sends more data for low quality textures, the second one sends more data for high quality textures.
2009-01-22* Remove a few unnecessary locks to try and prevent lock contention in ↵Teravus Ovares1-7/+7
LLImageManager
2009-01-19* Another image packet edge case. Thanks nebadon for printing a log of itTeravus Ovares1-1/+20
2009-01-19* Set SVN PropertiesTeravus Ovares1-664/+664
2009-01-19* Progressive texture patch + PriorityQueue put into the LLClient namespace.Teravus Ovares1-0/+664
* Updates LibOMV to r2362