Animated Color Cube

. The RGB color model is framed by black, white, three additive primary colors, and three subtractive secondary colors, but there are many hues between them. We used a color cube for representing dimensional bases and intermediate hues and animated it to visualize color interpolation processes.


Introduction
The goal of this project is to make an animated color cube, showing how color is determined in RGB and CMY color models by interpolating between primary color dimensions.

RGB and CMY
A color model is an abstract mathematical model describing the way colors can be represented as tuples of numbers, typically as three or four values or color components [1]. Three-value color model examples are RGB: red, green, and blue, CMY: cyan, magenta, and yellow, and RYB: red, yellow, blue. Four-value color model examples are CMYK (where "K" stands for "key," or black) and RGBA (where A stands for "alpha," or transparency).

The RGB color cube
As seen in Fig. 1, the RGB color model is a type of color expression, based on three additive primary colors: red, green, and blue. The RGB color model is used for sensing, representing, and displaying images in emissive (additive) systems. tan

The CMY color cube
As seen in Fig. 2, the CMY color model is based on three subtractive primary colors: cyan, magenta and yellow, which become secondary colors in the RGB color model. The CMY color model, often augmented with black, is used in subtractive processes such as printing.

Color cube
The color cube is a three-dimensional physical model wich can be used to represent the gamut or set of colors reproducible in a given medium, by combining three primary colors atop a base color [2]. The basic color cube is framed by red, green, and blue; cyan, magenta, and yellow; white and black; and the colors between them, expressing the gamut of displayable colors. If black is set as base color and RGB is established as three primary colors, the color cube is framed by red, green, blue. Such as color cube, as shown in Fig. 3, shows us how the color was determined in RGB in more detail. It is identical, except for rotation, to a CMY color cube, as shown in Fig. 4.

Implementation
The first version of our project used 6 primary colors and black and white atoms, with which we could combine pairs of colors to make intermediate (secondary) colors by interpolating or mixing those two. At each checkpoint, determined by sampling frequency, first-order atoms ("cubies") of primary color have intermediate saturation and value, split to travel in orthogonal direction as well as along the original axes. When atoms from separate axes meet, they combine to instantiate a composed color atom. These second-order atoms are also animated, propelled along a third dimension to meet passes of its second-order atoms, whereupon they spawn third-order atoms in play but continue along to keep rendezvous. The animation starts from black corner cubie ("0G") which spawns red, green and blue cubies ("1G") along axes of primary colors, which make secondary ("2G") colors, which make tertiary ("3G") colors before terminating at white at the diagonally opposite corner.

Edge and Vertices
The number of vertices on a side can be designated , the number of nodes along each side of regular (equilateral) rectangular prism. An n 3 color cube has (n-1) nodes on each side. The edges on a face can be divided into horizontal and vertical sets. Each of them has n(n-1) edges. So, the total number of edges on a single face is 2n(n-1).

Fig. 6. Edges on a face
Each pair of adjacent faces is connected by n 2 edges.

Unity Development
This color cube and its animation were developed in Unity. In Unity, a script can be attached to a scene object, which collectively comprise a scene. Attached to each cubie (component of the color cube), is a script that generates another cubie.  Fig. 11. 0G, 1G, 2G, and 3G cubies comprising a 5 3 color cube

Implications
In animation [3], Black cubie generates three "1G" cubies of primary color: red, green, and blue. Each "1G" cubie spawn syounger siblings along same axes and "2G" cubies perpendicularly. Similarly, "2G" cubies spawn themselves along their axes and tertiary cubies "3G" perpendicularly, 3G cubies spawn their sibling along their axes. At the end of the animation, cubies that were spawned from cyan, magenta and yellow are at white. So, there were 1 0G cubie, 3(n-1) 1G cubies, 3*2(n-1) 2 2G cubies, and 3*2(n-1) 3 3G cubies, totally 6n 3 -12n 2 +9n-2 cubies more than n 3 of object cube. This is because cubies are generated to move on every internal vertex of the color cube.  This animation helps us to sense how colors are determined in the RGB color model. To enhance the animation, sound was added, displaying an impulse every time a new cubie was spawned. The number of such instantiations depends upon the size of the target cube, as shown in Table 1. There is some redundancy, as multiple simultaneous intersections spawn colocated cubies, as shown in Table 2. The intensity of combined synchronized sound is a cue to multiplicity of instantiation to that level, as shown in Table 3. The sound level based on actual number. The color cube makes it easier to understand the RGB color model. The color cube can also show how the color is determined in CMY color model by changing base color and three primary colors. Add some options as future work, for example, when cubie generated cubie make sound and make this animation visible as stereographic.