Hello,

I am a bit confused about the way avatars are supposed to work. This seems to be handeled inconsistently across the VOS code. Maybe someone could explain the correct use to me.

The most simple case is mesh, which just creates a local vobject and tries to add this to the remote site sector. I believe this is maybe a remnant of happier ACL-free days, since inserting children is usually forbidden, and indeed fails when trying

$ ./mesh -a kao vip://interreality.org/world
permission to insert vip://alu.mi.fu-berlin.de:4231/kao denied

The most sophisticated (and working) avatar is that of Ter'angreal. It *requires* the remote sector to be a compound factory, and uses this to create remote puppet avatar. The step of inserting the avatar into the sector seems to be unnecessary, apparenty the factory already does it (?), however the avatar code has a failsafe (?) for this:

avatar.cc:420
    try {
        avatar->findParent(sector);
    } catch(NoSuchObjectError) {
        sector->insertChild(-1, getNick(), avatar);
        goToViewpoint("default-viewpoint");
    }

What does Ter'angreal do when the remote sector is not a compound factory? Use a local pseudo-avatar? Try to construct it manually?

Another point that confuses me here is the fact that the puppet avatar does not have a misc:nick property at the beginning, but this is added only when setNick() is called. Is it really such a good idea to expect the remote (proxy) vobjects to fix the local vobjects infrastructure? IMHO such "intrinsic" properties should be added on local creation... Otherwise, access control will either hinder this kind of repair, or must be set to be wide open and thus becomes useless. In any case, this seems to me like a rather strange behavior, a bit like saying, "Sure, I have a phone, you can call me, but you have to erect some phone masts and lay some wires first"... But changing this is probably something for 0.24.

Regards,
Karsten Otto (kao)
_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d

Reply via email to