# Shadow Step Controller

| **roperty**                      | **Description**                                                                      |
| -------------------------------- | ------------------------------------------------------------------------------------ |
| **defaultSkinnedMesh**           | Primary skinned mesh renderer used for dissolve animations and baking clones.        |
| **additionalSkinnedMeshes**      | Extra skinned mesh renderers that also receive materials and dissolve changes.       |
| **dissolveProperty**             | Shader property name used to control the dissolve value via MaterialPropertyBlock.   |
| **travelBlocksBlinkWhileActive** | When true, pressing R is blocked while a full shadow‑step sequence is active.        |
| **disappearMode**                | Mode for the disappear stage (None or VFX).                                          |
| **travelMode**                   | Mode for the travel stage (VFX or Clone).                                            |
| **reappearMode**                 | Mode for the reappear stage (None or VFX).                                           |
| **characterEffect**              | Whether to play an additional character VFX during travel.                           |
| **disappearTime**                | Duration in seconds of the disappear stage.                                          |
| **travelTime**                   | Duration in seconds of the travel stage.                                             |
| **reappearTime**                 | Duration in seconds of the reappear stage.                                           |
| **disappearCurve**               | Animation curve used to interpolate dissolve during disappear.                       |
| **reappearCurve**                | Animation curve used to interpolate dissolve during reappear.                        |
| **effectMaterials**              | Materials applied to configured renderers while the effect runs.                     |
| **vfxDisappear**                 | GameObject (prefab or scene) that contains the VisualEffect for disappear.           |
| **vfxTravel**                    | GameObject (prefab or scene) that contains the VisualEffect for travel.              |
| **vfxReappear**                  | GameObject (prefab or scene) that contains the VisualEffect for reappear.            |
| **vfxDisappearBoolParam**        | Boolean parameter name in the disappear VFX graph to toggle.                         |
| **vfxTravelBoolParam**           | Boolean parameter name in the travel VFX graph to toggle.                            |
| **vfxReappearBoolParam**         | Boolean parameter name in the reappear VFX graph to toggle.                          |
| **characterVfx**                 | GameObject containing the optional character VisualEffect.                           |
| **characterVfxBoolParam**        | Boolean parameter name in the character VFX graph to toggle.                         |
| **travelVfxStartDelay**          | Delay in seconds before travel/character VFX start after pressing R (0 = immediate). |
| **cloneSpawnMode**               | Clone spawn behavior: FixedCount or Continuous.                                      |
| **cloneInitialDelay**            | Delay in seconds before the first clone spawns (counts toward travelTime).           |
| **continuousInterval**           | Interval in seconds between clones when using continuous spawn.                      |
| **fixedCloneCount**              | Number of clones spawned in FixedCount mode.                                         |
| **cloneLifetime**                | Lifetime in seconds of each clone; controls clone dissolve animation.                |
| **cloneLifetimeCurve**           | Curve controlling clone dissolve progression over clone lifetime.                    |
| **cloneMaterials**               | Materials applied to spawned clones; fallback uses source materials.                 |
| **spawnClonesFromAllMeshes**     | If true, each spawn step creates clones from every configured skinned mesh.          |
| **cloneBoundsExpand**            | Extra bounds expansion applied to baked clone meshes to reduce frustum culling.      |
| **clonePositionOffset**          | World‑space position offset applied to each spawned clone.                           |
| **cloneRotationOffset**          | Rotation offset (Euler degrees) applied to each spawned clone.                       |
| **cloneOffsetRandomness**        | Randomness factor for clone offsets (0 = fixed offset).                              |
| **TravelCooldownRemaining**      | Read‑only remaining cooldown time for the full sequence (seconds).                   |
