116 lines
4.8 KiB
Python
116 lines
4.8 KiB
Python
import bpy
|
|
from bpy.props import *
|
|
|
|
class TLM_CyclesSceneProperties(bpy.types.PropertyGroup):
|
|
|
|
tlm_mode : EnumProperty(
|
|
items = [('CPU', 'CPU', 'Use the processor to bake textures'),
|
|
('GPU', 'GPU', 'Use the graphics card to bake textures')],
|
|
name = "Device",
|
|
description="Select whether to use the CPU or the GPU for baking",
|
|
default="CPU")
|
|
|
|
tlm_quality : EnumProperty(
|
|
items = [('0', 'Exterior Preview', 'Best for fast exterior previz'),
|
|
('1', 'Interior Preview', 'Best for fast interior previz with bounces'),
|
|
('2', 'Medium', 'Best for complicated interior preview and final for isometric environments'),
|
|
('3', 'High', 'Best used for final baking for 3rd person games'),
|
|
('4', 'Production', 'Best for first-person and Archviz'),
|
|
('5', 'Custom', 'Uses the cycles sample settings provided the user')],
|
|
name = "Quality",
|
|
description="Select baking quality",
|
|
default="0")
|
|
|
|
targets = [('texture', 'Image texture', 'Build to image texture')]
|
|
if (2, 92, 0) >= bpy.app.version:
|
|
targets.append(('vertex', 'Vertex colors', 'Build to vertex colors'))
|
|
|
|
tlm_target : EnumProperty(
|
|
items = targets,
|
|
name = "Build Target",
|
|
description="Select target to build to",
|
|
default="texture")
|
|
|
|
tlm_resolution_scale : EnumProperty(
|
|
items = [('1', '1/1', '1'),
|
|
('2', '1/2', '2'),
|
|
('4', '1/4', '4'),
|
|
('8', '1/8', '8')],
|
|
name = "Resolution scale",
|
|
description="Select resolution scale",
|
|
default="2")
|
|
|
|
tlm_setting_supersample : EnumProperty(
|
|
items = [('none', 'None', 'No supersampling'),
|
|
('2x', '2x', 'Double supersampling'),
|
|
('4x', '4x', 'Quadruple supersampling')],
|
|
name = "Supersampling",
|
|
description="Supersampling scale",
|
|
default="none")
|
|
|
|
tlm_bake_mode : EnumProperty(
|
|
items = [('Background', 'Background', 'More overhead; allows for network.'),
|
|
('Foreground', 'Foreground', 'Direct in-session bake')],
|
|
name = "Baking mode",
|
|
description="Select bake mode",
|
|
default="Foreground")
|
|
|
|
caching_modes = [('Copy', 'Copy', 'More overhead; allows for network.')]
|
|
|
|
#caching_modes.append(('Cache', 'Cache', 'Cache in separate blend'),('Node', 'Node restore', 'EXPERIMENTAL! Use with care'))
|
|
|
|
tlm_caching_mode : EnumProperty(
|
|
items = caching_modes,
|
|
name = "Caching mode",
|
|
description="Select cache mode",
|
|
default="Copy")
|
|
|
|
tlm_directional_mode : EnumProperty(
|
|
items = [('None', 'None', 'No directional information'),
|
|
('Normal', 'Baked normal', 'Baked normal maps are taken into consideration')],
|
|
name = "Directional mode",
|
|
description="Select directional mode",
|
|
default="None")
|
|
|
|
tlm_lightmap_savedir : StringProperty(
|
|
name="Lightmap Directory",
|
|
description="TODO",
|
|
default="Lightmaps",
|
|
subtype="FILE_PATH")
|
|
|
|
tlm_dilation_margin : IntProperty(
|
|
name="Dilation margin",
|
|
default=4,
|
|
min=1,
|
|
max=64,
|
|
subtype='PIXEL')
|
|
|
|
tlm_exposure_multiplier : FloatProperty(
|
|
name="Exposure Multiplier",
|
|
default=0,
|
|
description="0 to disable. Multiplies GI value")
|
|
|
|
tlm_metallic_handling_mode : EnumProperty(
|
|
items = [('ignore', 'Ignore', 'No directional information'),
|
|
('clamp', 'Clamp', 'Clamp to value 0.9'),
|
|
('zero', 'Zero', 'Temporarily set to 0 during baking, and reapply after')],
|
|
name = "Metallic handling",
|
|
description="Set metallic handling mode to prevent black-baking.",
|
|
default="ignore")
|
|
|
|
tlm_lighting_mode : EnumProperty(
|
|
items = [('combined', 'Combined', 'Bake combined lighting'),
|
|
('combinedao', 'Combined+AO', 'Bake combined lighting with Ambient Occlusion'),
|
|
('indirect', 'Indirect', 'Bake indirect lighting'),
|
|
('indirectao', 'Indirect+AO', 'Bake indirect lighting with Ambient Occlusion'),
|
|
('ao', 'AO', 'Bake only Ambient Occlusion'),
|
|
('complete', 'Complete', 'Bake complete map')],
|
|
name = "Lighting mode",
|
|
description="TODO.",
|
|
default="combined")
|
|
|
|
tlm_premultiply_ao : BoolProperty(
|
|
name="Premultiply AO",
|
|
description="Ambient Occlusion will be premultiplied together with lightmaps, requiring less textures.",
|
|
default=True)
|