|
Texture tricks with Blender and GIMP |
||||||
Get the
printable PDF version
The challenge in modelling
mostly is, apart from doing a good design, to achieve the best compromise
in detail and low polygon count. So often, one ends up with the question,
whether to model the detail or using a texture instead.
|
|||||||
How does the Sticky option work? |
|
||||||
Prerequisite
skills: Modelling, basic texturing, (multiple) material assigning.
|
|||||||
Let us shortly recall some
gray theory. We know that image textures basically carry colour information
which is to be applied to the 3D object. But we can also use textures to
control other parameters as reflectivity, specularity, transparency, etc.
of single spots on our polygon surface. Finally, the so called bump maps
allow to fake a bumpiness of the object's surface by some modification
in the calculation of the light reflection of the affected spot. It is
not a real displacement though, which can be seen when the textured surface
is tilted strongly towards the virtual camera.
First step: Creating the raw outline in Blender |
|||||||
Resizing the
plane
|
![]() ![]() ![]() |
||||||
|
We will start in
top view with a simple plane (the default plane), which we put some structure
on by simply drawing lines and adding a few circles. Place a camera above
the plane that way, that the camera view is fully including it - you may
also resize the plane. To set its Object size to 1.0, press [Ctrl-A] to
apply the current size. This is useful for later, as we may want to scale
the plane during the modelling process.
Before proceeding, make a copy of the plane with [Shift-D], and move it to another layer using [M]. We will later colour that copy with the generated texture. |
||||||
Now for the modelling,
which we will do in TopView only: As we may want straight and perpendicular
lines dividing the plane in futuristic looking sections, we rescale the
object outside EditMode using [S] to a decent size, so that we can use
the grid snap for our line structures. Tip: For resizing, press down [Ctrl]
while moving the mouse to size in steps.
Now enter EditMode with [Tab]. We first would like to try a little rectangular section inside our plane, so we select all vertices with [A], duplicate them with [Shift-D] and somewhat shrink that duplicate. To scale in one direction only, press the middle mouse button to toggle the constraint to X respectively Y. Move the rectangle with [G] to the desired place. This is what we now should have got: |
|||||||
![]() |
|||||||
|
Let us try some lines: Deselect all vertices with [A], and left-click on a grid point while holding [Ctrl] - a vertex will be set, probably not perfectly matching the grid point though, but never mind, we will fix this right after. All the following vertices you set that way will be linked with the previously selected one. Try to make some tube-like structure from one box to another, as shown below. If you are done, press [Ctrl-L] to select all vertices linked to the last set one. Pressing [Shift-S] and choosing the option Sel->Grid will snap the selected vertices to the grid. | ||||||
![]() ![]() ![]() |
|||||||
|
You can also select contiguous
vertices by just pointing the mouse cursor over a vertex and pressing [L].
Now continue adding lines and maybe finally add some circles, too: Still in EditMode, call the ToolBox with [Space] and choose Circle. One last tip before it is getting boring: You can also use the extrude function by selecting the desired vertices and pressing [E] - that way you can quickly generate several complex structures at once. For example, we can create an outline for a row of tubes by extrusion and rotation, as shown in the final outline example below. |
||||||
|
Now, before you render,
reset the plane size to the default size which we saved before by "Apply
Size/Rot" - this is done by pressing [Alt-S]: "Clear Size".
![]() ![]() |
||||||
MaterialButtons
![]() EditButtons
![]() |
When we are ready to export the modelled outline to GIMP, we set the material to Wire and Shadeless in the MaterialButtons. Pressing [F12] will finally render a wireframe view, as we have modelled it. It could be though, that there are some lines missing - in this case, enter EditMode and activate All edges in the EditButtons panel - when you press [Tab] again, all lines will be shown in the 3D display as well as in the final render. | ||||||
Finally, for the export, set OSA and render at a decent resolution - preferredly a square one of like 512x512. Save the image in TGA format - we are ready for the GIMP work now! | |||||||
|
|||||||
Fuzzy Select
![]() Blur tool
![]() Clone tool
![]() |
The
selection is easily done with the Fuzzy Select
tool - you just click into the outlined region.
Now, when switching to the Col layer and painting in it, the painting will
be constrained to that selected region. That's all of the trick!
The only problem still is, that the edges of those regions are not painted this way, which sometimes might not be desired. With the Blur tool you can smooth the transients, but you may also try the feather option and different radius sizes (double click on the magic wand for the options menu). This will smooth the edge of your selection region. About the painting itself: It is best done with the Clone tool. You may either use one of GIMP's patterns or better, load metallic, rusty textures into GIMP and use them as clone source. This works by Ctrl-leftclick on the source spot first, then left-clicking and painting on the destination spot in our Col layer. That way, we can produce a good raw colour map. Doing relief |
||||||
Fill Bucket
![]() ![]() Foreground/Background
Colour selection
|
Next,
let us add a layer for the normal (Nor-) texture map - the bump map. The
simple thumb rule is: The brighter, the higher - as in a relief map. The
painting technique is just the same - you may use the Fill
Bucket for giving a raw structure first and
then later using the Addition and Subtract mode (to select in the Brush
Selection under File->Dialogs->Brushes).
Set your Background colour to a medium greay (as shown to the left) and add another layer again, using the "Background" option instead of "Transparent". This layer you might call "Nor". |
||||||
Gradient Tool
![]() |
![]() You can now add other layers for texture maps controlling Spec, Ref, Alpha, Emit or whatever you desire. Finally, you may want to apply some more detail to the raw structure you have made. For example, you may want to create some scratched, bumpy hull - so you could use one of the Galaxy brushes to demolish your surface. This you should do in Addition or Subtract mode though...and probably reduce Opacity too - or alternatively choose the proper foreground value. Generally, slight bumps should barely be visible. |
||||||
Adding detail to several layersOften, you may want to apply line or rivet structures, as they make a lot of detail on science fiction-like textures. For that, you would start with another source image containing this structure in just black/white and use the clone tool. For a good result, these structures would have to be applied to the Col layer as well as to the Nor layer. This can just be done by switching layers, after the clone source has been specified with Ctrl-click. In this case, you would also use the Addition or Subtract mode again.If you want to apply fine
coloured structures, it is best to start with another image and generating
two layers for Col and Nor separately. You can of course use the same technique
from Blender to generate fine structures and then colour them using our
method - often these structures look too regular and perfect though.
A good alternative is a scanned image from a circuit board, which you do
some image processing on, like edge detection from GIMP's filter menu,
etc.
A few tips:
Reimport to Blender |
|||||||
![]() Output mapping
buttons
![]() ![]() Spec/Ref sliders
|
Back to Blender, load all
those textures in the slots of a newly created material and select the
corresponding mappings:
|
||||||
![]() In-Mapping
buttons
|
This material we assign
to the copy which we made of the plane in the beginning (which was moved
to another layer). Before you move the camera, subdivide this copy a few
times (this is needed for the interpolation of the texture coordinates
for the stick option) by pressing [W] and choosing "Subdivide". If you
would not do that, you might notice a weird distortion of the texture later.
Then, choose "Make Sticky" in the EditButtons
and set the In-mapping option to Stick for
all layers - this causes the texture being mapped back the same way as
it was rendered before.
This is the rendered result of the above example layer combination: ![]() |
||||||
Further hintsYou will probably need a lot of iterating and experimenting until you get a decent result. It always helps if you start with a template, like scanned images from machine parts, or the mentioned circuit boards. Also, it is always good to analyze the "real world" and simply begin with copying something known.You could also start with an image of a structure which you subject to some colour reduction (GIMP's posterize feature : Image->Colors->Posterize). That way you may get larger contiguous regions which you can select with the fuzzy select tool again. A somewhat different approach to create textures entirely with blender is shown at http://honk.physik.uni-konstanz.de/onk/3d/. It uses a setup with World Mist to create a relief map from a given 3D structure. |
Oktober 1999 |