Gem Pickup
A big faceted game gem balanced on its point, 0.5 m tall by default (pickup scale, not a real stone): brilliant cut, upright crystal, octahedron or emerald step cut, in any colour, with an optional orbiting halo and sparkles. The part named gem spins about y (userData.tick turns it, Loop clip baked) and glows in its own colour at night.
- Size
- 0.70 × 0.54 × 0.69 m
- Triangles
- 284
- Kit
- Platformer
Tune it
4 knobs: Cut, Colour, Size, Halo.
Specs
- Size
- 0.70 × 0.54 × 0.69 m width × height × depth
- Triangles
- 284 of 6,000
- Draw calls
- 1 one vertex-colour material
- Loop clip
- 8 m of travel per cycle
- Moving parts
- 1 gem · spin
- Knobs
- 4 3 presets
- Night lights
- 1 gem
Passed the validator: real scale, rests on y = 0, front faces +Z, deterministic.
Use it
Code for the specimen as it is set up above; it follows your knobs.
import { createAsset } from 'https://gaitkit.com/cdn/gem-pickup.mjs';
const gemPickup = createAsset();
scene.add(gemPickup); // rests on y = 0, front faces +Zimport { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/gem-pickup.mjs';
export function GemPickup() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import gem-pickup.glb (download below). Moving parts are separate nodes, pivoted on their hinge.
add_child(preload("res://gem-pickup.glb").instantiate())// Import gem-pickup.glb with glTFast (com.unity.cloud.gltfast).
// Drop it in the scene: 1 unit = 1 metre, +Z is its front.Use the gaitkit MCP server: get_variant({ "id": "gem-pickup", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
cut | choice | brilliant crystal octahedron emerald | brilliant | brilliant (round diamond: flat table, sloped crown, deep pointed pavilion), crystal (tall hexagonal shard pointed at both ends), octahedron (double pyramid), emerald (rectangular step cut with clipped corners). |
color | color | any colour | #2fd6a0 | Gem colour. #2fd6a0 emerald green, #ff3b6b ruby, #3f7bff sapphire, #b35cff amethyst, #ffd23f topaz, #bff3ff diamond. |
size | range | 0.2 to 1.2, step 0.05 | 0.5 | Height of the gem in metres. 0.5 suits a 1.8 m character; 1.2 is a level-end super gem. |
halo | toggle | on / off | true | A thin bright ring around the waist and three little four-point sparkles, so the pickup reads from far away. |
Presets: ruby {"color":"#ff3b6b","cut":"brilliant"} · power crystal {"color":"#b35cff","cut":"crystal","size":0.9} · diamond bonus {"color":"#bff3ff","cut":"octahedron","size":0.7,"halo":false}
Files
| File | What |
|---|---|
| gem-pickup.glb | GLB, default look · 36 KB |
| gem-pickup.mjs | ES module, every knob live |
| gem-pickup.obj | OBJ, static, no colour |
| gem-pickup-params.json | knob schema, presets, night zones |
Licence
Use it in games, apps, renders and client work, commercially and without credit. Do not resell it as an asset or train a 3D generator on it. The full licence.