So this may seem like a basic question, but here it is anyway- besides changing the size of your image, is there any way to increase the quality of a texture bake?
Resolution is just one aspect. Blender will use the render sample and light bounce settings for baking. I believe baking needs less samples than a render though, maybe even 4-8 can be OK, but depends on the map type too.
I usually set samples to 128 or 256, just in case, but even 32 may be a lot.
Bounces maybe 32, then you can be sure. If your rig is not that fast, make it 16, and check the result if a change is needed.
For best quality, make 32 bit depth images. Usually used for normals, but if size is not of concern, use it for all maps, also save it as 16 bit afterwards, not just 8.
Also very important to use the most of the UV space to lose the less of the resolution possible. Check some UV unwrap tuts, mainly follow active quads, and use clever seams
Okay- where are these controls?
I THINK it’s under render properties>render>samples
I ask because I’ve changed samples before and noticed no difference.
I cannot show you now, but it is indeed those at the Render settings. The number of samples, and the light path bounces below that setting, (diffuse, transparent, etc etc…)
The 32 bit depth you can set upon creating your image.
The 16 bit can be set upon saving the image
Well, looking at that file- am I missing something? It doesn’t mention any of those controls. Is there a time you can show me? Sorry, I’m not getting this.
Sure, but please see the link, it lists it pretty well
Btw, for baking most maps, 1-4 samples may actually be enough, but feel free to experiment.
You sure you posted the right link? It doesn’t mention ANY of the things we’re talking about. The link is just about the bake section of the render settings and nothing else. Maybe I’m dense, but none of those settings are in that area.
Oh yeah, sorry, it mentions it in only one paragraph. I saw more into that
See sample and light paths topics here:
Also to get a better grasp of how to bake procedural textures:
Just to add to what was said, samples are only important for those maps that require lighting calculations or ray tracing of some kind. Like Composite, Diffuse with Indirect light contribution, Ambient Occlusion. On the other hand, sample number will be irrelevant for Normal, Diffuse with lights turned off, and Emit. Those will straight up write color/normals or whatever, and if the quality is low, that means something else went wrong
32 bit depth isnt used for normal maps though, 8 bits is enough. What needs extra bit depth is Displacement. 8 bit wont have enough precision and will result in banding artifacts when displacement map is used
One important setting not covered here is Margin. It extends a texture as a margin outside the UV island, so in situations when the rendering engine auto-resizes the texture (mip-mapping, texture filtering), there wont be any black lines along UV seams. Margin should be set to equal of power of 2 (8,16,and so on), the bigger the texture, the bigger is the value
Yes, indeed, @DeckardX08 was more on point I admit but all the above basically sums it up.
Baking is over-mystified (y or i? ).
Anyways, just look out for these! If you want to save images as maps, from the same mesh, you can’t go wrong. If you want high to low poly, you may want to use shrinkwrap on the low poly, then unwrap it nicely as per above.
The cage should have the same amount of faces as the low poly, which basically means you duplicate that, and scale it up.
Always make sure your normals are “blue” facing the right direction, and apply object properties just in case (not for the baking, but for the general tidiness, also some texture coordinates will depent on object origin, like object coordinates).
Reach back, having any further questions.
Well, I experimented and- you’re right, samples doesn’t change much on a diffuse with no lighting. A very detailed one rendered just fine with only eight- then 256 samples looked exactly the same.
Best I can tell 32bit DOES help on normals, but what really helps is packing that UV map as much as possible- which means making more seams in the model.
Here’s a program for packing it once you’ve cut the seams https://www.uv-packer.com/blender/
It does a good job, long as your seams are good.
I’ll consider this answered with a warning to any readers to read everything under this post as the “answer” is split over several posts.
The reason why samples change nothing is because, at this moment, Blender’s baking system lack anti-aliasing. A better baking program would spread and randomize the samples across the area of each pixel, but Blender sends each sample in the exact same spot. The only reason you would use more samples is in the case you are using the ambient occlusion or bevel nodes in your material, because they need samples for their quality.
It may be possible to somewhat fake an anti-aliasing effect by baking at double resolution and then shrinking the baked image in an image editing app.
Baking is one area of Blender that was constantly on decline, unfortunately. Changing bake target from UV texture into material texture added so much hassle when you need to merge several materials together using baking. At least they did put Bake to Vertex Colors back