This is what is known as texturing, and it is all done within Maxwell. To texture an object in Rhino, try this:
- 1. Draw a cube.
2. Open the Scene Manager.
3. In the Materials tab, right-click and choose New Material.
4. Double-click the new material in the list to open the Material Editor.
5. In the material editor, you see a tree structure at the left.
6. Selecting the "BSDF" node, you see the BSDF parameters on the right.
7. About 1/3 of the way down the page, you see the "Reflectance 0°" parameter.
0° determines the main color of the BSDF: it consists of a color, and a texture. The texture is accessed by clicking the grey & black checkerboard button. Double-clicking on this will prompt you to choose a texture file, and right-clicking it will open the texture editor.
- 8. Double-click the Reflectance 0° texture button and choose a texture file.
9. Drag the material from the material list and drop it on the cube.
You should see the texture wrapping around the cube (your viewport needs to be set to Rendered mode
- 10. Select the cube and go to Object Properties > Texture Mapping.
11. Click the "Apply Box Mapping" button.
12. The command line will issue some prompts; just click Enter until you are through them.
You should now see the image projected on each side of your cube. What you have done is to create a material and assign it, assign a texture, and apply a box texture mapping. Now a bit about what has happened, technically...
The objects you see in a render are made up of lots of triangles, not unlike the Epcot
ball. The three corners of any given triangle are points in 3D space, all residing within the same plane. This means that the triangle can be projected to the 2D image plane, allowing us to map triangles in 3D space into 2D space, and thereby decide which portion of a 2D image to render on a given triangle. The coordinates in the image plane are what is known as UV coordinates; U & V correspond to the X & Y axes of a coordinate system placed at the corner of the image rectangle.
That is how image pixels make their way onto triangles in the model. When you applied the box mapping, Rhino drew an imaginary box (you can view and manipulate this by clicking the "Show Mapping" button in Object Properties > Texture Mapping), and then projected coordinates from this imaginary box onto the cube you drew in step 1. Though you see the cube as being a NURBS cube, in order for it to be displayed on your monitor, it needs to have what is known as a "render mesh". You can see this mesh directly by using the ExtractRenderMesh
command in Rhino (not much to see with a cube, but try it with a sphere).