Reference navigation
On this page
StudioLook
Studio lighting, material, and global effects presets with explicit per-setting overrides.
from proteinmotion import StudioLookConstructor
StudioLook(
lighting: str='studio',
material: str='glossy',
effects: str | None=None,
key: float=None,
key_color: tuple=None,
key_direction: tuple=None,
fill: float=None,
fill_color: tuple=None,
fill_direction: tuple=None,
rim: float=None,
rim_color: tuple=None,
rim_direction: tuple=None,
ambient: float=None,
sky: tuple=None,
ground: tuple=None,
roughness: float=None,
specular: float=None,
clearcoat: float=None,
clearcoat_roughness: float=None,
ambient_occlusion: float=None,
bloom: float | str | None=None,
bloom_threshold: float | None=None,
bloom_radius: float | None=None,
grain: float | str | None=None,
grain_size: float | None=None,
grain_fps: float=24.0,
grain_seed: int=0,
halation: float | str | None=None,
halation_threshold: float | None=None,
halation_radius: float | None=None,
halation_color: tuple=(1.0, 0.22, 0.045),
knee: float=0.72,
vignette: float=0.0,
surface_mode: str='molecular',
surface_inflation: float=0.45,
surface_blobbiness: float=1.6,
surface_voxels: int=3000000,
cartoon_style: str='classic',
)Parameters
| Parameter | Default | Description |
|---|---|---|
lightingstr | 'studio' | Lighting preset: studio, soft, dramatic, or flat. |
materialstr | 'glossy' | Material preset: rough, medium, or glossy. |
effectsstr | None | None | Effects recipe: clean, subtle, film, or dreamy. None retains lighting-dependent defaults. |
keyfloat | None | Key-light intensity override. |
key_colortuple | None | Key-light RGB triple or hex color. |
key_directiontuple | None | Key-light direction in camera right/up/toward-camera coordinates. |
fillfloat | None | Fill-light intensity override. |
fill_colortuple | None | Fill-light RGB triple or hex color. |
fill_directiontuple | None | Fill-light direction in camera coordinates. |
rimfloat | None | Rim-light intensity, or a cutaway rim RGB/hex color for Reveal. |
rim_colortuple | None | Rim-light RGB triple or hex color. |
rim_directiontuple | None | Rim-light direction in camera coordinates. |
ambientfloat | None | Ambient illumination intensity. |
skytuple | None | Hemisphere sky RGB triple or hex color. |
groundtuple | None | Hemisphere ground RGB triple or hex color. |
roughnessfloat | None | Surface roughness in [0.02, 1]; larger values broaden highlights. |
specularfloat | None | Specular reflection strength. |
clearcoatfloat | None | Clearcoat reflection strength. |
clearcoat_roughnessfloat | None | Clearcoat roughness in [0.02, 1]. |
ambient_occlusionfloat | None | Screen-space ambient-occlusion strength in [0, 1]. |
bloomfloat | str | None | None | Bloom preset or numeric strength; zero disables it. |
bloom_thresholdfloat | None | None | Brightness threshold for bloom. |
bloom_radiusfloat | None | None | Bloom spread multiplier. |
grainfloat | str | None | None | Luminance-based monochrome grain preset or strength; zero disables it. |
grain_sizefloat | None | None | Grain size in 1080p design pixels. |
grain_fpsfloat | 24.0 | Grain temporal refresh frequency, independent of output FPS. |
grain_seedint | 0 | Deterministic unsigned 32-bit grain seed. |
halationfloat | str | None | None | Halation preset or numeric strength; zero disables it. |
halation_thresholdfloat | None | None | Brightness threshold for halation. |
halation_radiusfloat | None | None | Halation radius in 1080p design pixels. |
halation_colortuple | (1.0, 0.22, 0.045) | Halation RGB triple or hex color. |
kneefloat | 0.72 | Highlight compression knee in [0, 0.999]. |
vignettefloat | 0.0 | Vignette strength in [0, 1]. |
surface_modestr | 'molecular' | molecular uses VDW/SAS/SES meshes; density uses artistic density surfaces. |
surface_inflationfloat | 0.45 | Additional atom radius in Å, for density surface mode only. |
surface_blobbinessfloat | 1.6 | Density-surface falloff control, for density mode only. |
surface_voxelsint | 3000000 | Maximum density-surface voxel count. |
cartoon_stylestr | 'classic' | classic uses helix bands, sheet arrows, and loop tubes; legacy retains the older sweep. |
Notes
Derive looks with with_presets() or dataclasses.replace(). Preset-derived fields are re-resolved, explicit overrides remain. Colors accept hex or RGB. Create a new renderer after changing shader or geometry settings; post effects use live uniforms.
Attributes
| Name | Description |
|---|---|
lighting | Lighting preset: studio, soft, dramatic, or flat. |
material | Material preset: rough, medium, or glossy. |
effects | Effects recipe: clean, subtle, film, or dreamy. None retains lighting-dependent defaults. |
key | Key-light intensity override. |
key_color | Key-light RGB triple or hex color. |
key_direction | Key-light direction in camera right/up/toward-camera coordinates. |
fill | Fill-light intensity override. |
fill_color | Fill-light RGB triple or hex color. |
fill_direction | Fill-light direction in camera coordinates. |
rim | Rim-light intensity, or a cutaway rim RGB/hex color for Reveal. |
rim_color | Rim-light RGB triple or hex color. |
rim_direction | Rim-light direction in camera coordinates. |
ambient | Ambient illumination intensity. |
sky | Hemisphere sky RGB triple or hex color. |
ground | Hemisphere ground RGB triple or hex color. |
roughness | Surface roughness in [0.02, 1]; larger values broaden highlights. |
specular | Specular reflection strength. |
clearcoat | Clearcoat reflection strength. |
clearcoat_roughness | Clearcoat roughness in [0.02, 1]. |
ambient_occlusion | Screen-space ambient-occlusion strength in [0, 1]. |
bloom | Bloom preset or numeric strength; zero disables it. |
bloom_threshold | Brightness threshold for bloom. |
bloom_radius | Bloom spread multiplier. |
grain | Luminance-based monochrome grain preset or strength; zero disables it. |
grain_size | Grain size in 1080p design pixels. |
grain_fps | Grain temporal refresh frequency, independent of output FPS. |
grain_seed | Deterministic unsigned 32-bit grain seed. |
halation | Halation preset or numeric strength; zero disables it. |
halation_threshold | Brightness threshold for halation. |
halation_radius | Halation radius in 1080p design pixels. |
halation_color | Halation RGB triple or hex color. |
knee | Highlight compression knee in [0, 0.999]. |
vignette | Vignette strength in [0, 1]. |
surface_mode | molecular uses VDW/SAS/SES meshes; density uses artistic density surfaces. |
surface_inflation | Additional atom radius in Å, for density surface mode only. |
surface_blobbiness | Density-surface falloff control, for density mode only. |
surface_voxels | Maximum density-surface voxel count. |
cartoon_style | classic uses helix bands, sheet arrows, and loop tubes; legacy retains the older sweep. |
Methods and properties
| Name | Description |
|---|---|
| with_presets()method | Derive a look while preserving explicit overrides. |
| validate()method | Reject invalid values before creating GPU resources or compiling shaders. |
StudioLook.with_presets(**changes)Derive a look while preserving explicit overrides.
| Parameter | Default | Description |
|---|---|---|
**changes | — | Named presets or explicit field overrides for a derived StudioLook. |
StudioLook.validate()Reject invalid values before creating GPU resources or compiling shaders.