MotionScript

@motion-script/core


@motion-script/core / Geo

Variable: Geo

const Geo: object

Defined in: render3d/builders.ts:30

Geometry descriptors.

These are plain values, so hoist one out of the builder and share it across meshes — the renderer dedupes by identity, so a shared geometry is uploaded to the GPU once no matter how many meshes reference it.

const brick = Geo.box({ width: 1, height: 0.5, depth: 0.5 }); g.mesh(brick, red, { position: [0, 0, 0] }) .mesh(brick, red, { position: [1, 0, 0] }); // same GPU buffer

Type Declaration

box

readonly box: (o?) => BoxGeometry3D

Parameters

o?

ParamsOf<BoxGeometry3D>

Returns

BoxGeometry3D

buffer

readonly buffer: (o) => BufferGeometry3D

Raw vertex buffers — any mesh you can compute.

Parameters

o

ParamsOf<BufferGeometry3D>

Returns

BufferGeometry3D

capsule

readonly capsule: (o?) => CapsuleGeometry3D

Parameters

o?

ParamsOf<CapsuleGeometry3D>

Returns

CapsuleGeometry3D

circle

readonly circle: (o?) => CircleGeometry3D

Parameters

o?

ParamsOf<CircleGeometry3D>

Returns

CircleGeometry3D

cone

readonly cone: (o?) => ConeGeometry3D

Parameters

o?

ParamsOf<ConeGeometry3D>

Returns

ConeGeometry3D

cylinder

readonly cylinder: (o?) => CylinderGeometry3D

Parameters

o?

ParamsOf<CylinderGeometry3D>

Returns

CylinderGeometry3D

dodecahedron

readonly dodecahedron: (o?) => PolyhedronGeometry3D

Parameters

o?

Omit<ParamsOf<PolyhedronGeometry3D>, "shape">

Returns

PolyhedronGeometry3D

edges

readonly edges: (source, o?) => EdgesGeometry3D

The hard edges of another geometry — a clean outline, no triangulation diagonals.

Parameters

source

Geometry3D

o?

Omit<ParamsOf<EdgesGeometry3D>, "source">

Returns

EdgesGeometry3D

extrude

readonly extrude: (o) => ExtrudeGeometry3D

Parameters

o

ParamsOf<ExtrudeGeometry3D>

Returns

ExtrudeGeometry3D

icosahedron

readonly icosahedron: (o?) => PolyhedronGeometry3D

Parameters

o?

Omit<ParamsOf<PolyhedronGeometry3D>, "shape">

Returns

PolyhedronGeometry3D

lathe

readonly lathe: (o) => LatheGeometry3D

Parameters

o

ParamsOf<LatheGeometry3D>

Returns

LatheGeometry3D

model

readonly model: (src, o?) => ModelGeometry3D

Parameters

src

string

o?

Omit<ParamsOf<ModelGeometry3D>, "src">

Returns

ModelGeometry3D

octahedron

readonly octahedron: (o?) => PolyhedronGeometry3D

Parameters

o?

Omit<ParamsOf<PolyhedronGeometry3D>, "shape">

Returns

PolyhedronGeometry3D

parametric

readonly parametric: (o) => ParametricGeometry3D

A surface sampled over a [0,1]² grid. Sugar over Geo.buffer.

Parameters

o

ParamsOf<ParametricGeometry3D>

Returns

ParametricGeometry3D

plane

readonly plane: (o?) => PlaneGeometry3D

Parameters

o?

ParamsOf<PlaneGeometry3D>

Returns

PlaneGeometry3D

ring

readonly ring: (o?) => RingGeometry3D

Parameters

o?

ParamsOf<RingGeometry3D>

Returns

RingGeometry3D

sphere

readonly sphere: (o?) => SphereGeometry3D

Parameters

o?

ParamsOf<SphereGeometry3D>

Returns

SphereGeometry3D

tetrahedron

readonly tetrahedron: (o?) => PolyhedronGeometry3D

Parameters

o?

Omit<ParamsOf<PolyhedronGeometry3D>, "shape">

Returns

PolyhedronGeometry3D

torus

readonly torus: (o?) => TorusGeometry3D

Parameters

o?

ParamsOf<TorusGeometry3D>

Returns

TorusGeometry3D

torusKnot

readonly torusKnot: (o?) => TorusKnotGeometry3D

Parameters

o?

ParamsOf<TorusKnotGeometry3D>

Returns

TorusKnotGeometry3D

tube

readonly tube: (o) => TubeGeometry3D

Parameters

o

ParamsOf<TubeGeometry3D>

Returns

TubeGeometry3D

wireframe

readonly wireframe: (source) => WireframeGeometry3D

Every triangle edge of another geometry.

Parameters

source

Geometry3D

Returns

WireframeGeometry3D