threejs-worldgen
    Preparing search index...

    Interface FishShape

    Body shape. Lengths are fractions of the total length (the fish is built 1 unit long and scaled).

    interface FishShape {
        anal: FinSpec[];
        back: number;
        bodyLength: number;
        depth: number;
        depthAt: number;
        dorsal: FinSpec[];
        eye: { height: number; position: number; size: number };
        mouth: { size: number; tilt: number };
        nose: number;
        pectoral: PairedFinSpec;
        peduncle: number;
        pelvic: PairedFinSpec;
        squareness: number;
        tail: { asymmetry: number; fork: number; height: number; shape: TailShape };
        width: number;
    }
    Index
    anal: FinSpec[]

    Anal fins along the belly.

    back: number

    Share of the depth above the spine: 0.5 symmetric, 0.65 humped back, 0.35 deep belly.

    bodyLength: number

    Share of the total length that is body; the rest is the tail fin.

    depth: number

    Deepest body height (back to belly). 0.15 = slender (pike), 0.6 = disc (tang).

    depthAt: number

    Where the body is deepest, as a fraction of the body (not counting the tail fin).

    dorsal: FinSpec[]

    Dorsal fins along the back, front to back.

    eye: { height: number; position: number; size: number }

    Eye.

    Type Declaration

    • height: number

      Height on the head: −1 belly … 1 back.

    • position: number

      Distance from the nose as a fraction of the total length.

    • size: number

      Radius as a fraction of the total length.

    mouth: { size: number; tilt: number }

    Mouth.

    Type Declaration

    • size: number

      Length of the mouth line as a fraction of the total length.

    • tilt: number

      −1 underslung (carp, shark) … 0 terminal … 1 upturned.

    nose: number

    Nose shape exponent: 0.4 blunt and round … 1.2 long and pointed.

    pectoral: PairedFinSpec

    Pectoral fins (behind the gills).

    peduncle: number

    Tail-stalk (peduncle) height as a fraction of the deepest height.

    Pelvic fins (under the belly).

    squareness: number

    Cross-section exponent: 2 = ellipse, 3 = boxy.

    tail: { asymmetry: number; fork: number; height: number; shape: TailShape }

    Tail fin.

    Type Declaration

    • asymmetry: number

      0 = symmetric, 0.5 = upper lobe much longer (sharks).

    • fork: number

      0…1 depth of the notch for forked and lunate tails.

    • height: number

      Span (tip to tip) as a fraction of the total length.

    • shape: TailShape

      Outline.

    width: number

    Widest body width.