User:Zero Linden/Office Hours/2008 September 18

From Second Life Wiki
< User:Zero Linden/Office Hours
Revision as of 11:13, 18 September 2008 by Saijanai Kuhn (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
  • [8:55] Saijanai Kuhn: Good Morning Teacher
  • [8:55] FWord Utorid: crap, zero is here, hide the contraband
  • [8:55] Morgaine Dinova: Hiya Zero :-)
  • [8:55] Zero Linden: oy vey - what a morning
  • [8:55] Morgaine Dinova: puts away the joint
  • [8:55] Squirrel Wood: out of coffee?
  • [8:55] Zero Linden: sorry - the kids really didn't want to get off to school this morning
  • [8:55] Rex Cronon: hello zero
  • [8:55] Zero Linden: well all
  • [8:55] FWord Utorid: replace them with clones that love school
  • [8:55] Saijanai Kuhn: and we were thinking was an emergency meeting at LL
  • [8:55] Goldie Katsu: Hello Zero.
  • [8:55] Morgaine Dinova: Bring the school to them.
  • [8:56] Zero Linden: well - I would only I have to work...
  • [8:56] Squirrel Wood: threaten them with housework chores and they will be off to school in no time ^^
  • [8:56] Morgaine Dinova: Haha Squirrel :-)
  • [8:56] Zero Linden: nope - just emergency kid wrangling
  • [8:56] Uchikina Rotaru: *giggles*
  • [8:56] Zero Linden: so -
  • [8:56] Zero Linden: what's up?
  • [8:56] FWord Utorid: we were hoping you would push the button that makes things better
  • [8:57] Goldie Katsu: a plane orthog...
  • [8:57] Goldie Katsu: um..sorry wrong definition.
  • [8:57] Zha Ewry: oh Look, a Zero
  • [8:57] Zha Ewry: putrs away her roman numerals
  • [8:57] Goldie Katsu: giggles
  • [8:57] Saijanai Kuhn: Vector or Scalar?
  • [8:58] GoodCode Writer: Nothing
  • [8:58] Zero Linden: soooooooooooo
  • [8:58] Saijanai Kuhn: ah, Null
  • [8:58] Goldie Katsu: I think we were stumped for agenda items
  • [8:58] Morgaine Dinova: Agenda items?
  • [8:58] FWord Utorid: ok. someone needs to come up with something controversial so there's a point to all of us staring at zero
  • [8:58] Zha Ewry: We have leftovers in the agenda fridge
  • [8:58] Saijanai Kuhn: LL lets you come to work in your PJ's?
  • [8:58] Morgaine Dinova: What have we never covered on infrastructure?
  • [8:59] Zero Linden: Okay - how'z'bout: "I thing we should switch the transport from HTTP to SMTP -- it is more widely implemented and has a longer track record."
  • [8:59] Zero Linden: ducks
  • [8:59] Morgaine Dinova: LOL
  • [8:59] Uchikina Rotaru: *giggles*
  • [8:59] FWord Utorid: yes, if it has initials, it's approved.
  • [8:59] Goldie Katsu: can we use the old sendmail config file format for preference configuration?
  • [8:59] Rex Cronon: isthe server source code ever going to be open source:)
  • [8:59] Zha Ewry: goes and looks for the real time implementaion of SMTP she did
  • [8:59] Morgaine Dinova: OGP over Carrier Pidgen
  • [9:00] Saijanai Kuhn: goes and looks up SMTP
  • [9:00] FWord Utorid: i want to double the size of an opensim simulator
  • [9:00] Zha Ewry: Simple Mail Transfer Protocol
  • [9:00] Goldie Katsu: although maybe that would be best for routing packets
  • [9:00] Saijanai Kuhn: ah, OK
  • [9:00] GoodCode Writer: Simple Mail Transfer Protocol?
  • [9:00] FWord Utorid: sai, simple male testosterone printer.
  • [9:01] Zha Ewry: we had some leftotvers from Tuesaday, didn't we?
  • [9:01] FWord Utorid: but seriously, i would like an opensim that is 4096^3
  • [9:01] Zha Ewry: Teravus and domains and tp?
  • [9:01] Twisted Laws: that would be changing to an always connected protocol or increase traffic, i'd think
  • [9:01] Goldie Katsu: looks at the corn chips
  • [9:01] Zha Ewry: Fword, that's 90% biased client side, I think. The client has deep assumptions abotu the shape of sims
  • [9:02] Morgaine Dinova: I have an infrastrure topic, that Burhop would be interested in. How is OGP going to handle prim types extensions?
  • [9:02] GoodCode Writer: I would like one sim for the whole planet but umm who not
  • [9:02] Zero Linden: I think we decided to wait until Tuesday for that - as Whump wanted to be in on it and he can't be here today
  • [9:02] Zha Ewry: aah
  • [9:02] Zha Ewry: okies
  • [9:02] Teravus Ousley: right
  • [9:02] Zha Ewry: double wrapes the leftovers and puts them back in the frdige
  • [9:02] Zero Linden: well - this begs the question - how are we going to get assets between domains
  • [9:02] Saijanai Kuhn: is eating leftover subway for breakfast
  • [9:02] Zha Ewry: Well..
  • [9:03] Zha Ewry: The same way we get them out of asset servers in general, with added trust issues
  • [9:03] Zero Linden: never mind about permissions --- we'll deal with that seperately - but once domain x has decided to give domain y an asset - how...
  • [9:03] Saijanai Kuhn: ImprovedInstantMessages between Domains
  • [9:03] Zha Ewry: ahhh
  • [9:03] Zero Linden: presumably x is going to give y a URL (cap?) to the asset
  • [9:03] Zha Ewry: is this how do we change it's underyling URL?
  • [9:03] Squirrel Wood: here is your asset *shove* ?
  • [9:03] Zero Linden: and then y is going to do a "bog normal" GET on it
  • [9:03] Zha Ewry: If we really, want to move it
  • [9:03] Rex Cronon: the same way u r giving them to a viewer
  • [9:03] Zha Ewry: or do you mean, get a copy?
  • [9:03] Zero Linden: well - i didn't mean "move" - that wouldn't be rest, now would it
  • [9:04] Zha Ewry: Thus the new URL questoin
  • [9:04] Zha Ewry: if you mean get a copy of the state...
  • [9:04] Zero Linden: I meant - get representation of the state, eh?
  • [9:04] Morgaine Dinova: I think the question needs some elaboration
  • [9:04] Zha Ewry: that's REST, but...
  • [9:04] Zha Ewry: Ahhh
  • [9:04] Zero Linden: So - let's look at a scenario in some detail
  • [9:04] Zha Ewry: get is so very ovberloaded
  • [9:04] Zha Ewry: so.. get, as in fetch a copy of the current state
  • [9:05] Zha Ewry: (and that begs the quyestion of what you do with it, once you have it, and if the old state becomes stale at that moemnt)
  • [9:05] Zero Linden: I, Zero Linden, and logged into the SL Agent Domain (SLAD) and TP to, say, UC Berkeley's Virtual Camups (UCBRD)
  • [9:05] Scooter Back: if the tunnel were compressed, I don't think it would be too terribly overloaded
  • [9:06] Zero Linden: And - I open my inventory (communicated from SLAD to me) and pick and item and rez it on the ground in Sproul Plaza
  • [9:06] Sheryl Mimulus: would a p2p-esque solution work? I mean I assume that visitors to the same sim would probably require similar assets
  • [9:07] Twisted Laws: smtp could allow things to work other than instant real time, sorta queued and request not have to be tied to response timing, so it could be useful
  • [9:07] Zha Ewry: Not realy, Sheryl, as the asset is't really coming from a peer, but from an asset server
  • [9:07] Zero Linden: So, my viewer instructs SLAD to rez Thing (from my inventory) in the region Sproul Plaza (UCBRD)
  • [9:07] Teravus Ousley: Assets do not have 'state'.. they're immutable.. it's inventory items that have state.. permissions.. owners and what not.
  • [9:07] Teravus Ousley: .. right?
  • [9:07] Morgaine Dinova: I'm still looking for the problem, lol
  • [9:08] Zero Linden: SO - SLAD checks the perms I have on Thing (part of the inventory record), sees that I have the right to rez a copy, that the object has been marked by the creator for use in domains that agree to abide by the perms
  • [9:08] Zha Ewry: Not entirely clear Teravos
  • [9:08] FWord Utorid: i think it would be interesting if you could have localized assets, like keep your avatar and attachments local, and they would be uploaded wherever you went
  • [9:08] Zha Ewry: They have to now been split that way
  • [9:08] Zha Ewry: Its not at all clear that merely haing your inevntory protyect your assets rights management is goign to work
  • [9:08] Zero Linden: AND - SLAD checks that, it really tursts that Sproul Plaza is really part of the UCBRD, and that it knows who UCBRD is, and that it has an agreement with UCBRD that it trusts it to honor the perms
  • [9:08] Zero Linden: SO - getting all that out of the way -
  • [9:09] Zha Ewry: nods and mutters about one that's been signedb y lawyers, and says, "taken as solved"
  • [9:09] Morgaine Dinova: So 3 hours later, the object ress's. What's the problem? ;P
  • [9:09] Saijanai Kuhn: (hand-waiving aside)
  • [9:09] Sheryl Mimulus: lol
  • [9:09] Zero Linden: NOW, SLAD contacts Sproul Plaza (SP), and says: "Here, Zero would like to rez *this* at location x,y"
  • [9:09] Sheryl Mimulus: sounds like every asset needs to come with its own certificate..
  • [9:10] Zha Ewry: This being a URL
  • [9:10] Morgaine Dinova: Zero: notice that all your preamble so far is about perms :P
  • [9:10] Zero Linden: Now - *this* consists of two things: some inventory info (including perms that SLAD is expecting and trusts SP to honor)
  • [9:10] Scooter Back: permisions are the biggest factor in a trust
  • [9:10] Zero Linden: And --- tadad --- a URL of the asset -- which is really just a pointer to the defining bits
  • [9:10] Scooter Back: can't trust them if you suspect they'll break the rules
  • [9:11] Zha Ewry: Are the permissions bits just free floating? or are they a REST asset?
  • [9:11] Zha Ewry: actualy resource, better
  • [9:11] Zero Linden: Right, Scooter - but the question was about formats - and so, for this discussion, we are going to assume that we've gotten past the permissions check and that the relevant parties are all happy with the rez
  • [9:11] FWord Utorid: sounds like that would be interesting, unless it amounted to some bruteforceable url scheme
  • [9:11] Zha Ewry: are they a REST resource
  • [9:11] Morgaine Dinova: Yes, addressable
  • [9:11] Zero Linden: Well..... permissions are separate from the asset in current SL
  • [9:11] Zha Ewry: seperate, yes, but...
  • [9:11] Zha Ewry: are they adressable?
  • [9:12] Goldie Katsu: and does this dance occur for the textures on the objects?
  • [9:12] Zero Linden: for example, the creator of your hair, and you both have a pointer to the same asset (the bits that define the hair)
  • [9:12] Scooter Back: it should be no diferent than if a web page is downloading an image
  • [9:12] Goldie Katsu: Or does the object/asset have an overall permission?
  • [9:12] Zero Linden: but we each have spearate permissions bits for it
  • [9:12] Morgaine Dinova: Goldie: yes, because textures are addressable too
  • [9:12] Scooter Back: so the format should be compatible with the viewer, but uri based, right?
  • [9:12] Morgaine Dinova: Let's stop talking about perms, hehe
  • [9:12] FWord Utorid: well, everyone can see my hair, so a rezzed object would always have it's url exposed
  • [9:13] Sheryl Mimulus: uri addresses the issue of uniquely identifying an asset
  • [9:13] Zha Ewry: tosses Morgain some perm conditioner
  • [9:13] Zero Linden: Yes- assets refer to other assets via inventory references (except for texturs on faces... feh!)
  • [9:13] Teravus Ousley: Entities: Inventory Items, Assets. Properties of Inventory Items: InventorUUID, perms, name, description, owner, previous owner, creator Folder.. properties of asset.. Name UUID. Data type.. data.
  • [9:13] Goldie Katsu: ok we'll leave perms asside
  • [9:13] Morgaine Dinova: Zha: hahaha
  • [9:13] Zero Linden: so you can think of an invenotyr item as a sort of typed pointer
  • [9:13] Zha Ewry: nods at typed pointer
  • [9:13] Zha Ewry: REST and the web hates typed pointers
  • [9:13] Zero Linden: like a "struct foo *" vs. "const struct foo *"
  • [9:13] FWord Utorid: i pity the foo
  • [9:14] Zero Linden: same pointer, same bits, but different permissions
  • [9:14] Zha Ewry: (every attempt to wedge them on, ends up ugly)
  • [9:14] Zero Linden: Zha - I don't think the "permissions" have an address, I think the "inventory item" does
  • [9:14] Morgaine Dinova: No typed pointers at the interface. Typed pointers are an artifact of typed languages. Your finger isn't typed, yet it points perfectly well.
  • [9:14] Zero Linden: but in the sample case
  • [9:14] Zha Ewry: I tend to agree, Zero
  • [9:14] Zha Ewry: Which is to say, that, the permsiosn plue some added info does
  • [9:15] Zha Ewry: so, you pass the remote region to URLs
  • [9:15] Zha Ewry: one for the bits
  • [9:15] Zero Linden: we don't want to give access to the inventory to SP -- we are asking SP to create a *new* item in it's simsate, with permsissions X, and asset bits Y
  • [9:15] Sheryl Mimulus: I still think perms need an address
  • [9:15] Zha Ewry: and one for the inventory item tounderstand how it shoudl be used
  • [9:15] FWord Utorid: i think it would be interesting if there was the possibility of seeing a sim without going to it
  • [9:15] Zha Ewry: and we're going to get a new URL for the rezzed item when we're done
  • [9:15] FWord Utorid: like, a 3d map overview
  • [9:16] Zero Linden: I think Zha, rather than passing a URL to the inventory -- we are just passing the perms requested as arguments to the new() call...
  • [9:16] Zero Linden: (excuse the C++ism...:-_
  • [9:16] Morgaine Dinova: I suggest you go for symmetry and make everything a first class REST noun, including perms. Otherwise you have exceptions all over the place.
  • [9:16] Zero Linden:  :-)
  • [9:16] Zha Ewry: if you just pass the attributes
  • [9:16] Zha Ewry: you end up very soapy, not very resty
  • [9:16] FWord Utorid: hmmm... soapy vs. resty
  • [9:17] Sheryl Mimulus: state :)
  • [9:17] Morgaine Dinova: Yep, it's a good way of thinking about it: "hide the soap" --> SOAP hides inner state
  • [9:17] Zero Linden: well - look - when we pass parameters to a REST call you must always decide if you are goign to pass the data or a reference to the data
  • [9:17] Zero Linden: for example:
  • [9:17] Zha Ewry: nods
  • [9:17] Zha Ewry: this is the age old quetoins of passing a pointer vs passing a structure
  • [9:18] Scooter Back: can someone IM me the acro for REST?
  • [9:18] Zero Linden: some-cap-to-a-object/prim-parameters can be called with { location: <some vector> }
  • [9:18] Morgaine Dinova: Pass by value, reference, or name.
  • [9:18] Zero Linden: or you could call it with { parameters_are_at: <some url> }
  • [9:18] Sheryl Mimulus: pointers, thats so ancient.. message passing might be better
  • [9:18] Zero Linden: I don't think we'd find value in pass by reference
  • [9:18] Goldie Katsu: eventually the data needs to be transferred
  • [9:19] Zero Linden: (never pass by name... no no no no...... we beat that to death in the 70s!!!!! )
  • [9:19] Morgaine Dinova: Hahaha, aye, complex semantics
  • [9:19] Zha Ewry: it does, the questoin, which is being thoght about, is do you pass it in the call or do you pass it seperately
  • [9:19] Zero Linden: oh - yes - ha! didn't mean that
  • [9:19] FWord Utorid: what? you are going to have an inventory name service?
  • [9:19] FWord Utorid: stuff://sai's%20stuff/sexy+beard+2/
  • [9:19] Zero Linden: on the other hand, when we set the texture, we find it more practical to pass a refernce to the texture rather than the jpeg stream as binary inline
  • [9:19] Scooter Back: if all objects are stored in a DB, wouldn't it be easier to pass object dimensions in a query string? then uri the textures?
  • [9:20] Zero Linden: the difference comes down to sharing
  • [9:20] Zero Linden: in the case of permsissions - we don't want to induce sharing
  • [9:20] Zha Ewry: The advantage of "rez URL to resource, URL to Inventory info"
  • [9:20] Zha Ewry: is that it lets the Inventory info be first class and less tied intoo the prorotcol
  • [9:20] Zha Ewry: We pay a cost in terms of an extra fetch tho
  • [9:20] Zero Linden: the SLAD is telling the SP region what permissions it wants it to use..... it isn't expecting SP to *share* the permissions of the inventory item in my inventory
  • [9:21] Zero Linden: though experiment: what happens if Zero edits the inventory BEFORE SP gets around to rezing it?
  • [9:21] Scooter Back: SP doesn't need to know what's in your inventory
  • [9:21] Zero Linden: ooops.... SLAD no longer knows what perms SP is going to use
  • [9:21] Zha Ewry: We're not gibg SP your invenoty
  • [9:21] Zero Linden: SO
  • [9:21] Zha Ewry: a cap pointing to it's state, or just its state
  • [9:21] Sheryl Mimulus: that extra cost is unavoidable unless you're saying the asset content (jpeg stream, wav, prim params) only come from one source
  • [9:22] Saijanai Kuhn: [1]
  • [9:22] Zero Linden: but then, Zha, when does SLAD reap that state?
  • [9:22] Scooter Back: ty saij
  • [9:22] Zero Linden: So - I think permissions are, in this case, like the position vector, in the other
  • [9:22] Zha Ewry: well, it can be a published idempoint resource, but.. it is tricky to konw when it can go away
  • [9:22] FWord Utorid: all stuff should come from the central stuff store, inside of the proprietary slave making machine which makes you work for the stuff
  • [9:23] Zha Ewry: The converse, is that, if you call out with a set of state
  • [9:23] Zero Linden: as for tying to the protocol --- remember perms are just an LLSD structure - they can be extended without breaking the protocol
  • [9:23] Scooter Back: if the object in your inventory were basically a stored procedure for the object in the db, the file would be small for the client, as the viewer of the owner would immediately rez the object, but the textures would still need to be downloaded
  • [9:23] Scooter Back: right?
  • [9:23] Zha Ewry: you *ought* to probably not let the client edit the perms until the rez. but.. hmmm
  • [9:23] FWord Utorid: because if stuff was free, people would be unhappy, so they have to be slaves for stuff
  • [9:24] Zero Linden: Er, scooter - objects in LL's code aren't stored in DBs -- and the OGP protocol tries to be agnostic about how things are stored
  • [9:24] Zero Linden: SO - it models almost everything as a HTTP request
  • [9:24] Zha Ewry: is brutally playing devils advocate here
  • [9:24] Scooter Back: wow, doesn't that make it slower?
  • [9:24] Zero Linden: and doing it very well, Zha.... :-)
  • [9:24] Zero Linden: Scooter? not at all.
  • [9:24] Scooter Back: ah
  • [9:24] FWord Utorid: when we have dvd discs that store 100 tb, do you think LL will make a monthly magazine of the asset store?
  • [9:25] Zha Ewry: So.. I think...
  • [9:25] Zha Ewry: with one or two concerns
  • [9:25] Zha Ewry: yes, pass, the state along
  • [9:25] Zero Linden: HTTP is nice - it is cacheable easily, it is very interoperable (like you're going to give a MySQL connection out to any visiting avatar? I think not!)
  • [9:25] Zero Linden: and it is very scalable
  • [9:25] Morgaine Dinova: You don't need to lock the perms, nor disallow perms editing during res'ing. All you need is the fetch of the perms WHEN NEEDED to be atomic. It's much less hassle, and less overhead.
  • [9:25] Zero Linden: Well - moving on... since the question was about formats.... :-)
  • [9:25] Saijanai Kuhn: FWord, I think a a DVD distro of all full perms assets could be useful for people who have gigantic harddrive caches and sofware to use it properly
  • [9:25] Zero Linden: NOW
  • [9:25] FWord Utorid: ok. so will this http transport for stuff ship out binary data, or xml structurs?
  • [9:26] Zha Ewry: content negottaied, FW
  • [9:26] Sheryl Mimulus: binary xml :)
  • [9:26] Zero Linden: SP has a URL (cap?) for fetching the bits that define the object (shape)
  • [9:26] Saijanai Kuhn: full perm including metaverse perms
  • [9:26] FWord Utorid: yick, binary html. plaintext is much prettier and compactable
  • [9:26] FWord Utorid: *xml
  • [9:27] Zha Ewry: (http content negotiation, lets us duck the questoin nicely,)
  • [9:27] Zero Linden: Since binary XML is not yet widely deployed (is it even ratified yet?)
  • [9:27] FWord Utorid: and yes, sai, i think it would be cool to get all the stuff once a month on a giant hd
  • [9:27] Sheryl Mimulus: fword, its inter-translatable.. xml's not efficient for data transfer, bin-xml's not readable :)
  • [9:27] Zero Linden: well stick to standard content negotiation and, for SL style constructive geometry, an LLSD of the object
  • [9:27] Zero Linden: (LLSD serialized into XML, or perhaps JSON if supported)
  • [9:28] FWord Utorid: json would be interesting, uses less data
  • [9:28] Zha Ewry: and, int he large, tjhe protocol care less, as long as it can be marked up in LLID
  • [9:28] Saijanai Kuhn: can the text presentation be used as its own serialization?
  • [9:28] Zero Linden: (and since this is HTTP --- we can have transfer encodings like gzip to make it all small -- smaller than binary XML actually!)
  • [9:28] Sheryl Mimulus: but to tie it to javascript...?
  • [9:28] Zero Linden: JSON, alas looses some type info
  • [9:28] FWord Utorid: yes, gzip is what i was thinking of when i was talking about using plaintext instead of binary xml
  • [9:29] Zero Linden: and no, Sheryl, JSON, despite its name, and bizarre character escaping, isn't actually tied to javascript at all
  • [9:29] Zha Ewry: (So at the base, we assume its extensible, and the current set of prims,a nd constrrcuvte geometry, is just a starting point in terms of protocol)
  • [9:29] Zero Linden: there are JSON readers and writers commonly available in all languages
  • [9:29] Morgaine Dinova: JSON's an order of magnitude faster, and nearly two in some cases. That may end up being crucial ... a world where you're still ressing an hour after TP is no use to anyone.
  • [9:29] FWord Utorid: morgaine, people in really slow universes might find it useful
  • [9:29] Scooter Back: realizes he has a lot to learn
  • [9:30] Zero Linden: Morgaine - I wonder if it is really that much faster....
  • [9:30] FWord Utorid: we shouldn't exclude those who come from dimensions without linear time just because you say so
  • [9:30] Morgaine Dinova: Or with slow links. Not everyone has good broadband
  • [9:30] Saijanai Kuhn: [2] REST wiki
  • [9:30] Zero Linden: (actually, if your universe is slow..... wait... how can you tell?!?!?!?!? :-) )
  • [9:30] Zha Ewry: chuckles
  • [9:30] Sheryl Mimulus: its only faster because its not tied to extra stuff like xml's tied to xslt, dom, etc...
  • [9:30] Morgaine Dinova: Zero: let's use the scientific method and measure them :-)
  • [9:30] Saijanai Kuhn: everything is blue?
  • [9:30] Zha Ewry: when you run NNTP to other universe, Zero
  • [9:30] Zero Linden: XML is not tied to xslt or dom
  • [9:31] Zero Linden: we do XML right now in SL without either
  • [9:31] FWord Utorid: zero, maybe there is a way to interlace prim data the same way gifs are interlaced, so you can get a snapshot of smaller data, then gradually more, making objects start out blobby and becoming more formed
  • [9:31] Zero Linden: points Morgaine at his Michelson-Morely apparatus
  • [9:31] Saijanai Kuhn: tortured prims that torture one step at a time...
  • [9:31] FWord Utorid: i was going to ask teravus if the sim does the quasi-interlacing on the images
  • [9:31] FWord Utorid: or if that is a feature of jp2
  • [9:31] Sheryl Mimulus: I meant that a xml parser needs to also support validation of xml specs (sorry, not xlst)
  • [9:31] Zero Linden: FWord - prim data isn't frankly that big
  • [9:31] Zha Ewry: JP2000
  • [9:32] FWord Utorid: ok
  • [9:32] Zero Linden: one of the big values of constructive geometry is that it is relatively small
  • [9:32] Morgaine Dinova: FWord: you can't send just part of a prim dataset and expect it to partially render :P
  • [9:32] Zha Ewry: also, this is utility->sim
  • [9:32] Zero Linden: I think we can get simple prims down to something like 12 bytes
  • [9:32] Zha Ewry: The sim isn't rendering
  • [9:32] Saijanai Kuhn: has there been talk of finalizing the prim set that whatsisname originally created?
  • [9:32] Zha Ewry: Its putting it into the scene graph
  • [9:32] FWord Utorid: morgaine, i was throwing out an off the wall possibility for the hell of it
  • [9:32] Zero Linden: even full fledged ones, in uncompressed XML, are still at most a small number of kB
  • [9:33] FWord Utorid: and i believe everything is possible
  • [9:33] FWord Utorid: zero, if it's impractical, then no worries
  • [9:33] Zero Linden: So
  • [9:33] Morgaine Dinova: Zha: the client renders, but it needs all the dataset for a prim before it can do that. You can't do an approximate rendering with just half the dataset
  • [9:33] Zha Ewry: So, you're not going to put an object into the sim's base store, if you don't get all of it
  • [9:33] Zero Linden: I think intermes of object geometry formats
  • [9:33] Zero Linden: we'll have two levels of extensibility
  • [9:34] Zha Ewry: Right Morgain, and its even worse for objects arriving at a sim
  • [9:34] Zero Linden: within the LL constructive geometry format, there is a basic prim shape type code -- and those could be added to (though that would need some central coord -- as it isn't a URI -- just a small integer)
  • [9:34] Zha Ewry: I dont think it gets to be rezzed, until the simulaytor has it fully in its scene management
  • [9:35] Zero Linden: but, during negotiation - one could see asking for other MIME types, and in the future - why not negotiate for collada, X3D or some other?
  • [9:35] Zha Ewry: nods
  • [9:35] Zha Ewry: an UPDATED collada that is actually useful for transport, please
  • [9:35] Zha Ewry: (there is an new edge rep spec, but.. it's still not really useful for these cases)
  • [9:36] Zero Linden: er, before you all blog that - I'm not advocating collada, X3D or anything else
  • [9:36] Zero Linden: I'm just using them as examples of how one could negotiate for type
  • [9:36] Saijanai Kuhn: same could apply to avtar types as well
  • [9:36] Zero Linden: yes
  • [9:36] Zero Linden: same could apply to texture types
  • [9:36] FWord Utorid: THIS JUST IN: ZERO MAKES AN EXAMPLE OF COLLADA AND X3D WITHOUT MERCY
  • [9:37] Zero Linden: and sounds
  • [9:37] Saijanai Kuhn: wants a toon-shaded avatar type
  • [9:37] Zha Ewry: So.. Zero, at the protocol level, does the item, once rezzed, return a new URL to the orginatling domain?
  • [9:37] Saijanai Kuhn: enough of this relistic skin tones. Iwant Hannah Barabara to render with a 1 not a 1000
  • [9:37] Zero Linden: Fword - I was more worreid about "EXTRA! ZERO LISTS COLLADA BEFORE X3D IN SENTENCE! CENTRAL COMMITEE INDICATES SHIFT OF DIRECTION!"
  • [9:38] Zha Ewry: "We are at war with eastasia, we have always been at war with eastasia"
  • [9:38] Twa Hinkle: ha
  • [9:38] FWord Utorid: THIS JUST IN: ZERO LISTS FWORD BEFLROE COLLADA AND X3D IN SENTENCE!
  • [9:38] FWord Utorid: *BEFORE
  • [9:39] FWord Utorid: :P yeah i get ya
  • [9:39] Zero Linden: Zha - yes - when you rez an inventory item, you get a new object
  • [9:39] Zero Linden: Fword: LOL
  • [9:39] Zha Ewry: nods
  • [9:39] Zha Ewry: and it comes back as part of the rez call?
  • [9:39] Zha Ewry: I think that's got lots of virtues
  • [9:39] Morgaine Dinova: I still want to know the anwer to the question about OGP and extensible prim types. The bit that worries me is that OGP may be nicely extensible, but if the server rejects extensions then we're going nowhere fast.
  • [9:39] Saijanai Kuhn: every 4 years we reach into hat and pull out blue ribbon or purple ribbon. We put them on and then blue fights purple? Why? IT is what we do.
  • [9:40] Zha Ewry: That's the usual, how do you mandate people implement your protocol question Morgaine
  • [9:40] Zero Linden: Zha - I think it could
  • [9:41] Morgaine Dinova: So the definition of prim types needs to specify what the server-side needs too, like bounding boxes. can't expect the sims to get it out of this air, else they'll reject extensions.
  • [9:41] Zero Linden: Morgaine - well, if you legislate required acceptance of extensions -- then they really aren't extensions, are they?
  • [9:41] Teravus Ousley: heh
  • [9:41] Morgaine Dinova: Zero: legislate the requirement to accept extensions, not the actual extensions themselves --- let those emerge
  • [9:42] Zha Ewry: Yjaty
  • [9:42] Saijanai Kuhn: well, if an item has unacecepted prim tiyupes or mesh types, what happens when it rezes? Is it all or nothing?
  • [9:42] Zha Ewry: That's not an extension either
  • [9:42] Zero Linden: Morgaine - since we aren't sending rendering byte code along with the objects - we really can't define a generic way for an simulator to handle any future possible object type
  • [9:42] Zero Linden: normally
  • [9:42] Zha Ewry: The sim can always just send back a 5xx
  • [9:42] Zero Linden: in HTTP,
  • [9:42] Zero Linden: what you do is have the server indicate in the request which formats it knows
  • [9:42] Zero Linden: and then the server provides the format with the greatest fidelity
  • [9:42] Zero Linden: in our case
  • [9:43] Morgaine Dinova: Zero: that's precisely why I'm saying that we need the server-side reqs to be specified as well, not implicit. Eg. you need bounding box info.
  • [9:43] Zero Linden: one could assume that LL's constructive geometry, despite all it's quirkyness
  • [9:43] Zero Linden: is a pretty decent fallback: YOu can indicate the approximate shape (box, sphere, cylinder)
  • [9:43] Zero Linden: and the bounding size pretty easily
  • [9:43] Goldie Katsu: so you are saying you need something that says what formats the prim data may be in so it can determine if it supports it
  • [9:44] Zha Ewry: You have this general problem
  • [9:44] Zero Linden: Goldie - yes - but we get all that for free with HTTP
  • [9:44] Zha Ewry: Which is when soeoen creates as new low level format
  • [9:44] Zero Linden: HTTP has a way (the Accepts header)
  • [9:44] Zha Ewry: can a sim handle it, can hthe clients handel it
  • [9:44] Zha Ewry: at some point, it falls back to plywood cube labled "Thing I don't understand here"
  • [9:44] Zero Linden: that lets the server say what formats it knows, and even which it prefers
  • [9:44] Goldie Katsu: so the accepts header - on prim transfers - would indicate formats?
  • [9:45] Zero Linden: and HTTP has a way for the source to say what type it provided
  • [9:45] Scooter Back: get v post
  • [9:45] Goldie Katsu: (sorry I'm having a very visual day..trying to draw pictures in my brain.)
  • [9:45] Zha Ewry: That's that HTTP and REST would have you do, Goldie, and that seems fine
  • [9:45] Rex Cronon: since when r prims rendered on the server?
  • [9:45] Zha Ewry: They aren't rex, but
  • [9:45] Saijanai Kuhn: scenegraph info
  • [9:45] Zha Ewry: You need to be able to parse them into useful form, biuld a bounding box and managee them
  • [9:45] Saijanai Kuhn: physics info
  • [9:45] GoodCode Writer: physics?
  • [9:45] Zha Ewry: and on opensim
  • [9:45] Zha Ewry: we mesh sclupties for physics
  • [9:45] Zero Linden: Rex -- good point - they are to a degree - becuase the server must do interest list culling, and physics
  • [9:46] Goldie Katsu: Doesn't the prim data get sent to client at some point?
  • [9:46] Morgaine Dinova: Rex: the visuals aren't, but the server needds some info that comes from the prim parameters, eg. the bounding boxes
  • [9:46] FWord Utorid: it would be cool if there was a 'viewer face texture type' which was 'a view of the world from a preset angle', so you could have a prim where you look at it and there is another vw on each side
  • [9:46] Scooter Back: by using an httprequest, a user on open sim could script a request for a SL asset then?
  • [9:46] Zero Linden: so the server doesn't do graphical rendering, but it must do some amount of geometry compuation on the objects
  • [9:46] Morgaine Dinova: Yeah
  • [9:46] Zha Ewry: and. there is nothing, Zero, that says the sim canb't render the object
  • [9:46] Zero Linden: True, Zha
  • [9:46] Zha Ewry: if we're thinkign of these as composable web services
  • [9:47] Saijanai Kuhn: FW0rd look at OPenCroquet protals
  • [9:47] Saijanai Kuhn: portals
  • [9:47] Zha Ewry: we don't want to lock our deployment model into the protocol
  • [9:47] FWord Utorid: sai, yes.
  • [9:47] Goldie Katsu: I guess the question that comes to mind is, does it matter if the client supports a particular rendering format?
  • [9:47] Zha Ewry: At the Asset cloud to Sim level, no
  • [9:47] Zha Ewry: The sim, just adds the asset to the scen graph (if it understands it)
  • [9:47] Zero Linden: well- I think that complicates the issues significantly ---- that we need to coordinate not only what the sim understands, but also ALL the viewers as well
  • [9:47] Zha Ewry: the clients, are not even in the loop at that level
  • [9:48] Zha Ewry: The clients get told
  • [9:48] Zha Ewry: "Here is a thing for you to render"
  • [9:48] Zha Ewry: and if they can't?
  • [9:48] Zero Linden: this is why, I think, while of course there needs to be this whole system of negotiation
  • [9:48] Zha Ewry: Theyy do something downs tream
  • [9:48] Zha Ewry: Pretty standard speerationg of concerns
  • [9:48] Zha Ewry: the killer
  • [9:48] Zha Ewry: is that the more extension types you get
  • [9:48] Rex Cronon: i have to go. bye everybody
  • [9:48] Zha Ewry: the less consensus reality you may get
  • [9:48] Zero Linden: it is likely that in the fore-seeable future, that a very small number of formats will prevail an will be universally implemented
  • [9:48] FWord Utorid: by rex
  • [9:48] Rex Cronon: have fun:)
  • [9:49] Zero Linden: Zha - exactly - hence my future prediction
  • [9:49] Zha Ewry: nods
  • [9:49] Zero Linden: Indeed it - is a good time for me to run to
  • [9:49] FWord Utorid: zero, if those very small number of formats are easily converted into an infinite number of other formats, and back, then that would be ok
  • [9:49] Zha Ewry: My personal take is that its going to be 90% common bits
  • [9:49] Morgaine Dinova: The viewer problem can be handled just like web browser plugins are. If they want to render some extension prim, they'll need the rendering plugin for it. There is no way that all clients can contain all prim type rendering code, not when we're scaling to thousands and millions of worlds.
  • [9:49] FWord Utorid: but we should always have confusion
  • [9:49] Zha Ewry: and 10% extensions at any time
  • [9:49] Zero Linden: need to prep for other meetings.... (joy!)
  • [9:49] FWord Utorid: have fun
  • [9:50] Teravus Ousley: take care
  • [9:50] FWord Utorid: we will come with you to the other meetings
  • [9:50] Goldie Katsu: Thank you
  • [9:50] Zha Ewry: Cool stuff, Zero
  • [9:50] Zero Linden: thanks all - good discussion
  • [9:50] FWord Utorid: send us a tp
  • [9:50] Goldie Katsu: yeah good stuff.
  • [9:50] Wrapp Seiling: appolgies everyone ... RL work calls...
  • [9:50] Saijanai Kuhn: MPEG folk are wokring on universal avatar and geometry description protocols How useable they wil be in a realtime world is another question
  • [9:50] Zha Ewry: the MPEG folks are working from whole cloth
  • [9:50] FWord Utorid: as long as you can have sex with it the format doesn't matter
  • [9:50] Zha Ewry: i don't think they have a single person on the team who is working in a real code base
  • [9:50] Scooter Back: if I understand this, a string could be created that would allow a standard browser (IE) to view SL assests?
  • [9:51] Zha Ewry: IFF you had permisions
  • [9:51] Zha Ewry: and abridge
  • [9:51] Goldie Katsu: sure as long as you have a plugin that knows how to interpret
  • [9:51] Goldie Katsu: yeah
  • [9:51] Morgaine Dinova: I disagree violently about what Zero just said. It's equivalent to "Nobody will ever need more than 640k RAM".
  • [9:51] Goldie Katsu: what Zha said.
  • [9:51] FWord Utorid: I need to go afk to prepare to set things on fire
  • [9:51] Saijanai Kuhn: Gareth has a browser plugin for Firefox BTW
  • [9:51] Goldie Katsu: I think there will be dominant formats
  • [9:51] FWord Utorid: morgaine, VIOLENCE IS THE ANSWER
  • [9:51] Goldie Katsu: but yeah there will be many variations.
  • [9:51] Zha Ewry: The web lives on the 80./20 rule
  • [9:51] Morgaine Dinova: Bush seems to think so
  • [9:52] Zha Ewry: if your content is in the 20% case
  • [9:52] Zha Ewry: a lot of peopel won't ever see it
  • [9:52] Saijanai Kuhn: Bush 44 even more than BUsh 43
  • [9:52] Goldie Katsu: 80% of websites work for me with the plugin set that I have in my browser.
  • [9:52] Zha Ewry: Exactly Goldie
  • [9:52] Scooter Back: I think there should be a method to allow comms between browser and sl and back. Not just a script for text, but also for textures and constraints
  • [9:52] Morgaine Dinova: Sai: what does Gareth's plugin do?
  • [9:52] FWord Utorid: i want all of the content in a jar with gravy
  • [9:52] Zha Ewry: if your content is so cool, and so totaly tied to your plugin
  • [9:52] Zha Ewry: You get a chance to get it out of the 20 and into the 80
  • [9:53] Zha Ewry: but that bar is bloody high
  • [9:53] Goldie Katsu: yep.
  • [9:53] Goldie Katsu: Flash did it
  • [9:53] Goldie Katsu: Silverlight is trying
  • [9:53] Zha Ewry: Mostly
  • [9:53] Zha Ewry: right
  • [9:53] Zha Ewry: and, note that the ones which do?
  • [9:53] Zha Ewry: Have strong promoters
  • [9:53] Zha Ewry: big toolchains
  • [9:53] Zha Ewry: and such
  • [9:53] Zha Ewry: Joes tiny little specialized plugin?
  • [9:53] Zha Ewry: Not so muich
  • [9:54] Goldie Katsu: yeah strong promoters or use on popular sites.
  • [9:54] Goldie Katsu: Silverlight using the Olympics to get installed.
  • [9:54] Saijanai Kuhn: MOrgaine. Puts a wrapper around the viewer code so it will render i a FIrefox window
  • [9:54] Zha Ewry: I have 8 major plugins on my client
  • [9:55] Zha Ewry: (on firefox)
  • [9:55] Zha Ewry: and I'm a pretty agressive adopter
  • [9:55] Goldie Katsu: I guess I'm violently agreeing with Zero?
  • [9:55] Zha Ewry: Yep
  • [9:55] Zha Ewry: We need to be able to extend
  • [9:55] Zha Ewry: to get the innovatoin
  • [9:55] Morgaine Dinova: I think it could work just like parcel music. A sim knows what kind of prims are on its territory, so when you enter a parcel, your client is told the types, and fetches any plugins it needs *directly* from the provider, not via SL.
  • [9:55] Zha Ewry: but.. we shoudl expect
  • [9:56] Zha Ewry: that the bar to getting new prim rendeirng is high
  • [9:56] Saijanai Kuhn: well, need to have cerificaton of "safe" viewer plugins in theat scenario
  • [9:56] Zha Ewry: The problem, Morgaine, is that plugging into the rendering is much messier than on a html client
  • [9:56] Zha Ewry: For 90% of web browser content
  • [9:56] Morgaine Dinova: Sai: wow, that's interesting. (And appalling, as if we needed more crap in browsers)
  • [9:56] Goldie Katsu: yes, the plugins would be client side, and the clients problem IMHO (as long as the data types get shared so the client can know it needs those plugins)
  • [9:56] Sheryl Mimulus: a distributed scene graph *shudders*
  • [9:57] Zha Ewry: you just give the plugin a window or a chunk of realetste
  • [9:57] Saijanai Kuhn: Gareth is scary. He did it in a very shor period
  • [9:57] FWord Utorid: we need browsers inside of vws that run inside of browsers, in 3d
  • [9:57] Goldie Katsu: Yeah, it would be a lovely attack vector too. True.
  • [9:57] Zha Ewry: For a fully rendered 3d scene
  • [9:57] Zha Ewry: its MUCH messier
  • [9:57] Goldie Katsu: Care for the snowcrash plugin?
  • [9:57] Zha Ewry: The new type needs to handle all the shaders the ordering, the layering and so on, in the render popeline
  • [9:57] FWord Utorid: sai, it's always simple to make a hack, much more difficult to get stability and ongoing development
  • [9:57] GoodCode Writer: was tess all the time here?
  • [9:58] Zha Ewry: Tess walked in about 75% of the way through
  • [9:58] Saijanai Kuhn: did not see tess at all
  • [9:58] Morgaine Dinova: Goldie: the entire interop'ing network of worlds is going to be one huge attack vector. :-)))) I think we're going to have to run parts of the client in sandboxes.
  • [9:58] GoodCode Writer: Hi Tess
  • [9:58] FWord Utorid: tess came at the end but she is from a dimension where time goes backwards
  • [9:58] Saijanai Kuhn: waves
  • [9:58] Saijanai Kuhn: Ooh, at the cute furry
  • [9:58] GoodCode Writer: ll
  • [9:58] Morgaine Dinova: Aloha Tess :-)
  • [9:58] Goldie Katsu: lol yeah
  • [9:58] Saijanai Kuhn: waves
  • [9:58] Saijanai Kuhn: at*
  • [9:58] FWord Utorid: so we only saw her at the end
  • [9:58] Morgaine Dinova: She was hibernating
  • [9:59] FWord Utorid: i heard a rumor that tess would come in first on star search
  • [9:59] Zha Ewry: Plugging into the client is going to be expensive and messy. Not at the protocol level at all, but at the code level
  • [9:59] Tess Linden: sorry, im only half here
  • [9:59] Tess Linden: reading backlog
  • [9:59] GoodCode Writer: and gone
  • [9:59] FWord Utorid: she ran away
  • [9:59] Goldie Katsu: poof
  • [9:59] Morgaine Dinova: Zha: only messy if the design is messy. Right now it's beyond messy and into diabolical territory :P
  • [9:59] Saijanai Kuhn: Lindens will do that
  • [10:00] Zha Ewry: That's the code, tho, not the protocol
  • [10:00] Saijanai Kuhn: wonders if there is a god mode togo invis...
  • [10:00] Morgaine Dinova: Yep
  • [10:00] Zha Ewry: There is Saij
  • [10:00] Goldie Katsu: hands sai an invisible prim
  • [10:00] Zha Ewry: at seversal levels
  • [10:00] FWord Utorid: thoys pan and I wrote a program that will allow you to rez people
  • [10:00] Zha Ewry: Some lindens even when they are in sight don't show on scripted sensors
  • [10:01] Goldie Katsu: gave you KeyHole.
  • [10:01] Morgaine Dinova: Protocol is no problem for type extensibility, as long as sims don't adopt a "Not Invented Here" attitude to extensions.
  • [10:01] Zha Ewry: Right, but that is a social, not a technical issue
  • [10:01] FWord Utorid: microsoft will just steal it and grandma will think they made it
  • [10:01] Saijanai Kuhn: is going A F K. Assuming that afterahors chat is still transcriptable... (without objections)
  • [10:02] Morgaine Dinova: Yes, largely. But there are technical hurdles too, and we can at least deal with those.
  • [10:02] Zha Ewry: Totall agreed, Morgaine
  • [10:02] FWord Utorid: whatever we can do to make the microsoft takeover easier, we should, for them
  • [10:02] Zha Ewry: We'll make it easy for the scheme to deliver the extensible content
  • [10:02] Zha Ewry: and then, we'll see if people play ball
  • [10:02] Zha Ewry: I expect it to fall into classi 80/20 behavior
  • [10:03] FWord Utorid: ok. i am going to find something else to do, but you won't know, i'll look exactly the same.
  • [10:06] Morgaine Dinova: I've just installed a new distro, T2. It seems quite good so far, very much along the lines of Gentoo, and allegedly has a few better properties too.
  • [10:07] Zha Ewry: stretches and heads off so the RL me can get some food