Here is a simple base setting, converting the 'generated' output to color.
Generated gives a vector composed of X, Y and Z space coordinates. But these space coordinates are limited from 0 to 1 along the bounding box of the object.
X, Y, Z, put into a color, respectively correspond to R, G, B values of the color.
So, black is at the origin (0, 0, 0) and with is at the opposite (1, 1, 1).
To check that the values correspond to the bounding box and are not above 1, we can try this experiment :
Add an independent vertex inside the mesh at its lower corner (the black one), and change the setting of the nodes like this :
On the image above :
- Top left, the cube vertices are shifted, but the bounding box is larger thanks to the independent vertex we added before
- Bottom, a holdout is applied if any coordinate is bigger than 1
- To right : the result. The cube is nearly white because X, Y and Z are closed to 1. And notice that no holdout is applied (so nothing is bigger than 1).
Try these two setups :
Same color (apparently), but different input values.
But we can check that the resulting color has a G value over 1, thanks to the hold out again :
So here we now know :
- Concerning the generated X, Y, Z values : between 0 and 1 along the bounding box
- Concerning the color : eventually above 1, but "no direct impact" on the rendering if above 1 (let's say that the diffuse shader does not take care if > 1, so the shader limits the value to 1)
We come back to this kind of setting :
If we shift the X value over 1 (3 below), finally the shader will show it as if 1.
If we scale up the X value (30 below), rapidly as X grows the value will be over 1. If 30, the value is > 1 when X is 3.3% of 1 = 0.033.
That's why the final result is the same, except for the slice where X is between 0 and 0.033.