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")
-
-class MspGLLightProperties(bpy.types.Panel):
- bl_idname = "LIGHT_PT_mspgl_properties"
- bl_label = "MspGL properties"
- bl_space_type = "PROPERTIES"
- bl_region_type = "WINDOW"
- bl_context = "data"
-
- @classmethod
- def poll(cls, context):
- return context.active_object.type=="LIGHT"
-
- def draw(self, context):
- light = context.active_object.data
-
- if light.use_shadow:
- self.layout.prop(light, "shadow_map_size")
+ self.layout.prop(node, "use_mipmap")
+ self.layout.prop(node, "max_anisotropy")
class MspGLRenderProperties(bpy.types.Panel):
bl_idname = "WORLD_PT_mspgl_properties"
layout.label(text="({})".format(", ".join("{:.3f}".format(v) for v in uniform.values[:uniform.size])))
classes = [MspGLSceneProperties, MspGLMeshProperties, MspGLObjectProperties, MspGLMaterialProperties,
- MspGLTextureNodeProperties, MspGLLightProperties, MspGLRenderProperties, MspGLUniform, MspGLUniformList]
+ MspGLTextureNodeProperties, MspGLRenderProperties, MspGLUniform, MspGLUniformList]
def register_properties():
for c in classes:
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)