3
$\begingroup$

I have the following textures tex_c.tga, tex_n.tga, and tex_r.tga. Correct me if I'm wrong but it's Albedo, Normal, and Roughness which is used by PBR.

I'm trying to add this object to an old game engine that only supports diffuse.

  • I tried using Albedo as diffuse but it looks too dark, it's just not right.
  • I also tried using Roughness as diffuse it did look a bit better but still doesn't look right.

Questions:

  • Is there a way to merge the right textures to create a single diffuse map in blender?
  • A way to merge at least the Albedo and Roughness together into a diffuse?
  • What are my options?

(I don't have much experience so a step by step guide is quite appreciated)

$\endgroup$
8
  • 3
    $\begingroup$ I would use the cycles render nodes with a pbr node set up that has been offered for free before online, and then bake this down to a single image texture. blendernation.com/2016/06/11/free-tool-pbr-node-pack $\endgroup$ May 25, 2017 at 20:51
  • $\begingroup$ Hello, for the 2nd step. Are there any resources online on how to "bake it to a single image texture"? $\endgroup$
    – majidarif
    May 26, 2017 at 0:59
  • 1
    $\begingroup$ When baking in cycles, you add a new image node that is not connected to a shader but is holding an image that is the scale you want to bake to. Keeping it selected, you then press the bake button and the desired pass will bake to it, and you can save it to disk in the uv image editor. $\endgroup$ May 26, 2017 at 1:34
  • $\begingroup$ Can you give a bit more information about the engine you use, it's quite uncommon that an engine doesn't support roughness and normal maps $\endgroup$ May 27, 2017 at 17:55
  • $\begingroup$ It's an engine from 1999-2001. I'm modding this game and want to export my object with modern textures so I can insert it to the game. But the texture looks wrong if I only include Albedo. @PascalNardi $\endgroup$
    – majidarif
    May 27, 2017 at 18:06

2 Answers 2

3
+50
$\begingroup$

Main concept:

To 'merge' these textures you will need PBR shader as stated by @Craig D Jones in comments section, then setup it properly with simple unwrapped Plane, add some lights (or HDRI), empty texture and finally Bake it.

PBR Shader:

There are numerous free and paid PBR node setups, it's up to you which one you will choose. You can even build one for yourself.

I'm gonna use for this answer the one from Jason Clarke - Simple PBR v5

Note: This is a valid solution until Blender 2.79 will come out. There will be new shader, Principled BSDF which will do the same for you. I've tested it with newset bleeding edge build.

Object and Material:

Object:

First of all we need some object to bake our materials. Taking that most textures are square shaped we need to add a Plane - Shift+A > Mesh > Plane and check Generate UV's in Tools Panel or hit F6 right after Plane is added to the scene.

plane

Material:

Now go to Node Editor, add Appended (How to append material) Simple PBR Node Group. Connect to it Image Textures accordingly to their names. Remember to set Roughness and Normal to Non-color Data. Also add Normal Map node.

nodes

As images I've used free PBR texture set from: http://www.3d-wolf.com/wall.html - Wall 2.

Lights:

This is pretty important step. Final texture look highly depends on it. Here is a little comparison between Albedo, Diffuse (both from texture set), Diffuse RGB (color as a background), Diffuse HDRI (HDRI map as lightning) - both from baking:

Sample

As you can see only HDRI map gives pretty neat result. You can also add set of lamps; it's really subjective topic so it depends on you.

How to add HDRI

Note: Go to Top Orthographic View (Num5 > Num7) and enable Rendered Preview (Shift+Z) to see changes, they will be nearly the same as final bake.

Empty texture:

Now when everything is good looking we can prepare texture for baking.

Go to Image Editor, click Image > New Image or Alt+N, set size of new texture to be the same or smaller then original textures, name it as you want (Diffuse in this example).

In Node Editor add another Image Texture node and choose newly created texture. Don't connect it anywhere and keep it selected (important!).

empty

Baking:

Now go to Render tab and scroll to Baking, everything should look like this:

bake

Hit Bake.

When it's done go again to Image Editor, you should have there result of baking. To save it - Image > Save as Image.

Blend file:

$\endgroup$
2
  • $\begingroup$ I'll try this with the bleeding edge build tonight :) $\endgroup$
    – majidarif
    May 29, 2017 at 3:49
  • 1
    $\begingroup$ @majidarif just remember: "These builds are not as stable as releases, use at your own risk." ;) $\endgroup$
    – cgslav
    May 29, 2017 at 4:32
0
$\begingroup$

Since I came here with the same problem, but couldn't use the answer for my problem, here is my solution.

I needed to bake the normal into the diffuse to gain some details from the normal map.

Simple solution: Use the shader graph like I did in the picture. Image above is the diff texture the one underneath is normal. Regarding your textures you might need to tweak the values a bit. Don't forget to set the mode to multiply in the mixrgb node.

enter image description here

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .