From 6571713ddb7e1f091c30a43b315fb37778605ed2 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 18 Dec 2012 17:46:42 +0000 Subject: Ambient occlusion baker from multi-resolution mesh This implements AO baking directly from multi-resolution mesh with much less memory overhead than regular baker. Uses rays distribution implementation from Morten Mikkelsen, raycast is based on RayObject also used by Blender Internal. Works in single-thread yet, multi-threading would be implemented later. --- release/scripts/startup/bl_ui/properties_render.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'release/scripts/startup/bl_ui/properties_render.py') diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py index 9814dd7e902..a33bc314c31 100644 --- a/release/scripts/startup/bl_ui/properties_render.py +++ b/release/scripts/startup/bl_ui/properties_render.py @@ -573,7 +573,7 @@ class RENDER_PT_bake(RenderButtonsPanel, Panel): layout.prop(rd, "bake_type") multires_bake = False - if rd.bake_type in ['NORMALS', 'DISPLACEMENT']: + if rd.bake_type in ['NORMALS', 'DISPLACEMENT', 'AO']: layout.prop(rd, "use_bake_multires") multires_bake = rd.use_bake_multires @@ -602,11 +602,19 @@ class RENDER_PT_bake(RenderButtonsPanel, Panel): sub.prop(rd, "bake_distance") sub.prop(rd, "bake_bias") else: - if rd.bake_type == 'DISPLACEMENT': - layout.prop(rd, "use_bake_lores_mesh") + split = layout.split() - layout.prop(rd, "use_bake_clear") - layout.prop(rd, "bake_margin") + col = split.column() + col.prop(rd, "use_bake_clear") + col.prop(rd, "bake_margin") + + if rd.bake_type == 'DISPLACEMENT': + col = split.column() + col.prop(rd, "use_bake_lores_mesh") + if rd.bake_type == 'AO': + col = split.column() + col.prop(rd, "bake_bias") + col.prop(rd, "bake_rays_number") if __name__ == "__main__": # only for live edit. -- cgit v1.2.3