To save the textures, for each a mip-map is generated. (the same way as for the environment emitter: go there). Then a new texture-class has to be generated which holds this mip-map and evaluates it when the texture is evaluated. Basically it is the exact same approach as for any existing texture, except now the uv-coordinate is used to lookup the texel in the mip-map.
Following properties will be available for the texture to add the texture:
filenamescaletoWorldWhen the texture is created, the bitmap is loaded based on the specified image-name in the xml. Then the mip-map is created and stored on the class. For each evaluation of the uv-coordinate, the mip-map is used to decide which color the texture has on this coordinate.
I could download the basic image-files for each ball from this website: www10.sharecg.com. Based on this I created all the needed textures with Photoshop. So I merged for example the numbers with the apple-texture to let the apple appear like an apple but still like a billiard-ball.
The pictures for these textures I got also from the internet. The walnut I found on photl.com and the apple on deviantart.com. Also these images I had to edit to fit into the final picture as I wanted them.
To get the textures, I downloaded this model. However, I simply used the textures of this, but not the model.
Unfortunately I did not copy the link to this when I first downloaded them. But I found them on google. For the final image, I also downloaded the disney-castle and put it on the environment map to have it rendered on the mirror-sphere.
This pictures are drawn by my girlfriend and wanted to try them out.