Skip to content
Merged

Webgl #3942

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
9c4ba75
add webgl renderer
evanpelle May 16, 2026
53cf2d4
migrate away from canvas
evanpelle May 16, 2026
5b663fa
refactor: share renderer state shapes between game and WebGL renderer
evanpelle May 16, 2026
3af1751
fix: eliminate WebGL camera-sync lag and forced-reflow cost
evanpelle May 16, 2026
7b8c950
fix: remove duplicate conquest gold popup on canvas2D
evanpelle May 16, 2026
bb619c2
add configurable dot size for zoomed-out structures
evanpelle May 17, 2026
e87e2cd
add iconGrowZoom for structures that scale with deep zoom
evanpelle May 17, 2026
8955be7
fix: store embargoes as smallID numbers (drop string[] wart)
evanpelle May 17, 2026
2fec1e9
retire DynamicUILayer, restore warship UX on WebGL
evanpelle May 17, 2026
3481beb
delete canvas2D NameLayer; render names via WebGL NamePass
evanpelle May 17, 2026
45246f2
make computePlayerStatus live-aware so status icons render
evanpelle May 17, 2026
d165101
migrate warship drag rectangle from canvas2D to DOM overlay
evanpelle May 17, 2026
ede0fb7
move single-unit warship selection box to WebGL SelectionBoxPass
evanpelle May 17, 2026
923cba8
move multi-unit warship selection box to WebGL SelectionBoxPass
evanpelle May 17, 2026
5002dfd
delete Pixi build-ghost rendering from StructureIconsLayer
evanpelle May 17, 2026
b2f84aa
delete canvas2D map canvas — WebGL is the only renderer left
evanpelle May 17, 2026
bac2944
rename Layer → Controller; drop canvas2D-era interface hooks
evanpelle May 17, 2026
a708a8c
rename UILayer/StructureIconsLayer to controllers, move to src/client…
evanpelle May 17, 2026
7b1557b
controllers push to the WebGL view directly, drop ClientGameRunner re…
evanpelle May 17, 2026
eb046e5
move TransformHandler/UIState/Controller out of graphics/, drop dead …
evanpelle May 17, 2026
a743a31
delete dead canvas2D utilities, rename mountWebGLDebugRenderer → moun…
evanpelle May 17, 2026
8a4b12c
move WebGL atlases into resources/atlases/, route through assetUrl()
evanpelle May 17, 2026
be182bb
delete dead canvas2D FX system
evanpelle May 17, 2026
b27c298
include atlases/ in the public asset manifest
evanpelle May 17, 2026
69b5a9c
restore FPS tracking via self-driven RAF in PerformanceOverlay
evanpelle May 17, 2026
b8d72d3
set crossOrigin on WebGL atlas image loaders
evanpelle May 17, 2026
4dc4810
render build ghost at cursor with sub-tile precision
evanpelle May 18, 2026
3eedaf7
wire nuke trajectory + blast radius into the build ghost preview
evanpelle May 18, 2026
c197f58
replace day/night cycle with a binary light/dark mode tied to UserSet…
evanpelle May 18, 2026
fb45c27
add subtle player-tile highlight on nation hover
evanpelle May 18, 2026
5a9694e
replace MapInteraction with HoverHighlightController; one input system
evanpelle May 18, 2026
4cd22a9
rename render/ files to UpperCamelCase to match client convention
evanpelle May 18, 2026
61f6d2f
restore alt-view (space hold) toggle
evanpelle May 18, 2026
4936ae3
restore spawn-phase glow with a true breathing animation
evanpelle May 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@
"ip-anonymize": "^0.1.0",
"jose": "^6.2.3",
"js-yaml": "^4.1.1",
"lil-gui": "^0.21.0",
"limiter": "^3.0.0",
"nanoid": "^5.1.11",
"node-html-parser": "^7.1.0",
Expand Down
68 changes: 68 additions & 0 deletions resources/atlases/emoji-atlas-meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
{
"width": 1280,
"height": 768,
"cellSize": 128,
"cols": 10,
"emojis": {
"😀": 0,
"😊": 1,
"🥰": 2,
"😇": 3,
"😎": 4,
"😞": 5,
"🥺": 6,
"😭": 7,
"😱": 8,
"😡": 9,
"😈": 10,
"🤡": 11,
"🥱": 12,
"🫡": 13,
"🖕": 14,
"👋": 15,
"👏": 16,
"✋": 17,
"🙏": 18,
"💪": 19,
"👍": 20,
"👎": 21,
"🫴": 22,
"🤌": 23,
"🤦‍♂️": 24,
"🤝": 25,
"🆘": 26,
"🕊️": 27,
"🏳️": 28,
"⌛": 29,
"🔥": 30,
"💥": 31,
"💀": 32,
"☢️": 33,
"⚠️": 34,
"↖️": 35,
"⬆️": 36,
"↗️": 37,
"👑": 38,
"🥇": 39,
"⬅️": 40,
"🎯": 41,
"➡️": 42,
"🥈": 43,
"🥉": 44,
"↙️": 45,
"⬇️": 46,
"↘️": 47,
"❤️": 48,
"💔": 49,
"💰": 50,
"⚓": 51,
"⛵": 52,
"🏡": 53,
"🛡️": 54,
"🏭": 55,
"🚂": 56,
"❓": 57,
"🐔": 58,
"🐀": 59
}
}
Binary file added resources/atlases/emoji-atlas.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading