ss.sub.append(seq_res.create_reference_statement("scene", content))
seq_res.statements.append(ss)
+ if scene.use_ao:
+ ss = Statement("ambient_occlusion")
+ ss.sub.append(Statement("occlusion_radius", scene.ao_distance))
+ ss.sub.append(Statement("samples", scene.ao_samples))
+ seq_res.statements.append(ss)
+
if scene.use_hdr:
seq_res.statements.append(Statement("bloom"))
ss = Statement("colorcurve")
def draw(self, context):
scene = context.scene
self.layout.prop(scene, "use_hdr")
+ if scene.eevee.use_gtao:
+ self.layout.prop(scene, "ao_samples")
class MspGLUniform(bpy.types.PropertyGroup):
name: bpy.props.StringProperty(name="Name", description="Name of the uniform variable")
("SCENE", "Scene", "The scene will be exported"),
("SEQUENCE", "Sequence", "The scene will be exported along with a rendering sequence")))
bpy.types.Scene.use_hdr = bpy.props.BoolProperty(name="High dynamic range", description="Use a range render target with a floating point format", default=False)
+ bpy.types.Scene.ao_samples = bpy.props.IntProperty(name="Ambient occlusion samples", description="Number of samples to use for ambient occlusion", min=8, max=128, default=32)
bpy.types.Mesh.winding_test = bpy.props.BoolProperty(name="Winding test", description="Perform winding test to skip back faces")
bpy.types.Mesh.smoothing = bpy.props.EnumProperty(name="Smoothing", description="Smoothing method to use", default="MSPGL",
self.exposure = scene.view_settings.exposure
self.use_hdr = scene.use_hdr
+ self.use_ao = scene.eevee.use_gtao
+ self.ao_distance = scene.eevee.gtao_distance
+ self.ao_samples = scene.ao_samples
if scene.world:
out_node = next((n for n in scene.world.node_tree.nodes if n.type=='OUTPUT_WORLD'), None)
if out_node: