xNormal - Baking AO Maps with xNormal
xNormal is a free software that offers a lot of tools mainly focused around baking and converting a variety of essential maps needed for a lot of 3D texturing workflows. In this tutorial we will only focus on baking an ambient occlusion map. You can find xNormal here: https://xnormal.net/xNormal is based around the High- to Low-Poly Model workflow. If you don't have a High-Poly model available, just import the same model as "High definition mesh" and "Low definitions mesh".
Click on "High definition meshes" and right-click into the window, then click on "Add meshes" and browse for your model.Then do the same with "Low definition meshes".Once you imported your meshes the xNormal window should look like this:Next click on "Baking options" to get to the baking window. Choose the folder you want to save the map to and the file format at "Output File". Set a resolution (biggest impact on quality and render-time) and Edge padding. Depending on the resolution it should be between 4 and 16 pixels. The dilation/edge padding should not bleed into other uv shells.
You can choose between three renderers "Optix/CUDA" is the fastest, but needs a lot more rays for good results than the others. "Open RL" is a lot faster than the standard "Bucket Renderer" and looks almost the same. There are small differences near UV Cuts and hard edges, you'll have to decide yourself which you prefer.
Check only the "Ambient occlusion" box.Click on the option box on the right of the "Ambient occlusion" box to set up the AO settings. You can change the look of the AO here, the most important setting however is the amount of rays. 512 rays should be enough for most cases, however depending on the resolution the two slower renderers (Open RL/Bucket) take a very long time to bake. If you go lower than 512 rays the CUDA renderer will have visible noise in the map.After you have set up the baker click on "Generate Maps" to bake. With the stats you can compare render times between the bakers and decide yourself what the best quality/performance balance is for your use cases and the hardware that you have access to.