Table of Contents

Class TerrainTextureLayer

Namespace
FishMMO.Shared.Biomes
Assembly
FishMMO.Shared.dll

One terrain texture of a biome — its maps, tiling, blend noise, and the height and slope bands it is confined to — plus the prefab spawn rules that apply where it dominates. Field names match the WorldEditor asset layout so exported biome templates load unchanged.

[Serializable]
public class TerrainTextureLayer
Inheritance
TerrainTextureLayer
Derived
Inherited Members

Fields

albedoTexture

[Header("Textures")]
public Texture2D albedoTexture

Field Value

Texture2D

blendMode

[Header("Blending Configuration")]
[Tooltip("Blending mode for this texture layer.")]
public TextureBlendMode blendMode

Field Value

TextureBlendMode

blendNoiseOffsetX

[Tooltip("Adds a random offset to the noise pattern to avoid repetition.")]
public float blendNoiseOffsetX

Field Value

float

blendNoiseOffsetY

public float blendNoiseOffsetY

Field Value

float

blendNoiseScale

[Tooltip("Scale of the noise pattern used for blending this texture with others in the same biome.")]
[Range(1, 256)]
public float blendNoiseScale

Field Value

float

blendSharpness

[Tooltip("Controls the sharpness of the transition. Higher values create harder edges between textures.")]
[Range(0.1, 10)]
public float blendSharpness

Field Value

float

heightFalloff

[Tooltip("How sharply the texture blends at the edges of its height range.")]
[Range(0.001, 0.2)]
public float heightFalloff

Field Value

float

heightRange

[MinMaxRange(0, 1)]
public MinMaxRange heightRange

Field Value

MinMaxRange

maskTexture

public Texture2D maskTexture

Field Value

Texture2D

metallic

[Header("Material Properties")]
[Range(0, 1)]
public float metallic

Field Value

float

normalTexture

public Texture2D normalTexture

Field Value

Texture2D

prefabSpawnRules

[Header("Prefab Spawning")]
[Tooltip("Prefab spawn rules that become active wherever this texture dominates.")]
public List<PrefabSpawnRule> prefabSpawnRules

Field Value

List<PrefabSpawnRule>

slopeFalloff

[Tooltip("How sharply the texture blends at the edges of its slope range.")]
[Range(1, 20)]
public float slopeFalloff

Field Value

float

slopeRange

[MinMaxRange(0, 90)]
public MinMaxRange slopeRange

Field Value

MinMaxRange

smoothness

[Range(0, 1)]
public float smoothness

Field Value

float

tileSize

[Header("Tiling")]
public Vector2 tileSize

Field Value

Vector2

useHeightConstraint

[Header("Height Constraint")]
[Tooltip("Constrains the texture to a specific height range (normalized 0-1).")]
public bool useHeightConstraint

Field Value

bool

useSlopeConstraint

[Header("Slope Constraint")]
[Tooltip("Constrains the texture to a specific slope range in degrees (0-90).")]
public bool useSlopeConstraint

Field Value

bool

Properties

HasAlbedo

True when the layer has a texture to paint with.

public bool HasAlbedo { get; }

Property Value

bool