//
// Crest Water System
// Copyright © 2024 Wave Harmonic. All rights reserved.
namespace WaveHarmonic.Crest.Generated
{
enum CollisionLayer
{
///
/// Include all displacement.
///
Everything,
///
/// Only include Animated Waves.
///
AfterAnimatedWaves,
///
/// Include Animated Waves and Dynamic Waves.
///
AfterDynamicWaves,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum CollisionLayers
{
///
/// All layers.
///
Everything,
///
/// No extra layers (ie single layer).
///
Nothing,
///
/// Separate layer for dynamic waves.
///
///
/// Dynamic waves are normally combined together for efficiency. By enabling this layer, dynamic waves are combined and added in a separate pass.
///
DynamicWaves,
///
/// Extra displacement layer for visual displacement.
///
Displacement,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum CollisionSource
{
///
/// No collision source. Flat water.
///
None,
///
/// Uses AsyncGPUReadback to retrieve data from GPU to CPU.
///
///
/// This is the most optimal approach.
///
GPU,
///
/// Computes data entirely on the CPU.
///
CPU,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum DefaultClippingState
{
///
/// By default, nothing is clipped. Use clip inputs to remove water.
///
NothingClipped,
///
/// By default, everything is clipped. Use clip inputs to add water.
///
EverythingClipped,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum DepthProbeMode
{
///
/// Update in real-time in accordance to refresh mode.
///
RealTime,
///
/// Baked in the editor.
///
Baked,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum DepthProbeRefreshMode
{
///
/// Populates the DepthProbe in Start.
///
OnStart,
///
/// Requires manual updating via DepthProbe.Populate.
///
ViaScripting,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum DisplacementPass
{
///
/// Displacement that is dependent on an LOD (eg waves).
///
///
/// Uses filtering to determine which LOD to write to.
///
LodDependent,
///
/// Renders to all LODs.
///
LodIndependent,
///
/// Renders to all LODs, but as a separate pass.
///
///
/// Typically used to render visual displacement which does not affect collisions.
///
LodIndependentLast,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum FloatingObjectModel
{
///
/// A simple model which aligns the object with the wave normal.
///
AlignNormal,
///
/// A more advanced model which samples water at the probes positions.
///
Probes,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum LodInputBlend
{
///
/// No blending. Overwrites.
///
Off,
///
/// Additive blending.
///
Additive,
///
/// Takes the minimum value.
///
Minimum,
///
/// Takes the maximum value.
///
Maximum,
///
/// Applies the inverse weight to the target.
///
///
/// Basically overwrites what is already in the simulation.
///
Alpha,
///
/// Same as alpha except anything above zero will overwrite rather than blend.
///
AlphaClip,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum LodInputMode
{
///
/// Unset is the serialization default.
///
///
/// This will be replaced with the default mode automatically. Unset can also be used if something is invalid.
///
Unset,
///
/// Hand-painted data by the user.
///
Paint,
///
/// Driven by a user created spline.
///
Spline,
///
/// Attached 'Renderer' (mesh, particle or other) used to drive data.
///
Renderer,
///
/// Driven by a mathematical primitive such as a cube or sphere.
///
Primitive,
///
/// Covers the entire water area.
///
Global,
///
/// Data driven by a user provided texture.
///
Texture,
///
/// Renders geometry using a default material.
///
Geometry,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum LodInputPrimitive
{
///
/// Spheroid.
///
Sphere,
///
/// Cuboid.
///
Cube,
///
/// Quad.
///
Quad,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum LodTextureFormatMode
{
///
/// Uses the Texture Format property.
///
Manual,
///
/// Chooses a texture format for performance.
///
Performance,
///
/// Chooses a texture format for precision.
///
///
/// This format can reduce artifacts.
///
Precision,
///
/// Chooses a texture format based on another.
///
///
/// For example, Dynamic Waves will match precision of Animated Waves.
///
Automatic,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum Placement
{
///
/// The component is in a fixed position.
///
Fixed,
///
/// The component follows the transform.
///
Transform,
///
/// The component follows the viewpoint.
///
Viewpoint,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum QuerySource
{
///
/// This game object's transform.
///
Transform,
///
/// The viewer's transform.
///
///
/// The viewer is the main camera the system uses.
///
Viewer,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum ShorelineVolumeColorSource
{
///
/// No depth color.
///
None,
///
/// Depth color based on water depth.
///
Depth,
///
/// Depth color based on shoreline distance.
///
Distance,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum WaterInjectionPoint
{
///
/// Renders in the default pass.
///
///
/// For the water surface, this will be determined by the material (opaque or transparent). This pass is controlled by Unity, and is not compatible with certain features like soft particles.
///
Default,
///
/// Renders before the transparent pass.
///
///
/// This has advantages like being compatible with soft particles, refractive shaders, and possibly third-party fog.
///
BeforeTransparent,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum WaterReflectionSide
{
///
/// Both sides. Most expensive.
///
Both,
///
/// Above only. Typical for planar reflections.
///
Above,
///
/// Below only. For total internal reflections.
///
Below,
}
}
namespace WaveHarmonic.Crest.Generated
{
enum WatertightHullMode
{
///
/// Use displacement to remove water.
///
///
/// Using displacement will also affect the underwater and can nest bouyant objects. Requires the displacement layer to be enabled.
///
Displacement,
///
/// Clips the surface to remove water.
///
///
/// This option is more precise and can be submerged.
///
Clip,
}
}