[Opensim-dev] another little can of worms: attachments :-)

Dalien Talbot dalienta at gmail.com
Thu Jan 3 00:51:01 UTC 2008


hi all,

first of all - happy 2008! as I've had a bit of time today, I decided to dig
into the intrinsics of attaching stuff. The AttachObject method which is
somewhere in the code is incorrect -  the packet it tries to send to client
is originated by the client in the first place, the command to "attach
stuff" to the viewer is the ObjectUpdate packet with not one but two
elements of ObjectData - the first one being the one for Avatar, and the
second one being for the Thing being attached (suspected: root prim :).
(there's also "attach multiple prims" which i did not dig yet).

The result of these experiments is a super ugly proof of concept which is
not worth committing, but which I think shows up a problem... :
http://opensim.be/dalien/attachment-proof-of-concept.patch

Actually, two problems:

1) attachments != sceneobjects (I think) - well, at least they should not be
saved into backups, etc... (and not sure how they should interact with the
ODE & all - I think they should not)

For the "wear from the ground" it is less of a problem - but for wearing
from inventory (which i did not write anywhere beyond pointless junk) -
reusing the existing rezz code might be a plus - otherwise there is a loooot
of copypaste.


2) the ObjectUpdate needs to combine low-level update for both Avatar and
Prim - which with layered approach (packet sending stuff being in lower
layer relative to InnerScene) will result in a function with a bazillion
parameters.

A lesser evil that I was thinking about is to expose the "partial builder"
functions on the IClientAPI level, which would return parts of the packets,
which could subsequently passed to other IClientAPI packet building
functions.

Thoughts ?

/d
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080103/881c09b4/attachment-0001.html>


More information about the Opensim-dev mailing list