1
$\begingroup$

I try baking foliage to a flat surface as seen in a 3D Max tutorial.

However, parts are just missing on the bake.

Is it even possible to bake geometry to a flat surface? I tried all options, like a cage, moving the bake target around (in front of the object, behind, in centre) etc.

I need to bake because I need other channels too, like normals, AO etc. Otherwise I could just render it.

UPDATE: I think I got closer to the actual problem - see 3rd image please. Its the normals facing the camera directly, become black. That may not even be an error, still I don't really know how to compensate for that.

ANOTHER UPDATE: After doing some research I found out that the black parts in the 3rd image are indeed no error - Normals go on the red, green and blue channel from -1 to 1. On a regular image values below 0 are displayed as black. Still I don't have no clue why those values are just cut-out of all baked maps - a normal bake should contain the negative values and it should work correctly when used as normal map. Furthermore a diffuse bake shouldn't be affected at all.

I guess this is a bug - and a waist of a day.

Bake result Bake result

Actual geometry (full render) Actual geometry

Render with normal emission material Render with normal emission material

Another bake attempt following fergal's instructions Another bake attempt following fergal's instructions

$\endgroup$
  • $\begingroup$ Do you have a blend file that you can post? $\endgroup$ – fergal Jan 11 '16 at 14:31
  • $\begingroup$ No, sorry, those are copyrighted objects. $\endgroup$ – MSchmits Jan 11 '16 at 14:34
  • $\begingroup$ Okay, what bake mode are you using to bake to the plane? $\endgroup$ – fergal Jan 11 '16 at 14:36
  • $\begingroup$ Please see my updated post! $\endgroup$ – MSchmits Jan 11 '16 at 14:43
  • $\begingroup$ @fergal I tried several bake modes, like combined, diffuse color, normal etc, all missing the parts that are black in the normal-emission-rendering. $\endgroup$ – MSchmits Jan 11 '16 at 14:53
2
$\begingroup$

Okay so I've prepared this blend file: http://www.pasteall.org/blend/40069

It's a crude attempt at recreating your scene, but essentially, we have a large plane (which we want to bake our geometry to), and a number of smaller planes (which represents the geometry you want to bake)

Open the file. Select the large plane, tab into edit mode, select all vertices, press U, and then select "Unwrap"

Right click on the edge of the 3D viewport, select "Split area", and in the new area that appears, switch to the UV image editor. In the UV image editor, select "New" from the toolbar along the bottom, and create a new image:

Creating a new image in the UV image editor

Next, in the materials tab, create a new material, and under the "Surface" panel, click the little dot to the right of the "Color" widget, and select "Image Texture":

Assigning an image texture

Click the dropdown to the left of the "Open" button, and select the image that you created in the UV image editor. Next, tab out of edit mode, and back into object mode. In the 3D viewport, select all the smaller planes, and then select the large plane. Make sure you select the large plane last, as this will make it the active object in the scene (indicated by the brighter shader of orange):

Large plane selected

Next, under the Render tab, scroll down to the Bake panel, change the Bake type to "Diffuse Color", check "Selected to Active", and set the margin to 0px, and click "Bake":

Baked diffuse colours

Now, in the UV image editor pane, you should see the geometry of your scene baked onto the texture. However, you will notice that only some of the geometry has been baked to the plane, which I think is what's happening in your first screenshot. To capture the remaining geometry, increase the "Ray Distance" value under the "Bake" panel (it's located just under the "Selected to Active" checkbox). In my example, I have set "Ray Distance" to 3. Now, click "Bake" again, and this time, all geometry will be captured in the bake:

All geometry baked

Does that solve your problem?

$\endgroup$
  • $\begingroup$ Sadly no, I upped the ray distance gradually till 10, moved the plane to the front, centre and back, still parts are missing. The result also doesn't really look like a normal map to me, although I deactivate alpha channel, the image is partly transparent instead of the usual bluish background. $\endgroup$ – MSchmits Jan 11 '16 at 15:44
  • $\begingroup$ Is it always the same parts that are missing? Or does this change based on the position of your plane? $\endgroup$ – fergal Jan 11 '16 at 15:56
  • $\begingroup$ No it's always the same parts - those that are black (have negative normal values) on my 3rd image. I also wrote some more thoughts on that in my original post, not sure if it's all correct, but I guess so. $\endgroup$ – MSchmits Jan 11 '16 at 15:58
  • $\begingroup$ For one last try to solve this, could you make the normal-emission material from my post onto your objects, then turn some of them, so they become black and bake again? I think that would help to solve this mystery. $\endgroup$ – MSchmits Jan 11 '16 at 16:01
  • $\begingroup$ Hmmm one idea that I have is that you duplicate your large plane, and rotate it 180 degrees so that it's facing in the opposite direction of your original plane. Now, select all your geometry, and bake to the new plane. Does this new bake show the missing geometry? $\endgroup$ – fergal Jan 11 '16 at 16:07
1
$\begingroup$

Found the solution after hours, at least partially.

  • Bake as usual (resp. as described by fergal), have "Clear" active on the bake tab. Only half of the objects will be baked onto the image
  • Now deselect "Clear"
  • Go to your target plane in edit mode, select face(s) and hit ctrl+f -> flip normals
  • Bake again, without the clearing the bake will now add the other half onto the image

One problem remains: Doing it that way will bake one half of the normals technically in the wrong direction, the half that should be on the normal map as negative values. No clue, how this is actually supposed to work.

$\endgroup$
  • $\begingroup$ Glad to hear you got somewhere with it dude, did you check with the guys on IRC? $\endgroup$ – fergal Jan 12 '16 at 10:56

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.