Presets store reusable appearance and performance groups while retaining each surface's scene bindings and geometry.
Apply a built-in look#
| Preset | Starting look |
|---|---|
| Calm Lake | Gentle primary wave, subtle tint and vertical fade. |
| Flowing River | Faster primary wave for moving water. |
| Ocean | Larger primary wave and a secondary wave. |
| Small Puddle | Soft edges and a slower capture schedule. |
| Wet Floor | Lower opacity with blur and fade. |
| Clean Mirror | Mirror mode, full strength/opacity and optional effects off. |
- Select a Reflection Surface and assign a built-in/custom Reflection Preset to Apply preset.
- Inspect its mode and effects. Source Camera, size, shape, capture region, renderer selections and layer filters stay scene-specific.
- Tune your scene, choose Save custom preset, and save into your own project folder.
- Apply the saved asset to another surface or use
ApplyReflectionPresetat runtime.
Presets copy values; applied surfaces do not share one mutable Effects object. Changing Surface Type alone does not apply a preset. Clean Mirror uses its saved orientation, so inspect it when you need a vertical mirror.
What stays with the scene#
Camera, enabled state, position/size/shape, Capture Region, selected renderers, object/sorting layers, output sorting and Advanced bindings remain intact. Hybrid Dynamic Layers and Editor Preview are retained.
Mode, orientation, visual style, surface category, effects, quality and reusable optimization settings are copied. Keep custom preset assets outside the bundled Presets folder when updating the package.
Create a preset asset#
- Create a folder such as
Assets/Game/ReflectionPresets. - Right-click and choose Create > ERAGANX > 2D Water Reflection > Reflection Preset.
- Give it a useful name, then configure Mode, Visual Style, Surface Type and Mirror Orientation.
- Expand Effects, Quality and Optimization. Enable Visual Effects when optional effects are intended.
- Apply to a test surface, inspect its actual image and save. Alternatively save a custom preset from a configured surface.
A preset is a ScriptableObject settings asset. It does not contain scene cameras, exact Renderer selections, water geometry or a scene/texture.
Preset Effects#
The Effects group stores strength, opacity, color/tint, brightness, saturation, offset, both waves, ripples, blur, fades and edge softness. Visual Effects Enabled must be checked for optional controls to apply. In the supplied screenshot it is unchecked, so visible stored values are not all active.
Individual Enabled flags retain a configuration without applying it. Tint Strength zero preserves source color even if Tint Enabled is checked. Mode rules still apply: Mirror suppresses waves/ripples, Pixel Safe Distortion suppresses blur, and Lightweight requires compatible sources.
Preset Quality and Optimization#
| Field | Preset behavior |
|---|---|
| Quality values | Store numeric tier, resolution scale, texture cap, PPU and pixel flags. |
| Tier label | Does not automatically replace numbers in a preset. Set matching values or save a surface after applying a tier. |
| Optimization | Update rate, off-screen skipping, sharing, cache policy and interval are copied. |
| Editor Preview | Receiving surface keeps its own value. |
| Dynamic Layers | Receiving Hybrid surface keeps its mask; CaptureFrom clears the preset's stored mask because project layer indices vary. |
For a performance preset, apply a tier on a surface, inspect its actual values/effects, then save. Reapply to a second surface and verify its own camera and Hybrid layers remain assigned.