[Sketchlife logo]

Sketchlife

Tools

Here we describe everything that can be done with each of the tools.

Sketchlife toolbar in SketchUp

The primitive drawing tools take some time to get used to. Primitives in Second Life have many constraints, which often means that you can't get points to join up the way you want them to.

Important hint. I often find that it is best, when drawing from scratch, to draw some key edges using the Line tool in SketchUp (you can also be precise and type in exact lengths when drawing), and then draw the prims by snapping to that structure.

Contents - on this page

Box primitive tool

Drawing a rectangular prism

Step 1 image First I drew a line using the Line tool, to help snapping later.
Step 2 image Then I select the Box prim tool and draw the first edge of the base.
Step 3 image Then I draw the second edge, completing the base rectangle.
Step 4 image Finally I draw the height of the rectangular prism.
Step 5 image Finished.

Drawing a general box

The Box primitive tool also allows one to draw a box with any permitted value of tapering and shearing in X or Y directions (except the two cases where the X and Y taper values are extreme opposites — the tool always produces a non-degenerate rectangular base).

Step 1 image Same as above.
Step 2 image Same as above.
Step 3 image Same as above.
Step 4 image Now I press (and release) Ctrl, going into Flexible mode. I then select the point as shown.
Step 5 image I then select the opposite point of the top rectangle.
Step 6 image Completed tapered+sheared box.

Note that whatever the tool allows you to do, is valid and going to be exportable to Second Life. For example, in the above, I could have put the second point of the top rectangle at exactly the same place as the first point, giving a pyramid as shown below.

Step 4 image Put the top-defining points at the same place.
Step 5 image A pyramid with 5 faces.

The important rule to remember for the Box prim is that the top and the bottom faces are always parallel. Another good rule of thumb is that the centre of the top cannot be outside of (its vertical projection onto) the boundary of the bottom face and vice versa.

Simple cylinder tool

Drawing a cylinder

Step 1 image As before.
Step 2 image As before.
Step 3 image A circle appears showing where the base will be.
Step 4 image As before.
Step 5 image Completed cylinder (this one has a base that is an ellipse).

Drawing a tapered and sheared cylinder

Just as before, pressing Ctrl before locking in the height specification takes you into Flexible mode, allowing you to define the top arbitrarily (within Second Life's limits).

Pressing Ctrl while in Flexible mode returns you to the normal mode.

Step 1 image This is drawn using similar steps as for the general Box prim, except we now used the simple cylinder tool (third toolbar button).

Generalised cylinder tool

The difference from the simple cylinder tool is that after the top face has been specified (this is the last click for the simple cylinder tool), this tool expects two more clicks:

  1. Specifying the path cut.
  2. Specifying the hollowness.

Another difference is that this tool starts in Flexible mode by default for drawing the top face. One can still switch to normal, Constrained mode, by pressing Ctrl.

Drawing a generalised cylinder

Step 1 image After drawing the base using three points, as before.
Step 2 image Pressed Ctrl, because I decided that I wanted to have the top and bottom faces the same shape and aligned.
Step 3 image Selecting the path cut (hover around the zero path cut area to get no path cut — you will know because there will be no radii drawn in yellow). Another way to get zero path cut is to click without moving the mouse after finishing specifying the top face.
Step 4 image Here we specify the hollowness. To specify zero hollowness, the surest way is to point somewhere outside the shape.
Step 5 image The finished generalised cylinder.

Arch tool

This tool is meant to help with drawing arches, because these could occur often in architecture. What it draws is just a non-tapered, non-sheared cylinder, with 0.5 path cut, and hollowness specified by you.

Step 1 image Begin by drawing the diameter of the shape.
Step 2 image Specify the height.
Step 3 image Specify the depth.
Step 4 image Specify the hollowness.
Step 5 image Done.

Note that the bounding box lines are drawn in red, green and blue when they are parallel to the X, Y and Z axes, respectively.

Bucket tool

This tool is meant to work just like the default paint bucket tool of SketchUp, except that it "punches through groups". In Sketchlife, each prim is a group of edges and faces. The default bucket tool, when clicking on a group, would paint all of the faces in that group. To be able to paint an individual face, one must double click on the group to start editing it, then paint that face, then exit the group-editing mode.

The Sketchlife bucket tool paints only the face underneath it, regardless of how many layers of groups or component instances it is buried under.

The Sketchlife bucket tool allows to pick up texture maps, similarly to the default bucket tool, and transfer them to other faces. The way that it maps the textures is a bit different from default, however.

Step 1 image To demonstrate painting, I have built a cylinder prim and a tapered+sheared box prim, and I have also drawn a conventional SketchUp face.
Step 2 image I have imported a test image as a texture and put it onto the face.
Step 3 image Now I am holding down Alt to turn the Sketchlife bucket into a Sketchlife pipette, which is for picking materials and texture maps.
Step 4 image Now I have painted the curved surface of the cylinder. Warning! This works well only when the cylinder is exactly vertical.
Step 5 image Now I am going to paint all of the faces in the box prim by holding down Ctrl when painting. Warning! Using the default bucket this way will give the right effect visually, but it will not be exportable (and you will not be warned).
Step 6 image All the faces of the prim have been painted. I shall now reposition the texture on one of the faces. For this, I double click on the prim to go into group-edit mode.
Step 7 image I select exactly one face, right-click on it, then select Texture|Position.
Step 8 image I have dragged the green marker to scale the texture proportionally and rotate it. Warning! Do not use the yellow marker, or the texture will not be exportable (but you will get a warning). Also take great care if using the blue marker: do not skew the texture, Second Life does not support that kind of texture mapping. In other words, if using the blue marker, make sure that it always stays on its dotted line.
The red and the green markers can be used without restrictions.
Step 9 image I have finished positioning the texture by right-clicking and selecting Done. Then I exited group-edit mode by clicking outside of the dotted outline.
Step 10 image Now I am picking up the paint and texture map that I have just adjusted (holding down Alt).
Step 11 image Now I have propagated the texture mapping to all the faces on the prim (held down Ctrl while painting with the Sketchlife bucket). The results don't look particularly nice on this irregular prim, but this often becomes useful when working with standard rectangular prism boxes.

Texturing: curved faces versus flat faces. All of the flat faces of prims will have their textures mapped in Second Life as seen in SketchUp, with high precision. (Provided that the texture mapping is rectangular — that is, the yellow marker has not been used when positioning the texture, any use of the blue marker did not skew the texture, and the primitive was not scaled non-proportionally.) The curved faces will have the same kind of scaling as seen in SketchUp, and they will often be offset to appear similarly to what is observed in SketchUp. However, this does not always happen, because of the way that textures on curved faces are mapped in Second Life.

Copied prims. If a prim has been copied using, for example, the Move tool and pressing Ctrl while moving, then painting one of them will simultaneously paint its clone. This has something to do with a probable optimisation used by SketchUp. The way to change this to expected behaviour is to edit one of the two clones. If there are many clones, a built-in shortcut is to use the Sketchlife Select-All tool: it will, as a side-effect, "split" all the cloned prims.

Select-All button

Use this to select all the items in the model that are valid Sketchlife primitives (i.e. they could be exported immediately).

Also note the important side-effect described at the end of the section just above.

Filter Selection button

Use this in two ways:

  1. Select some entities, then click this command to leave only valid Sketchlife prims selected.
  2. If you are wondering why a certain entity is flagged as invalid, select just that entity and use the Filter Selection command while having the Ruby Console open (Window|Ruby Console). A reason why the primitive is invalid will be shown.

Export to Second Life button

Starts the export process for the set of currently selected prims. See the Details page for a description of the export/import process.

The use of standard SketchUp tools

The following tools can be applied to Sketchlife prims without limitations:

The Scale tool can be used on an individually selected prim as long as the prim is not scaled to be too large or too small (valid sizes are 1 cm to 10 m in each of X, Y and Z directions). This tool can be used on several prims selected at the same time only when scaling proportionally (that is, using the corner handles of the scaling box), or if the bounding boxes of the prims are exactly aligned with the scaling box. Otherwise, the axes of the prims become non-orthogonal and this is not supported by Second Life.

Editing prims (which are normal SketchUp groups with a certain structure) by changing faces and edges, adding more faces or groups, etc., is not allowed. (Going into group-edit mode to adjust a texture on a face is ok.)

Grouping prims and making components of them can be done, but the prims inside groups or components will not be recognised by SketchUp. Explode such groups or components before exporting. This is a limitation which may be lifted in a later release.

Examples

Here are examples of prims that can be built with Sketchlife:

Various prims: boxes, cylinders, with different
        parameters.

Many of the above prims required some scaffolding (using the standard SketchUp Line tool) for them to snap to.

Limitations

Undo. The script, in some cases, does many things per click, but using Undo will only undo the last one of those steps. If you have inserted a prim incorrectly, it is best to select it and delete it than using Undo.

Prims painted using the default bucket tool. If you click on a prim with the default bucket tool, painting all of its faces, this paint will not be visible to Sketchlife. This means that it won't be exported and you also cannot pick up paint from it. This behaviour seems to be due to a bug in the SketchUp Ruby API and cannot be fixed by us.

Painting curved surfaces using Sketchlife bucket. This gives semi-reliable results only when we have a cylinder (top and bottom faces are the same and aligned) and only when that cylinder is vertical with respect to the global Z axis. This latter limitation may be lifted in a later release.

Evgeni Sergeev
Friday 03 July 2009 21:51 (Western Australia Standard Time)

VRShed