The appearance of a number of materials can be modified by supplying a color. A good example is the WireColorMaterial
material (the same one that is applied to a 3D object when no material is specified), the fill and outline colors of which can be defined via the color
and wirecolor
init object parameters.
Colors can be defined in Away3D in a number of different formats. Common to all the formats is the idea that a color is made up of red, green, and blue component. For example, the color purple is made up of red and blue, while yellow is made up of red and green.
Colors can be defined as an integer. These int
values are usually defined in their hexadecimal form, which looks like 0x12CD56
. The characters that make up the int
can be digits between 0 and 9, and characters between A and F. You can think of the characters A through to F as representing the numbers 10 to 15, allowing each character to represent 16 different values. For each color component, 00 is the lowest value, and FF is the highest. The first two characters define the red components of the color, the next two define the green component, and the final two define the blue component.
It is sometimes necessary to define the transparency of a color. This is done by adding two additional characters to the beginning of the hexadecimal notation, such as 0xFF12CD56
. In this form, the two leading characters define the transparency, or alpha, of the color. The last six characters represent the red, green, and blue components. Smaller alpha values make a color more transparent, while higher alpha values make a color more opaque.
You can see an example of a color being defined as an int
in the applyWireframeMaterial()
function from the MaterialsDemo
class that is discussed later in the chapter.
The same hexadecimal format used by integers can also be represented as a String
. The only difference is that the prefix 0x is left off. An example would be "12CD56
", or "FF12CD56
". The MaterialsDemo
applyColorMaterial()
function demonstrates the use of this color format.
Away3D also recognizes a number of colors by name. These are listed in the following table. The MaterialsDemo
applyWireColorMaterial()
function demonstrates the use of colors defined by name.