Source projects and authoring
Source projects
A job can open an existing .ssa by copying it into the new job directory before opening it. The source file is never opened by Sampler and stays byte-identical.
{
"schema": 1,
"directory": "jobs/rock-variants",
"project": {
"source": "projects/Rock.ssa",
"name": "RockCopy",
"assets": ["Rock"]
},
"steps": [
{"action": "set_metadata", "asset": "Rock", "author": "Cavi",
"category": "rock", "tags": ["game", "pbr"]},
{"action": "export", "asset": "Rock", "target": "unity", "directory": "unity"},
{"action": "export", "asset": "Rock", "target": "blender", "directory": "blender"}
]
}namedefaults to the source stem; the copy is written into the job directory.assetsis optional. When present, step asset references are validated before
launch; when absent, runtime remains authoritative.
validate --check-projectverifies the source copy's assets, layers, parameters,
presets, filters, materials, channels and blend parameters without mutating the source. Use it for source jobs; --check-sampler alone defers project-local filter/material checks to this pass.
- Source and project copy hashes are recorded in the manifest.
project.assetcannot be combined withsource; usecreate_assetsteps.
Authoring depth
{"action": "set_metadata", "asset": "Rock", "description": "weathered granite",
"physical_size": [1.0, 2.0, 3.0], "custom_metadata": {"engine": "unity"}}
{"action": "set_channels", "asset": "Rock", "layer": "Tiling",
"applies_to": ["baseColor"], "blend_applies_to": ["baseColor"]}
{"action": "set_blend_parameters", "asset": "Rock", "layer": "Concrete Cast",
"parameters": {"blend_top_material_scale": 2}}sampler_inspect assetreportsenum_valuesandvalue_labels; integer and enum
parameters can be set by label as well as by number.
applies_toandblend_applies_toaccept canonical channel IDs and unambiguous
labels from the inspected layer (applied_channels/output_usages/usage_labels). Unknown or ambiguous names are rejected.
- Blend mode is read-only after insertion. Choose it with
insert_material; the
authoring steps cover applies-to channels and blend parameters. Inspect a layer's blend_parameters for the available identifiers; they depend on the blend mode.