1
$\begingroup$

I'm still very new to Blender, learning what I can while I try to edit models for an outside application (Miku Miku Dance). My textures are poor and I'm looking for ways to improve them.

Is there some way that I can use tiling normal maps created by a third party and burn them into a diffuse texture? I'm talking about using the normal map to generate shadows onto an image that I can then edit into an existing diffuse texture. Keep in mind that these are not normal maps that I generated from the model, but instead represent a deeper level of detail than I could with my simple mesh. It seems like the sort of thing Blender could do.

As a newb, any details (keystrokes etc) are appreciated, but I can of course use Google as well as anybody else can.

$\endgroup$
  • $\begingroup$ I'm interested in generating a texture to be used in a third-party application that, for most users, does not support normal mapping. I'm not trying to render any full images directly in Blender. I'm looking for a simulation of lighting applied to a 2d image mapped to the object's UV coordinates. As an example, maybe imagine that you were trying to create an image to be used as a texture in a very old video game, something like Quake. $\endgroup$ – Nathan Jun 21 '16 at 21:01
  • $\begingroup$ This info should've been mentioned in the question. Thus you export model where no normal maps are supported; in this case you could try to light your scene roughly the same from all the points (in BI there was Hemi lamp for that), mute all color materials (however leave the normal maps affecting the end result!) and bake combined pass into an image. It'll be black and white which can be multiplied into the resulting image. $\endgroup$ – Mr Zak Jun 22 '16 at 15:16
1
$\begingroup$

First solution (more complex)

The tiled aspect of the normal map needs a specific UV map (I'll call it "tiled"). And your diffuse texture needs its own UV map (I'll call it "UVmap").

Making "tiled" is the first point : if your model is complex or if its "natural" UVmap is very curvy, it will be hard to handle how to tile it correctly without unwanted deformations.

As an exemple :

  • The base model (here a plane), and its UVmap : enter image description here

  • Add a second UV map (1) and eventually rename it "tiled" (2), then scale it (3) in order to give the tiled aspect

enter image description here

  • For the example I used this normal map :

enter image description here

  • Setup your material nodes (here I have put a noise texture but that can be what you want ; there is a lamp in the scene but it is not mandatory)

Add a "UV map" input node and set it to the "tiled" UV map (1)

Connect it to your normal map image texture (2)

Set it as a normal map (3) and connect to the normal input of the shader

Add an image texture for the bake (4) (I presume you have create an image for that) and remember this node needs to be selected when you will bake (the selection defines it as the bake target)

enter image description here

  • The bake itself :

Make sure your "standard" UVMap is selected for rendering : enter image description here

Go to the rendering tab and bake section. Click the bake button. enter image description here

Second solution (simplier)

Make a tiled texture from your normal map texture (using for instance the "small tiles" filter in Gimp).

The principle is the same as above but you'll need only one UVMap as the normal map is already tiled.

Third solution (simplier too)

With one normal map, simply configurate your material like this, using a vector mapping the defining the values (here 10) for the scale :

enter image description here

$\endgroup$
0
$\begingroup$

I suppose by "render a normal map into a diffuse texture" you mean converting diffuse maps into normal maps.

Creating normal maps from diffuse maps in Blender is not an easy one-button task. You also need to have at least some basic knowledge about using nodes and the cycles render engine instead of Blender's internal renderer.

If you want to convert random tileable diffuse textures into tileable normal maps the easy way before using them in Blender I suggest the use of third party software like CrazyBump (it's not free, though) or AwesomeBump (free and opensource).

Another possibility to create normal maps for a finished model with an already baked diffuse map would be xnormal. It's free but not opensource. And it's also the "somewhat more correct" way to create normal maps for a model.

Be aware that AwesomeBump is still in its early development stage. The UI isn't very user-friendly but the results are quite good. And don't use the current 4.0 beta if you have an AMD GPU. It won't work with the newer drivers.

$\endgroup$
  • $\begingroup$ No, to clarify, I have a normal map, and I want to use it to add some detail to a diffuse texture. $\endgroup$ – Nathan Jun 21 '16 at 18:02
  • $\begingroup$ Normal maps contain render-wise of so-called non-color data. This data is used to calculate the lightning on a surface. Maybe you could upload your diffuse and normal map so it would be easier to understand what you mean by "detail"? Screenshots might be useful, too. $\endgroup$ – metaphor_set Jun 21 '16 at 19:01
  • $\begingroup$ Char limit. Diffuse, normal map, screenshot wouldn't help you understand, trust me. I hope Blender might render lighting from a certain perspective, taking a normal map into account, and return that to an image-- mapping the render of an object onto that object's UV coordinates-- so that I could simulate that same render (when at the same perspective) in an engine that didn't use normal maps. $\endgroup$ – Nathan Jun 21 '16 at 20:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.