Edit and Utilities
Editing properties
Prior to generating your theme, you can edit your object's properties using your viewer's edit window. Focus on all properties you want to record: textures, light, materials, etc.
The rest of this section deals with the Omega and Hover text properties. You can just skip the reading if you don't plan to use them in your theme.
The Utilities menu
There exists two prim properties that are not available through the viewer's edit window: hover text and omega. Currently (in current version of viewers) they require a script to adjust them. In Theme-O-Matic version 2.1 a new button was added to the main Preparation menu to perform this kind of operations: the Utilities menu.
You can access the Utilities menu by clicking the Utilities button in the main preparation menu. A new menu will open, enabling you to adjust the hover text and omega properties on any prim making your object.
Of course the - Back - button will take you back to the main menu, and the > Help < button will show a quick help text in the local chat.
The Utilities menu
Targetting the right prim
Both omega and hover text are prim properties and thus you must "target" a specific prim first. Note that this prim's link number and name are displayed in the menu prompt.
The process of selecting a target prim is very similar to adding a prim to the prim filter. To begin click on the Target prim button. You will then have the choice to:
touch the desired prim, or
say its link number in the local chat.
As usual you will be given reasonable time to do so (30 seconds) in order not to keep a listener open on the local chat for a long time. You can check that the operation succeeded by looking at the local chat and checking the right link number is displayed in the utilities menu. In the local chat, you will also get a report about what the current hover text and omega settings are for this prim.
Subsequently, other operations performed in the Utilities menu will refer to this prim, until you target another one. Two exceptions to this rule are the ClearAllText and ClearAllOmega buttons, which will be discussed below.
Omega operations
In this context, omega denotes the ability for a prim to spin around a specific axis at a given rate. First two things have to be remembered:
this effect is entirely viewer-managed. This means that the simulator has no idea of the exact orientation of the prim, most notably when spinning stops. Moreover, several viewers in range may not see the same orientation at the same time!
Omega behavior differs depending if the target prim is the root prim or a child prim. If it's the root prim then the whole object spins. Else only the target prim spins around a local axis.
For more information about this you can refer to the official LL documentation.
Spinning the target prim requires two things: a rotation axis and a spin rate.
Setting the omega axis
Technically (mathematically) speaking, the rotation axis is defined by a vector, and always passes through the geometric center of the target prim. In order to define the axis, click the Set axis button in the Utilities menu. A text box will then pop asking you for the axis.
In this text box you are expected to enter the vector defining the axis with the following format: <x,y,z> where x, y and z are the coordinates for this vector. For example you would enter <0,0,1> to define it as a vertical axis passing through the prim center.
Three things have to be noted about this:
the vector will be normalized, meaning it will automatically be either enlarged or shortened so that its length equals 1. This is not a problem since only the direction matters, but explains why you may not see exactly what you entered in the text box.
For child prims, the vector entered here is local. This means that if the object (root prim) has a non-zero rotation, the axis will be rotated too. In the example above if you entered <0,0,1> but your whole object is rotated 90° around the x axis, then the prim will appear to rotate around the y region axis instead of the z axis. Don't worry, this is what one would intuitively expect :)
The direction of this vector is important. If you entered <0,0,-1> instead of <0,0,1> then the spinning will happen in the reverse direction.
Once you submit the textbox, the change will happen immediately. To cancel the change, just leave the text box empty before submitting.
Setting the spin rate
Technically (mathematically) the rotation speed is expressed in radians/second (rad/s), but you will have the opportunity to express it as revolutions per second (rps) too. To be precise about this, 1 rps equals 2π rad/s.
To set the spin rate, click the Set spinrate button in the Utilities menu. A text box will open, allowing you to enter the desired spin rate:
either enter a number with no suffix to specify it as a number of radians/second or
enter a number followed by "rps" to specify the spin rate as a number of revolutions/second.
Sign matters! For example if you enter 1.5 then the prim will rotate by 1.5 radian/second around the set axis. If you entered -1.5 then it will rotate by 1.5 radian/second around the same axis but in the reverse direction!
You can also enter something like 2.7rps to have a spin rate of 2.7 revolutions per second.
Stopping the spinning
To stop the spinning of one prim (or the whole object if the target prim is the root prim), its spin rate has to be set to 0. You can do so in the Utilities menu by clicking the Clear omega button.
You can also cancel the spinning of all prims at once by using the ClearAllOmega button. Just beware that a hard-to avoid side effect of this button is that all information about the omega axes will be lost for all prims (as opposed to the single Clear omega button).
Hover text operations
Displaying hover text over a prim requires 3 things: text, color and opacity.
Setting the text
To set the text to display, just click the Set text button in the Utilities menu. Then a text box will pop for you to enter the desired text. You can have several lines of text, either directly by pressing your "enter" key or using a special \n (backslash-n) code.
If you leave the text box empty the change will be canceled.
Setting the color
To set the text color first click on the Text color button in the Utilities menu to get a new text box. There the hover text color can be specified in three ways:
by name: the script knows 32 color names (reference). Their names will be displayed in the local chat as a reminder when you click the button. For example the regular white is called white_A.
By color vector: you can enter the color value as <r,g,b> where r, g and b respectively denote the amount of red, green and blue as numbers between 0.0 and 1.0. For example you can specify black as <0,0,0> and white as <1,1,1>.
By hexadecimal value: here you can specify your color with a # prefix followed by six hexadecimal numbers like in HTML. For example #FFFFFF is white while #FF0000 is red. The first two digits denote the amount of red, the next two the amount of green and the last two the amount of blue.
Setting opacity
Also called alpha, opacity determines how well you can "see through" the hover text. Although it is rarely used beyond some (nice) transition effects, the Utilities menu will let you specify it by clicking the Text alpha button. You will then get another text box where you can specify the opacity in two ways:
by fraction, i.e. a number between 0.0 (invisible) and 1.0 (opaque);
by percentage, appending a % sign, between 0% (invisible) and 100% (opaque).
Clearing hover text
Clearing the hover text of the current target prim is done by simply clicking the Clear text button in the Utilities menu.
You also have the opportunity to clear the hover text from all prims making your object by clicking the ClearAllText button. Note however that, as a side effect, all information (text, color and opacity) on all prims will be lost.
Final note
Please remember that the possibilities offered by the Utilities menu about hover text and omega have, as such, little to do with themes, it's just a convenient way to define these properties. If you want to include them in your themes, just make sure that these properties are properly selected and that the involved prims are included by the filters.