feat: game/engine split refactor + skybox

This commit is contained in:
Dan Finch 2026-08-08 14:15:32 +02:00
parent 581e5892b0
commit eeedcb8e48
34 changed files with 610 additions and 218 deletions

23
game/textures.ts Normal file
View file

@ -0,0 +1,23 @@
import type { Texture } from "../engine/render/Texture"
/** The game's texture palette -- the named surfaces content refers to (materials,
* mobs, room). `app/assets.ts` loads the actual pixels via the DOM; this is the
* shape both sides agree on, kept in `game/` so content never imports the browser
* loader. Filenames in `/assets` are the contract. */
export type Textures = {
floor: Texture
grass: Texture
bark: Texture
birch: Texture
leaf: Texture
needle: Texture
rock: Texture
flower: Texture
wall: Texture
crate: Texture
npc: Texture
frog: Texture
bee: Texture
robin: Texture
skybox: Texture
}