From bac0397140580df2326b10eb51efe277b2591a3f Mon Sep 17 00:00:00 2001 From: Richard Zink Date: Thu, 8 Oct 2026 09:35:02 +0200 Subject: [PATCH] Remove X-flip from image: map content reads normally The user wants the original tile content (map) to be readable normally, not X-mirrored. The X-swap arrangement (canvasX = -perp + ...) places east tiles on the right of the screen, so X coordinates read naturally left to right when scanning the corridor. Combined state: - Map content (image): drawn with normal orientation (no X-flip) - Arrangement: east on right, west on left (X-swap) - Labels: drawn in normal orientation in the corners - Y-swap: north tiles (lng=+12) at canvas top -> screen top --- vendor/clouds3d.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/vendor/clouds3d.js b/vendor/clouds3d.js index 5a772cf..7df2f70 100644 --- a/vendor/clouds3d.js +++ b/vendor/clouds3d.js @@ -349,9 +349,12 @@ function drawTileAt(lng, perp, dx, dz, centerTileX, centerTileY) { // the corridor orientation (east tiles have their image east // on the left of the drawn area, west tiles on the right). // Labels are drawn separately in normal orientation, so the - // X-coordinates labels read normally. - groundCtx.drawImage(img, canvasX + GROUND_TILE_SIZE, canvasY, - -GROUND_TILE_SIZE, GROUND_TILE_SIZE); + // Draw image with normal orientation (no X-flip). The + // X-swap arrangement (canvasX = -perp + ...) already places + // east tiles on the right of the screen, so the X coordinates + // read naturally left to right when scanning the corridor. + groundCtx.drawImage(img, canvasX, canvasY, + GROUND_TILE_SIZE, GROUND_TILE_SIZE); groundLoadedTiles[tileX + '_' + tileY] = true; // Thin border so the user can see where one tile ends and the