box3D

Built-ins

Canonical ID: scene3d.box. Nederlands: doos3D.

Creates a box centered on its position with full width, height, and depth. Its yaw (the left-or-right angle) rotates about the vertical axis through its center; collision queries use the oriented box, not an axis-aligned (with edges parallel to the world axes) visual approximation. New shapes start at (0,0,0), yaw 0, color #f59e0b, solid true, texture none, and scale 1. Reusing a name replaces every property while preserving insertion order. A world contains at most 256 objects. Creation alone does not draw.

See 3D words and camera rules.

Signature

box3D(name, width, height, depth)

Arguments

Parameter Type Requirement
name Text Case-sensitive, nonblank object name; at most 64 UTF-8 bytes.
width Number Finite, greater than 0 and at most 1,000.
height Number Finite, greater than 0 and at most 1,000.
depth Number Finite, greater than 0 and at most 1,000.

Return value

None.

Example

# language: en
clear3D("#16213e")
box3D("shape", 2, 1, 1)
color3D("shape", "orange")
texture3D("shape", "checker", 2)
camera3D(3, 2, 5)
lookAt3D(0, 0, 0)
draw3D()

A textured primitive seen from an angled camera.

Notes and common mistakes

Use the function name for your source language. Its canonical ID is a shared documentation label; you do not type that ID as a call. Giving your own variable or function the same name can hide the built-in. Supply the documented arguments and value types. Pliro reports mismatches when checking can detect them, or when the call runs.

A host is the app or environment running your program. To see a drawing, it needs a renderer, the part that draws on screen. The command-line command pliro run shows text but does not draw these graphics. The host support table explains which effects work in the IDE, browser, native app, and phone preview. A native build reports an unsupported capability instead of leaving it out.

In 3D, +Y points up. Yaw is the left-or-right angle; at zero the camera faces -Z. The world holds at most 256 objects. Changes appear when you call draw3D. An invalid call leaves the world unchanged. Editing requires an existing object name; creating objects and removing an absent name are exceptions. Use the portable color names or hex codes; transparent colors are unavailable here. Version 1 of the phone preview’s communication format does not carry 3D scenes. See the 3D guide for the coordinate rules.

clear3D · sphere3D · cylinder3D · position3D · turn3D · Programming guides · Host support · Calls and arguments