Difference between revisions of "Sculpted Prims: FAQ"

From Second Life Wiki
Jump to: navigation, search
m (link fixed)
(Sculpted Prims: Frequently Asked Questions)
Line 134: Line 134:
:* Sculpted prims can be defined via LSL using <span style="font-weight:bold; color:#560">[[LlSetPrimitiveParams|llSetPrimitiveParams()]]</span>:
:* Sculpted prims can be defined via LSL using <span style="font-weight:bold; color:#560">[[LlSetPrimitiveParams|llSetPrimitiveParams()]]</span>:
:: <span style="font-size:1.2em; font-weight:bold; color:#560"><tt>llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "texture-name-or-uuid"]);</tt></span>
:: <span style="font-size:1.2em; font-weight:bold; color:#560"><tt>llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "uuid", PRIM_SCULPT_TYPE_SPHERE);</tt></span>

Revision as of 14:33, 17 May 2007

Sculpted Prims

Sculpted Prims: Frequently Asked Questions

Q. What is a Sculpted Prim?
  • A Sculpted Prim is a prim whose shape is determined by a texture. These textures are called Sculpt Textures. You can use sculpted prims to create more complex, organic shapes that are not currently possible with Second Life's prim system.

Q. What is a Sculpt Texture?
  • A Sculpt Texture or Sculpt Map is a standard RGB texture where the R (red), G (green) and B (blue) channels are mapped onto X, Y, and Z space. Sculpt Textures are similar to so-called "normal maps", but instead of encoding surface normals we encode surface positions.

Q. Why use textures (images) to encode shapes?
  • Using images to encode shapes comes in very handy because there are many 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 (sculpt map) to another. When attached to a sculpted prim, the prim would "morph" from one shape to the other. Another example: it would be easy to have a flash animation generate a sculpted prim — when a resident touches a spot on its surface, the shape could wiggle and ripple appropriately. This is the direction we are headed.

Q. Where can I go to obtain or share Sculpt Maps and Textures?

Q. How can I make a Sculpt Texture?

Q. How do i use the Maya exporter?
  • Go to this page and copy the contents of the script. Paste it into your Maya script editor and save it. (Optionally, drag it into a button on your tool bar.) When you run the exporter script, it will pop up a dialog box with exporting 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 that the poly-mesh has a perfect UV space (it must cover the entire surface and the space must have no holes).

Q. Can Polygon Models be exported as Sculpt Textures (Sculpt Maps)?

Q. Can my 3D program do NURBS models?
  • NURBS used to be the feature that separated professional-quality 3D modeling software from the rest, but the gap is narrowing. 3D Studio Max, Maya and Blender offer both NURBS and polygon modeling. Many other "free"/low cost programs like Google Sketchup, Milkshape, Wings3D and gMax do not. Rhino3d is a commercial program (though considerably cheaper than 3D Studio Max or Maya) that specializes in NURBS modeling. See the Sculpted Prims: 3D Software Guide page for an in-depth discussion of applicable 3D modeling software.

Q. How detailed can a Sculpted Prim be?
  • The current implementation samples the Sculpt Texture (or Sculpt Map) by different amounts depending on the "Level of Detail" or LOD. Prims which are close to the viewer camera have a 32 by 32 grid of vertices, which drops to 16 by 16 as the prim moves away from camera.

Q. How big should my Sculpt Textures/Sculpt Maps be?

Q. Are there any size or distance restrictions on Sculpted Prims?
  • Sculpted Prims use the same position, rotation, and size parameters that a normal prim has. For example, this means that the maximum distance from the center of a sculpted prim is 5m as prims can be no more than 10m from side to side.

Q. Can "huge prims" be used to make "huge sculpties"?

Q. The demonstration video shows a lot of smooth shapes. Can I use Sculpted Prims to make sharp corners and angles? What if I want to create more complex shapes?
  • One issue here is the 8 bit precision on images, and the other issue is the jpeg compression applied to the data (all textures are converted into jpeg2000 format). The name "sculpted prim" was chosen to convey the idea of "approximate" shapes — but as you can see from the plate in the image above, "approximate" is pretty close to "exact". Furthermore, it wouldn't be hard to support 16bit images and higher precision/lossless compression in Second Life — but let's first see whether we need it.

    With respect to sharp corners and angles, sculpted prims are quite similar to NURBS surfaces: A sculpted prim can have a more defined edge by dedicating more control points (vertices) to that area. At maximum resolution, a 32x32 pixel Sculpt Map would describe up to 1024 vertices (with each pixel representing a single vertex). The recommended sculpt map resolution is 64x64 pixels but in practice the highest level of detail for sculpted prims in Second Life is a grid of 32x32 vertices (larger images are downsampled), and the lower level of detail uses 16x16 vertices. If you need more vertices, split your model up into multiple prims. For reference, a torus-shaped prim in SL has about 1000 vertices.

Q. With image pixels defining the position of the prim's vertices, will jpeg compression artifacts not skew the vertex positions?
  • You're right, jpeg compression may lead to undesirable behavior in this area. LL is taking a wait and see position here — once people have built many sculpted prims and if there's a need, compression levels may be tweaked and support for 16bit textures might be added as well.

Q. Can I make flexi sculpted prims?
  • Not at present but it is planned for a future revision.

Q. Can I make Sculpt Textures (Sculpt Maps) in Photoshop or other paint programs?
  • Not easily, but with a technical understanding of sculpt textures it is possible to manipulate them. Check out the ongoing talk page discussions here, here and here.

Q. Can I preview Sculpt Maps in the Texture Upload window?
  • Yes, the texture upload preview has a "sculpted prim" mode.

Q. Can I texture a Sculpted Prim just like a regular one?
  • Yes. Each sculpted prim has one texture face. The texture space of a sculpted prim is defined by the sculpt texture.

Q. What about the UV mapping of the Sculpted Prim's single texture?
  • You can use the texture scale/rotate/offset controls to position the texture on the sculpted prim. In terms of UV mapping, the sculpt map defines the texture space — the sculpted prim will have the same UV space as the object in your modeling program.

Q. What happens if I use a normal texture instead of a sculpt map as the sculpt texture?
  • The result is affectionally called "vertex vomit" — ... and no, it's not pretty.

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

Q. How do sculpted prims work in the physics engine?
  • At present, sculpted prims are approximated by a lopsided sphere that is roughly the same size as the sculpted prim. In the future, a more exact representation to the physics engine may be provided, thereby offering more realistic movement/collisions for sculpted prims.

Q. This sounds like it might take some extra processing power — will there be limits or can I have 15,000 sculpted prims per sim?
  • At a maximum of approximately 1000 vertices, sculpted prims have about 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!

Q. When will Sculpted Prims be available on the Main Grid, using the Standard Viewer?
  • We sincerely hope to have sculpted prims on the main grid within the next two months — but ultimately this will depend on the number of bugs we find and other external factors. The tentative release date is Wednesday, May 23rd.

See also

External Links