← Fantasy3D assetfogon/unicornio
Unicornio
Drag to turn it// «Unicornio» · gpt-6-sol (medium)
// A cute white unicorn standing on four legs, seen from the side facing -y with its head turned slightly: chunky rounded body, big head with large dark eyes, a long spiral golden horn on its forehead, a flowing rainbow mane (pink, violet, blue) along the neck and a matching rainbow tail, little lavender hooves.
const white = "#f6f3ff";
const cream = "#e9e5f3";
const shadow = "#d2cde2";
const pink = "#ff72be";
const violet = "#a871f4";
const blue = "#65d6f3";
const gold = "#f6c64e";
// Rounded body, with a softly shaded belly.
ellipsoid(22, 24, 23, 12, 7, 8, cream);
ellipsoid(22, 24, 25, 11, 7, 6, white);
ellipsoid(21, 24, 18, 9, 6, 3, shadow);
ellipsoid(30, 23, 24, 5, 6, 8, white);
ellipsoid(14, 24, 23, 5, 6, 7, cream);
// A few pale flecks keep the broad coat from looking flat.
forEach((x, y, z, color) => {
if ((color === white || color === cream) && rand() < 0.045)
set(x, y, z, z > 24 ? "#ffffff" : "#e1ddec");
});
// Four independently walking legs.
function leg(name, x, y, speed) {
part(name, [x, y, 19]);
ellipsoid(x, y, 15, 3, 3, 5, cream);
ellipsoid(x, y, 8, 2.5, 2.5, 7, white);
ellipsoid(x, y - 0.3, 2, 3, 3, 2, "#b7a1da");
box(x - 2, y - 2, 0, x + 2, y + 2, 1, "#927dbd");
box(x - 2, y - 3, 2, x + 1, y - 3, 3, "#d9c1f4");
animate(name, { type: "swing", axis: "x", speed, amplitude: 0.3 });
part("body");
}
leg("rear_far", 15, 28, -5);
leg("front_far", 29, 28, 5);
leg("rear_near", 15, 19, 5);
leg("front_near", 29, 19, -5);
// Neck rises into a large, slightly viewer-turned head.
ellipsoid(31, 22, 30, 5, 5, 9, cream);
ellipsoid(32, 20, 32, 4, 4, 7, white);
ellipsoid(35, 19, 36, 6, 5, 5, white);
ellipsoid(38, 16, 31, 4, 4, 3, cream);
ellipsoid(38, 14, 31, 3, 2, 2, white);
// Tall ears with pink inner fur.
ellipsoid(33, 17, 41, 2, 2, 4, white);
ellipsoid(33, 15, 42, 1, 1, 3, "#f5a8d2");
ellipsoid(38, 22, 40, 2, 2, 3, cream);
ellipsoid(38, 20, 41, 1, 1, 2, "#eba2cf");
// Flowing three-color mane: chunky locks down the visible side of the neck.
line(31, 19, 39, 28, 18, 30, 2, pink);
line(32, 19, 39, 29, 17, 29, 1, "#ff9bd3");
line(30, 19, 38, 27, 17, 27, 2, violet);
line(29, 21, 37, 27, 18, 25, 2, blue);
line(28, 23, 35, 26, 19, 23, 1, "#a485fa");
ellipsoid(29, 17, 29, 2, 2, 3, violet);
ellipsoid(27, 18, 26, 2, 2, 3, blue);
ellipsoid(31, 16, 38, 3, 2, 2, pink);
// Big glossy eye, lashes, tiny nostril and smile.
ellipsoid(36, 14, 35, 2, 1, 2, "#49365e");
set(35, 13, 36, "#ffffff");
set(36, 13, 35, "#ffffff");
line(34, 13, 37, 35, 13, 38, 0, "#574267");
set(40, 12, 32, "#806c89");
line(38, 12, 29, 40, 12, 29, 0, "#a777a5");
ellipsoid(35, 13, 31, 2, 1, 1, "#ffd5e7");
// Long tapered golden horn, with bright spiral bands.
line(39, 16, 39, 42, 14, 45, 1, "#c88930");
line(39, 15, 40, 42, 14, 45, 0, gold);
set(39, 14, 40, "#fff0a0");
set(40, 14, 42, "#fff0a0");
set(41, 13, 44, "#fff0a0");
set(42, 14, 45, "#fff7bb");
// A little golden star on the near flank.
set(21, 16, 25, gold);
set(20, 16, 26, "#fff2a4");
set(22, 16, 26, "#fff2a4");
set(21, 16, 27, "#fff2a4");
// Rainbow tail is hinged at the rump.
part("tail", [12, 24, 26]);
line(12, 24, 26, 8, 24, 28, 2, pink);
line(9, 23, 28, 5, 22, 24, 2, pink);
line(10, 25, 28, 5, 24, 22, 2, violet);
line(9, 26, 27, 4, 25, 20, 2, blue);
ellipsoid(5, 22, 23, 2, 2, 3, "#ff9ad5");
ellipsoid(5, 25, 21, 2, 2, 3, "#a983f5");
ellipsoid(4, 26, 19, 2, 2, 3, "#8ce5f5");
animate("tail", { type: "swing", axis: "z", speed: 2, amplitude: 0.35 });
part("body");import { draw } from "./assets/voxel";
import { unicornio } from "./assets/unicornio";
// Every frame: standing on (x, y), the centre of its base.
draw(ctx, unicornio, x, y, { size: 64, angle: 0, t: performance.now() / 1000 });
// size: its longest side, in px
// angle: turn on the floor, in radians
// t: seconds; if it moves, that animates it# In a terminal, in the game's folder
fogon assets add unicornio
# With Fogón's tools (connector)
add_assets({ slug: "<your-game>", ids: ["unicornio"] })
# It lands in client/assets/unicornio.ts
# https://fogon.page/object/unicornio