]> git.tdb.fi Git - libs/gl.git/blobdiff - blender/io_mspgl/properties.py
Remove default sampler from Texture
[libs/gl.git] / blender / io_mspgl / properties.py
index 9d46e1286c723374f7a9b94a7ba7ea0ee5104d70..744630f70ca8dd505073beb2ed86e735ba808cf9 100644 (file)
@@ -85,6 +85,8 @@ class MspGLMaterialProperties(bpy.types.Panel):
                self.layout.prop(mat, "render_mode")
                if mat.render_mode=='CUSTOM':
                        self.layout.prop(mat, "shader")
                self.layout.prop(mat, "render_mode")
                if mat.render_mode=='CUSTOM':
                        self.layout.prop(mat, "shader")
+                       if mat.shadow_method!='NONE':
+                               self.layout.prop(mat, "shadow_shader")
                elif mat.render_mode=='EXTERNAL':
                        self.layout.prop(mat, "technique")
                if mat.render_mode=='BUILTIN':
                elif mat.render_mode=='EXTERNAL':
                        self.layout.prop(mat, "technique")
                if mat.render_mode=='BUILTIN':
@@ -129,10 +131,8 @@ class MspGLTextureNodeProperties(bpy.types.Panel):
                if not node:
                        return
 
                if not node:
                        return
 
-               self.layout.prop(node, "default_filter")
-               if not node.default_filter:
-                       self.layout.prop(node, "use_mipmap")
-                       self.layout.prop(node, "max_anisotropy")
+               self.layout.prop(node, "use_mipmap")
+               self.layout.prop(node, "max_anisotropy")
 
 class MspGLLightProperties(bpy.types.Panel):
        bl_idname = "LIGHT_PT_mspgl_properties"
 
 class MspGLLightProperties(bpy.types.Panel):
        bl_idname = "LIGHT_PT_mspgl_properties"
@@ -151,16 +151,18 @@ class MspGLLightProperties(bpy.types.Panel):
                if light.use_shadow:
                        self.layout.prop(light, "shadow_map_size")
 
                if light.use_shadow:
                        self.layout.prop(light, "shadow_map_size")
 
-class MspGLWorldProperties(bpy.types.Panel):
+class MspGLRenderProperties(bpy.types.Panel):
        bl_idname = "WORLD_PT_mspgl_properties"
        bl_label = "MspGL properties"
        bl_space_type = "PROPERTIES"
        bl_region_type = "WINDOW"
        bl_idname = "WORLD_PT_mspgl_properties"
        bl_label = "MspGL properties"
        bl_space_type = "PROPERTIES"
        bl_region_type = "WINDOW"
-       bl_context = "world"
+       bl_context = "render"
 
        def draw(self, context):
 
        def draw(self, context):
-               world = context.scene.world
-               self.layout.prop(world, "use_hdr")
+               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")
 
 class MspGLUniform(bpy.types.PropertyGroup):
        name: bpy.props.StringProperty(name="Name", description="Name of the uniform variable")
@@ -179,7 +181,7 @@ class MspGLUniformList(bpy.types.UIList):
                        layout.label(text="({})".format(", ".join("{:.3f}".format(v) for v in uniform.values[:uniform.size])))
 
 classes = [MspGLSceneProperties, MspGLMeshProperties, MspGLObjectProperties, MspGLMaterialProperties,
                        layout.label(text="({})".format(", ".join("{:.3f}".format(v) for v in uniform.values[:uniform.size])))
 
 classes = [MspGLSceneProperties, MspGLMeshProperties, MspGLObjectProperties, MspGLMaterialProperties,
-       MspGLTextureNodeProperties, MspGLLightProperties, MspGLWorldProperties, MspGLUniform, MspGLUniformList]
+       MspGLTextureNodeProperties, MspGLLightProperties, MspGLRenderProperties, MspGLUniform, MspGLUniformList]
 
 def register_properties():
        for c in classes:
 
 def register_properties():
        for c in classes:
@@ -194,8 +196,8 @@ def register_properties():
                        ("CONTENTS", "Contents only", "Objects in the scene will be exported, but not the scene itself"),
                        ("SCENE", "Scene", "The scene will be exported"),
                        ("SEQUENCE", "Sequence", "The scene will be exported along with a rendering sequence")))
                        ("CONTENTS", "Contents only", "Objects in the scene will be exported, but not the scene itself"),
                        ("SCENE", "Scene", "The scene will be exported"),
                        ("SEQUENCE", "Sequence", "The scene will be exported along with a rendering sequence")))
-
-       bpy.types.World.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.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",
 
        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",
@@ -225,7 +227,8 @@ def register_properties():
                        ("CUSTOM", "Custom shader", "Use a custom shader"),
                        ("EXTERNAL", "External technique", "Use an externally defined technique")))
        bpy.types.Material.technique = bpy.props.StringProperty(name="Custom technique", description="Name of an external technique to use for rendering")
                        ("CUSTOM", "Custom shader", "Use a custom shader"),
                        ("EXTERNAL", "External technique", "Use an externally defined technique")))
        bpy.types.Material.technique = bpy.props.StringProperty(name="Custom technique", description="Name of an external technique to use for rendering")
-       bpy.types.Material.shader = bpy.props.StringProperty(name="Custom shader", description="Name of an external technique to use for rendering")
+       bpy.types.Material.shader = bpy.props.StringProperty(name="Custom shader", description="Name of a custom shader to use for rendering")
+       bpy.types.Material.shadow_shader = bpy.props.StringProperty(name="Custom shadow shader", description="Name of a custom shader to use for shadow pass")
        bpy.types.Material.receive_shadows = bpy.props.BoolProperty(name="Receive shadows", description="Receive shadows from a shadow map", default=True)
        bpy.types.Material.image_based_lighting = bpy.props.BoolProperty(name="Image based lighting", description="Use an environment map for ambient lighting", default=False)
        bpy.types.Material.array_atlas = bpy.props.BoolProperty(name="Texture array atlas", description="The material is stored in a texture array")
        bpy.types.Material.receive_shadows = bpy.props.BoolProperty(name="Receive shadows", description="Receive shadows from a shadow map", default=True)
        bpy.types.Material.image_based_lighting = bpy.props.BoolProperty(name="Image based lighting", description="Use an environment map for ambient lighting", default=False)
        bpy.types.Material.array_atlas = bpy.props.BoolProperty(name="Texture array atlas", description="The material is stored in a texture array")
@@ -234,7 +237,6 @@ def register_properties():
        bpy.types.Material.uniforms = bpy.props.CollectionProperty(type=MspGLUniform, name="Uniform", description="Uniform variables to add to the technique")
        bpy.types.Material.active_uniform_index = bpy.props.IntProperty("Active uniform index")
 
        bpy.types.Material.uniforms = bpy.props.CollectionProperty(type=MspGLUniform, name="Uniform", description="Uniform variables to add to the technique")
        bpy.types.Material.active_uniform_index = bpy.props.IntProperty("Active uniform index")
 
-       bpy.types.ShaderNodeTexImage.default_filter = bpy.props.BoolProperty(name="Default filter", description="Let the loading program determine filtering options")
        bpy.types.ShaderNodeTexImage.use_mipmap = bpy.props.BoolProperty(name="Use mipmaps", description="Use mipmaps (automatically generated) for the texture", default=True)
        bpy.types.ShaderNodeTexImage.max_anisotropy = bpy.props.FloatProperty(name="Maximum anisotropy", description="Maximum anisotropy to use in texture filtering", min=1, max=16, default=1)
 
        bpy.types.ShaderNodeTexImage.use_mipmap = bpy.props.BoolProperty(name="Use mipmaps", description="Use mipmaps (automatically generated) for the texture", default=True)
        bpy.types.ShaderNodeTexImage.max_anisotropy = bpy.props.FloatProperty(name="Maximum anisotropy", description="Maximum anisotropy to use in texture filtering", min=1, max=16, default=1)