def draw(self, context): layout = self.layout settings = self.paint_settings(context) brush = settings.brush tex_slot = brush.texture_slot col = layout.column() col.template_ID_preview(brush, "texture", new="texture.new", rows=3, cols=8) if brush.use_paint_image: col.prop(brush, "use_fixed_texture") if context.sculpt_object: sculpt_brush_texture_settings(col, brush) # use_texture_overlay and texture_overlay_alpha col = layout.column(align=True) col.active = brush.sculpt_capabilities.has_overlay col.label(text="Overlay:") row = col.row() if brush.use_texture_overlay: row.prop(brush, "use_texture_overlay", toggle=True, text="", icon='RESTRICT_VIEW_OFF') else: row.prop(brush, "use_texture_overlay", toggle=True, text="", icon='RESTRICT_VIEW_ON') sub = row.row() sub.prop(brush, "texture_overlay_alpha", text="Alpha")
def draw(self, context): layout = self.layout idblock = context_tex_datablock(context) tex = context.texture_slot if not isinstance(idblock, Brush): split = layout.split(percentage=0.3) col = split.column() col.label(text="Coordinates:") col = split.column() col.prop(tex, "texture_coords", text="") if tex.texture_coords == 'ORCO': """ ob = context.object if ob and ob.type == 'MESH': split = layout.split(percentage=0.3) split.label(text="Mesh:") split.prop(ob.data, "texco_mesh", text="") """ elif tex.texture_coords == 'UV': split = layout.split(percentage=0.3) split.label(text="Map:") ob = context.object if ob and ob.type == 'MESH': split.prop_search(tex, "uv_layer", ob.data, "uv_textures", text="") else: split.prop(tex, "uv_layer", text="") elif tex.texture_coords == 'OBJECT': split = layout.split(percentage=0.3) split.label(text="Object:") split.prop(tex, "object", text="") if isinstance(idblock, Brush): if context.sculpt_object: sculpt_brush_texture_settings(layout, idblock) else: if isinstance(idblock, Material): split = layout.split(percentage=0.3) split.label(text="Projection:") split.prop(tex, "mapping", text="") split = layout.split() col = split.column() if tex.texture_coords in {'ORCO', 'UV'}: col.prop(tex, "use_from_dupli") if (idblock.type == 'VOLUME' and tex.texture_coords == 'ORCO'): col.prop(tex, "use_map_to_bounds") elif tex.texture_coords == 'OBJECT': col.prop(tex, "use_from_original") if (idblock.type == 'VOLUME'): col.prop(tex, "use_map_to_bounds") else: col.label() col = split.column() row = col.row() row.prop(tex, "mapping_x", text="") row.prop(tex, "mapping_y", text="") row.prop(tex, "mapping_z", text="") row = layout.row() row.column().prop(tex, "offset") row.column().prop(tex, "scale")