Materials

Example Materials

Blender Materials

You can create a material and then override any of it’s properties. When you start prettymol compositing is enabled so you can use emission to make objects glow. The material is based on Blender’s Principled BSDF which should allow you to create essentially any arbitrary material surface.

class BSDFPrincipled():
    base_color: Tuple[float, float, float, float] = (0.8, 0.8, 0.8, 1.0)
    metallic: float = 0.0
    roughness: float = 0.2
    ior: float = 1.45
    alpha: float = 1.0
    normal: Tuple[float, float, float] = (0.0, 0.0, 0.0)
    weight: float = 0.0
    diffuse_roughness: float = 0.0
    subsurface_weight: float = 0.0
    subsurface_radius: Tuple[float, float, float] = (1.0, 0.2, 0.1)
    subsurface_scale: float = 0.05
    subsurface_ior: float = 1.4
    subsurface_anisotropy: float = 0.0
    specular_ior_level: float = 0.5
    specular_tint: Tuple[float, float, float, float] = (1.0, 1.0, 1.0, 1.0)
    anisotropic: float = 0.0
    anisotropic_rotation: float = 0.0
    tangent: Tuple[float, float, float] = (0.0, 0.0, 0.0)
    transmission_weight: float = 0.0
    coat_weight: float = 0.0
    coat_roughness: float = 0.03
    coat_ior: float = 1.5
    coat_tint: Tuple[float, float, float, float] = (1.0, 1.0, 1.0, 1.0)
    coat_normal: Tuple[float, float, float] = (0.0, 0.0, 0.0)
    sheen_weight: float = 0.0
    sheen_roughness: float = 0.5
    sheen_tint: Tuple[float, float, float, float] = (0.5, 0.5, 0.5, 1.0)
    emission_color: Tuple[float, float, float, float] = (0.0, 0.0, 0.0, 1.0)
    emission_strength: float = 0.0
    thin_film_thickness: float = 0.0
    thin_film_ior: float = 1.3