* 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
Addresses Mantis #3381
The current implementation works as expected if the object has no rotation or
only rotation around the Z axis; you can spin the object left or right (around
the world Z axis).
It works a little unexpectedly if the object has a non-Z-axis rotation; in this
case the body is spun about its local Z axis, not the world Z-axis. (But SL
also behaves oddly with a spin on an arbitrarily rotated object.)
* Add cursory integration with script engine.
* LLMoveToTarget, LLSetBouyancy, LLSetStatus (Physical only), LLApplyImpulse, LLApplyTorque, LLPushObject.. etc.
* Still missing linked physical active and LLSetStatus with an axis lock.
* Enables border crossings when using the BulletDotNETPlugin
* Enabled variable time steps in BulletDotNETPlugin
* Still no 'linked physical objects' yet
* Still no script engine integration
* Now, the 144 unit tests takes roughly as long time to run (16s on my laptop) that the 10 long running takes. The database tests takes forever.
* Feel free to run the unit tests as you code, and the rest before commit.
* Remaining inconsistent uuids (non dashed) are in region store for sqlite and mysql
* Migration of these will happen at a later date, unless someone else wants to do it
The attached patch implements osKey2Name and osName2Key
which converts between a UUID key for an avatar and
an avatar name and vice-versa.
osKey2Name is similar to llKey2Name except that it will work
even if the avatar being looked up is not in the same region
as the script.
* This allows you to utilize System.Drawing tools on textures within the region.
* Example: use System.Drawing.Bitmap to make your texture, then use Host.Graphics.SaveBitmap to make an asset from it in JPEG2K. You can edit (but not overwrite) existing textures using Host.Graphics.LoadBitmap.
* This makes MRM scripting ever so slightly more secure. If you have enforced Object Permissions enabled, it may be acceptable to enable MRM within your regions.
* Security bug reports on this feature are much appreciated (eg: anyone finding ways around this to execute a MRM as a basic user).
* Corrected issue with MRMs where it would attempt to overwrite an already loaded DLL. (and thus fail with cryptic UnauthorizedAccessException.)
* Made DrunkenTextAppreciationModule.cs MRM not crash with StackOverflowException
* Added some temporary logging to MRM World.*
* Avatar and Object now inherit from IEntity.
* Avatar.Position is now Avatar.WorldPosition to match IObject property.
* Implements event World.OnChat += delegate(IWorld sender, ChatEventArgs e);
* Optimizes SceneGraph - fetches on primitives via "GetGroupByPrim" wont search the entire list if the primitive is infact the root. (Core)
* Updates Test MRM.
* Notes: this requires heavy testing, it may cause new issues where LL have recycled agent block data for non-security purposes. It can be disabled on Line 4421 of LLClientView.cs by changing m_checkPackets to false.
* This represents approx 1/8th of the packets being checked.