Merge branch 'master' into blender2.8
authorBrecht Van Lommel <brechtvanlommel@gmail.com>
Mon, 29 Oct 2018 12:26:09 +0000 (13:26 +0100)
committerBrecht Van Lommel <brechtvanlommel@gmail.com>
Mon, 29 Oct 2018 12:26:09 +0000 (13:26 +0100)
1  2 
intern/cycles/blender/addon/properties.py

index 05f94ebc37a7536f455154c031d18a5fa6bf9e2a,45d6e359a819ee150ec582dab1eb09e3ebbfa277..dfb77233ed758981f24a04183afecd8a69e4f024
@@@ -1228,163 -1214,203 +1228,163 @@@ def update_render_passes(self, context)
  
  
  class CyclesRenderLayerSettings(bpy.types.PropertyGroup):
 -    @classmethod
 -    def register(cls):
 -        bpy.types.SceneRenderLayer.cycles = PointerProperty(
 -            name="Cycles SceneRenderLayer Settings",
 -            description="Cycles SceneRenderLayer Settings",
 -            type=cls,
 -        )
 -        cls.pass_debug_bvh_traversed_nodes = BoolProperty(
 -            name="Debug BVH Traversed Nodes",
 -            description="Store Debug BVH Traversed Nodes pass",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.pass_debug_bvh_traversed_instances = BoolProperty(
 -            name="Debug BVH Traversed Instances",
 -            description="Store Debug BVH Traversed Instances pass",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.pass_debug_bvh_intersections = BoolProperty(
 -            name="Debug BVH Intersections",
 -            description="Store Debug BVH Intersections",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.pass_debug_ray_bounces = BoolProperty(
 -            name="Debug Ray Bounces",
 -            description="Store Debug Ray Bounces pass",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.pass_debug_render_time = BoolProperty(
 -            name="Debug Render Time",
 -            description="Render time in milliseconds per sample and pixel",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.use_pass_volume_direct = BoolProperty(
 -            name="Volume Direct",
 -            description="Deliver direct volumetric scattering pass",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.use_pass_volume_indirect = BoolProperty(
 -            name="Volume Indirect",
 -            description="Deliver indirect volumetric scattering pass",
 -            default=False,
 -            update=update_render_passes,
 -        )
  
 -        cls.use_denoising = BoolProperty(
 -            name="Use Denoising",
 -            description="Denoise the rendered image",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.denoising_diffuse_direct = BoolProperty(
 -            name="Diffuse Direct",
 -            description="Denoise the direct diffuse lighting",
 -            default=True,
 -        )
 -        cls.denoising_diffuse_indirect = BoolProperty(
 -            name="Diffuse Indirect",
 -            description="Denoise the indirect diffuse lighting",
 -            default=True,
 -        )
 -        cls.denoising_glossy_direct = BoolProperty(
 -            name="Glossy Direct",
 -            description="Denoise the direct glossy lighting",
 -            default=True,
 -        )
 -        cls.denoising_glossy_indirect = BoolProperty(
 -            name="Glossy Indirect",
 -            description="Denoise the indirect glossy lighting",
 -            default=True,
 -        )
 -        cls.denoising_transmission_direct = BoolProperty(
 -            name="Transmission Direct",
 -            description="Denoise the direct transmission lighting",
 -            default=True,
 -        )
 -        cls.denoising_transmission_indirect = BoolProperty(
 -            name="Transmission Indirect",
 -            description="Denoise the indirect transmission lighting",
 -            default=True,
 -        )
 -        cls.denoising_subsurface_direct = BoolProperty(
 -            name="Subsurface Direct",
 -            description="Denoise the direct subsurface lighting",
 -            default=True,
 -        )
 -        cls.denoising_subsurface_indirect = BoolProperty(
 -            name="Subsurface Indirect",
 -            description="Denoise the indirect subsurface lighting",
 -            default=True,
 -        )
 -        cls.denoising_strength = FloatProperty(
 -            name="Denoising Strength",
 -            description="Controls neighbor pixel weighting for the denoising filter (lower values preserve more detail, but aren't as smooth)",
 -            min=0.0, max=1.0,
 -            default=0.5,
 -        )
 -        cls.denoising_feature_strength = FloatProperty(
 -            name="Denoising Feature Strength",
 -            description="Controls removal of noisy image feature passes (lower values preserve more detail, but aren't as smooth)",
 -            min=0.0, max=1.0,
 -            default=0.5,
 -        )
 -        cls.denoising_radius = IntProperty(
 -            name="Denoising Radius",
 -            description="Size of the image area that's used to denoise a pixel (higher values are smoother, but might lose detail and are slower)",
 -            min=1, max=25,
 -            default=8,
 -        )
 -        cls.denoising_relative_pca = BoolProperty(
 -            name="Relative filter",
 -            description="When removing pixels that don't carry information, use a relative threshold instead of an absolute one (can help to reduce artifacts, but might cause detail loss around edges)",
 -            default=False,
 -        )
 -        cls.denoising_store_passes = BoolProperty(
 -            name="Store denoising passes",
 -            description="Store the denoising feature passes and the noisy image",
 -            default=False,
 -            update=update_render_passes,
 -        )
 -        cls.use_pass_crypto_object = BoolProperty(
 -                name="Cryptomatte Object",
 -                description="Render cryptomatte object pass, for isolating objects in compositing",
 -                default=False,
 -                update=update_render_passes,
 -                )
 -        cls.use_pass_crypto_material = BoolProperty(
 -                name="Cryptomatte Material",
 -                description="Render cryptomatte material pass, for isolating materials in compositing",
 -                default=False,
 -                update=update_render_passes,
 -                )
 -        cls.use_pass_crypto_asset = BoolProperty(
 -                name="Cryptomatte Asset",
 -                description="Render cryptomatte asset pass, for isolating groups of objects with the same parent",
 -                default=False,
 -                update=update_render_passes,
 -                )
 -        cls.pass_crypto_depth = IntProperty(
 -                name="Cryptomatte Levels",
 -                description="Sets how many unique objects can be distinguished per pixel",
 -                default=6, min=2, max=16, step=2,
 -                update=update_render_passes,
 -                )
 -        cls.pass_crypto_accurate = BoolProperty(
 -                name="Cryptomatte Accurate",
 -                description="Gerenate a more accurate Cryptomatte pass. CPU only, may render slower and use more memory",
 -                default=True,
 -                update=update_render_passes,
 -                )
 -    @classmethod
 -    def unregister(cls):
 -        del bpy.types.SceneRenderLayer.cycles
 +    pass_debug_bvh_traversed_nodes: BoolProperty(
 +        name="Debug BVH Traversed Nodes",
 +        description="Store Debug BVH Traversed Nodes pass",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    pass_debug_bvh_traversed_instances: BoolProperty(
 +        name="Debug BVH Traversed Instances",
 +        description="Store Debug BVH Traversed Instances pass",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    pass_debug_bvh_intersections: BoolProperty(
 +        name="Debug BVH Intersections",
 +        description="Store Debug BVH Intersections",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    pass_debug_ray_bounces: BoolProperty(
 +        name="Debug Ray Bounces",
 +        description="Store Debug Ray Bounces pass",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    pass_debug_render_time: BoolProperty(
 +        name="Debug Render Time",
 +        description="Render time in milliseconds per sample and pixel",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    use_pass_volume_direct: BoolProperty(
 +        name="Volume Direct",
 +        description="Deliver direct volumetric scattering pass",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    use_pass_volume_indirect: BoolProperty(
 +        name="Volume Indirect",
 +        description="Deliver indirect volumetric scattering pass",
 +        default=False,
 +        update=update_render_passes,
 +    )
  
-         description="Cryptomatte Object pass",
 +    use_denoising: BoolProperty(
 +        name="Use Denoising",
 +        description="Denoise the rendered image",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    denoising_diffuse_direct: BoolProperty(
 +        name="Diffuse Direct",
 +        description="Denoise the direct diffuse lighting",
 +        default=True,
 +    )
 +    denoising_diffuse_indirect: BoolProperty(
 +        name="Diffuse Indirect",
 +        description="Denoise the indirect diffuse lighting",
 +        default=True,
 +    )
 +    denoising_glossy_direct: BoolProperty(
 +        name="Glossy Direct",
 +        description="Denoise the direct glossy lighting",
 +        default=True,
 +    )
 +    denoising_glossy_indirect: BoolProperty(
 +        name="Glossy Indirect",
 +        description="Denoise the indirect glossy lighting",
 +        default=True,
 +    )
 +    denoising_transmission_direct: BoolProperty(
 +        name="Transmission Direct",
 +        description="Denoise the direct transmission lighting",
 +        default=True,
 +    )
 +    denoising_transmission_indirect: BoolProperty(
 +        name="Transmission Indirect",
 +        description="Denoise the indirect transmission lighting",
 +        default=True,
 +    )
 +    denoising_subsurface_direct: BoolProperty(
 +        name="Subsurface Direct",
 +        description="Denoise the direct subsurface lighting",
 +        default=True,
 +    )
 +    denoising_subsurface_indirect: BoolProperty(
 +        name="Subsurface Indirect",
 +        description="Denoise the indirect subsurface lighting",
 +        default=True,
 +    )
 +    denoising_strength: FloatProperty(
 +        name="Denoising Strength",
 +        description="Controls neighbor pixel weighting for the denoising filter (lower values preserve more detail, but aren't as smooth)",
 +        min=0.0, max=1.0,
 +        default=0.5,
 +    )
 +    denoising_feature_strength: FloatProperty(
 +        name="Denoising Feature Strength",
 +        description="Controls removal of noisy image feature passes (lower values preserve more detail, but aren't as smooth)",
 +        min=0.0, max=1.0,
 +        default=0.5,
 +    )
 +    denoising_radius: IntProperty(
 +        name="Denoising Radius",
 +        description="Size of the image area that's used to denoise a pixel (higher values are smoother, but might lose detail and are slower)",
 +        min=1, max=25,
 +        default=8,
 +    )
 +    denoising_relative_pca: BoolProperty(
 +        name="Relative filter",
 +        description="When removing pixels that don't carry information, use a relative threshold instead of an absolute one (can help to reduce artifacts, but might cause detail loss around edges)",
 +        default=False,
 +    )
 +    denoising_store_passes: BoolProperty(
 +        name="Store denoising passes",
 +        description="Store the denoising feature passes and the noisy image",
 +        default=False,
 +        update=update_render_passes,
 +    )
 +    use_pass_crypto_object: BoolProperty(
 +        name="Cryptomatte Object",
-         description="Cryptomatte Material pass",
++        description="Render cryptomatte object pass, for isolating objects in compositing",
 +        default=False,
 +        update=update_render_passes,
 +        )
 +    use_pass_crypto_material: BoolProperty(
 +        name="Cryptomatte Material",
-         description="Cryptomatte Asset pass",
++        description="Render cryptomatte material pass, for isolating materials in compositing",
 +        default=False,
 +        update=update_render_passes,
 +        )
 +    use_pass_crypto_asset: BoolProperty(
 +        name="Cryptomatte Asset",
-         description="Describes how many unique IDs per pixel are written to Cryptomatte",
++        description="Render cryptomatte asset pass, for isolating groups of objects with the same parent",
 +        default=False,
 +        update=update_render_passes,
 +        )
 +    pass_crypto_depth: IntProperty(
 +        name="Cryptomatte Levels",
-         description="Gerenate a more accurate Cryptomatte pass, CPU only, may render slower and use more memory",
++        description="Sets how many unique objects can be distinguished per pixel",
 +        default=6, min=2, max=16, step=2,
 +        update=update_render_passes,
 +        )
 +    pass_crypto_accurate: BoolProperty(
 +        name="Cryptomatte Accurate",
++        description="Gerenate a more accurate Cryptomatte pass. CPU only, may render slower and use more memory",
 +        default=True,
 +        update=update_render_passes,
 +        )
  
 -class CyclesCurveSettings(bpy.types.PropertyGroup):
      @classmethod
      def register(cls):
 -        bpy.types.ParticleSettings.cycles = PointerProperty(
 -            name="Cycles Hair Settings",
 -            description="Cycles hair settings",
 +        bpy.types.ViewLayer.cycles = PointerProperty(
 +            name="Cycles ViewLayer Settings",
 +            description="Cycles ViewLayer Settings",
              type=cls,
          )
 -        cls.radius_scale = FloatProperty(
 -            name="Radius Scaling",
 -            description="Multiplier of width properties",
 -            min=0.0, max=1000.0,
 -            default=0.01,
 -        )
 -        cls.root_width = FloatProperty(
 -            name="Root Size",
 -            description="Strand's width at root",
 -            min=0.0, max=1000.0,
 -            default=1.0,
 -        )
 -        cls.tip_width = FloatProperty(
 -            name="Tip Multiplier",
 -            description="Strand's width at tip",
 -            min=0.0, max=1000.0,
 -            default=0.0,
 -        )
 -        cls.shape = FloatProperty(
 -            name="Strand Shape",
 -            description="Strand shape parameter",
 -            min=-1.0, max=1.0,
 -            default=0.0,
 -        )
 -        cls.use_closetip = BoolProperty(
 -            name="Close tip",
 -            description="Set tip radius to zero",
 -            default=True,
 -        )
  
      @classmethod
      def unregister(cls):