Revision as of 23:49, 5 May 2007

FAQ

A: A "sculpted prim" is a prim whose shape is determined by a texture - its "sculpt texture". Sculpted prims can create organic shapes that are not
currently possible with Second Life's prim system.

Q: What is a sculpt texture?

A: A sculpt texture is a standard RGB texture where the R, G, and B channels are mapped onto X, Y, and Z space. For those familiar with
computer graphics - a sculpt texture is very similar to a normal map, but instead of encoding surface normals we encode surface positions.
They are also similar to displacement maps, but instead of a single scalar distance we have three values (for each of X, Y, and Z.) They
are also very similar to parametric (e.g. nurbs) surfaces.

A: The easiest way is to create a model in an external 3d package and use an exporter. We provide an exporter for Maya, and hopefully
exporters for 3ds Max, Blender, and ZBrush will be available soon. We also have plans to provide a sculpt editor within the Second Life viewer.

Q: How detailed can a sculpted prim be?

A: Our current implementation samples the sculpt texture by different amounts depending on level of detail (LOD.) Prims which are
close to the camera get a 32x32 grid of vertices, which drops to 16x16 grid as the prim moves away from camera, and so on.

Q: But why use textures (images) to encode shapes?

A: Because there are a myriad of existing tools for handling images. Image compression, streaming, progressive loading,
and animation are all well-explored problems. For example - we could create a quicktime stream which fades from one sculpt texture to another - attached to a sculpted prim, the prim would "morph" from one shape to the other. Or, as another example - it would be easy to have a flash animation generate a sculpted prim - and when a resident touches a spot on its
surface, the shape could wiggle and ripple appropriately. This is the direction we are headed.

Q: How big should my sculpt textures be?

A: We recommend you use a 64 by 64 pixel image. More data is really unnecessary - less can result in bad sampling when the sculpted prim changes LOD.

Q: How do sculpted prims work in the physics engine?

A: Currently, sculpted prims are approximated by a lopsided sphere having roughly the same size as the sculpted prim. In the future we may provide a more exact representation to the physics engine - thereby providing more realistic movement/collisions for sculpted prims.

Q: How do i use the Maya exporter?

A: Go to this page and copy the text of the script.
Paste it into your Maya script editor, and optionally drag it into a button on your tool bar. When the script is run, it
will pop-up a dialog box of options. Select which shapes you wish to export and press the "Export" button. The ideal
candidate for export is a nurbs surface with no more than 16 isoparms per direction. You may also export polygon meshes - but you must first ensure the poly-mesh has a PERFECT uv space (it must cover the entire surface, and the space must have no holes.)

Q: The video shows a lot of smooth prims. Will we be able to make sharp corners and angles?

A: Similar to NURBS surfaces - a sculpted prim can have a defined edge by dedicating more control points to that area.

Q: Will we be able to make flexi sculpted prims?

A: Not in this version - this is planned future work.

Q: Will I still be able to texture a sculpted prim like a regular one?

A: Yes - each sculpted prim has one texture face. The texture space of a sculpted prim is defined by the sculpt texture.

Q: This sounds like it might take some extra processing power - will there be limits or can I have 15000 sculpted prims per sim?

A: Sculpted prims have the same rendering "weight" as a hollow torus prim. So no, they aren't more expensive to render, and you'll be able to fill your sim, if you like.

Q: is this technology available in the viewer now? if so.. how can I play with this feature? I can't find it!

A: Sculpted Prims are available on the preview grid now.

Q: Approx when might this be available on the main grid, standard viewer?

A: We sincerely hope to have sculpted prims onto the main grid within the next two months - but ultimately this will depend on the number of bugs we find and other external factors.

Q: What will be the associated LSL functions and PrimitiveParams arguments ?

A: Sculpted prims can be defined via LSL using the llSetPrimitiveParams() call like this: