So, since I’ve encountered a few situations where people haven’t been aware of certain new features or fixes (since us developers are in the habit of sometimes only writing this in the subversion logs), I thought I’d start writing a weekly summary of the technical activity. Most of this is culled from svn updates, so I might not actually know all that much about the change in question. As these changes are hot off the keyboard, there are also no guarantees that they actually work yet 🙂 These entries are just the highlights – not all changes and fixes are included.
I’ve no idea how long I’m going to keep this up, but I’m going to try 🙂
Anyway, on with the show! This week in OpenSim…
- I implemented code to limit incoming texture requests. For some time now we’ve had an issue (which shows up on osgrid) where memory leaks away when many clients are logged on until the simulator crashes. I believe this is primarily due to the fact that on a heavily loaded sim, we don’t respond to client texture requests within the client’s timeout and retry period. When the client retries the request, we add another load of texture packets on to the output queue. As a temporary solution, we now limit the number of requests that can be made for the same texture, dropping extra requests after a predetermined number. This is crude, but appears to work for now and can be improved later.
- Alondria implemented the lsl functions llLoopSound(), llStopSound(), llAdjustSoundVolume(), llRemoveFromLandBanList, llRemoveFromLandPassList, llAddToLandBanList, llAddToLandPassList, llResetLandPassList, llResetLandBanList, llGetParcelPrimOwners(), llGetInventoryNumber(), llGetInventoryType(), llGetInventoryCreator(), llGetInventoryPermMask(), llGetInventoryNumber(). Go Alondria!
- Teravus fixed up llApplyImpulse()
- Teravus added partial support for llMoveToTarget() and llStopMoveToTarget() to the ODE physics engine.
- Michael Osias submitted a patch to fix multiple llListens and implemented llMessageLinked()
- Teravus implemented Oriented Bounding Box raytracing. Now you can rez one prim on top of another!
- I implemented proper CAPS seed hand off on region crossings. Essentially, this means CAPS functions (which includes script and notecard saving) should be available on non-home regions on a grid.
- I fixed initial inventory skeleton passing and some async inventory issues. Essentially, this means that folders deeper than the first level should now work better. Also, the texture picker in the edit prim dialog should now work (again).
Phew, that was more stuff than I thought.
— justincc (Justin Clark-Casey)