| … | … | @@ -27,7 +27,11 @@ import argparse, os, re, sys, time |
| 27 | 27 | import numpy as np |
| 28 | 28 | from server import fetch_diffusion |
| 29 | 29 | |
| 30 | CACHE = os.path.expanduser("~/.cache/terrain-lookdev/tiles") | |
| 30 | # Reads LOOKDEV_TILE_CACHE like the other tools -- it did NOT before, so it | |
| 31 | # silently benchmarked a different tile set than stitch_block/server saw. | |
| 32 | CACHE = os.environ.get("LOOKDEV_TILE_CACHE", | |
| 33 | os.path.expanduser( | |
| 34 | "~/.local/share/godot/app_userdata/HyperTPS/tile_cache/1234")) | |
| 31 | 35 | TILE_PX = 256 |
| 32 | 36 | |
| 33 | 37 |
| … | … | @@ -25,8 +25,28 @@ import numpy as np |
| 25 | 25 | from flask import Flask, Response, request, send_from_directory |
| 26 | 26 | |
| 27 | 27 | HERE = os.path.dirname(os.path.abspath(__file__)) |
| 28 | # WHERE TILES LIVE, and why it is not ~/.cache. | |
| 29 | # | |
| 30 | # Generated tiles are GAME STATE, not a cache: each is ~131 s of inference and | |
| 31 | # they are the only copy. They used to default under ~/.cache/, which | |
| 32 | # rsync-excludes.txt excludes (".cache/" matches any directory of that name at | |
| 33 | # any depth) -- so the generator was writing its only copy into the one tree the | |
| 34 | # backup deliberately skips. Verified both ways with the real exclude list. | |
| 35 | # | |
| 36 | # They now live under Godot's user:// for hyper-tps, which IS in the backup set | |
| 37 | # and is where every other thing the game generates already goes. | |
| 38 | # | |
| 39 | # THE SEED IS THE PARTITION AXIS -- and the only one. A room is WHO MAY SEE a | |
| 40 | # tile, not what it is: two rooms on one seed have byte-identical terrain, so | |
| 41 | # nesting by room would duplicate it (the same reason content_overlay.gd keys | |
| 42 | # user://content by hash: "two rooms asking for the same asset share one copy"). | |
| 43 | # A map SELECTS a seed and generator config; it is not an identity axis. | |
| 44 | # Room/map scoping belongs to KeetTileIndex and StateBase, not the filesystem. | |
| 45 | # | |
| 46 | # LOOKDEV_TILE_CACHE overrides the whole path. | |
| 28 | 47 | TILE_CACHE = os.environ.get("LOOKDEV_TILE_CACHE", |
| 29 | os.path.expanduser("~/.cache/terrain-lookdev/tiles")) | |
| 48 | os.path.expanduser( | |
| 49 | "~/.local/share/godot/app_userdata/HyperTPS/tile_cache/1234")) | |
| 30 | 50 | DC_TERRAIN = os.path.abspath(os.path.join(HERE, "..", "dc-terrain")) |
| 31 | 51 | INC = os.path.abspath(os.path.join(HERE, "..", "proc-nodes", "src", "shared", |
| 32 | 52 | "erosion_filter.inc")) |
| … | … | @@ -40,8 +40,28 @@ Usage: |
| 40 | 40 | import argparse, os, re, struct, sys |
| 41 | 41 | import numpy as np |
| 42 | 42 | |
| 43 | # WHERE TILES LIVE, and why it is not ~/.cache. | |
| 44 | # | |
| 45 | # Generated tiles are GAME STATE, not a cache: each is ~131 s of inference and | |
| 46 | # they are the only copy. They used to default under ~/.cache/, which | |
| 47 | # rsync-excludes.txt excludes (".cache/" matches any directory of that name at | |
| 48 | # any depth) -- so the generator was writing its only copy into the one tree the | |
| 49 | # backup deliberately skips. Verified both ways with the real exclude list. | |
| 50 | # | |
| 51 | # They now live under Godot's user:// for hyper-tps, which IS in the backup set | |
| 52 | # and is where every other thing the game generates already goes. | |
| 53 | # | |
| 54 | # THE SEED IS THE PARTITION AXIS -- and the only one. A room is WHO MAY SEE a | |
| 55 | # tile, not what it is: two rooms on one seed have byte-identical terrain, so | |
| 56 | # nesting by room would duplicate it (the same reason content_overlay.gd keys | |
| 57 | # user://content by hash: "two rooms asking for the same asset share one copy"). | |
| 58 | # A map SELECTS a seed and generator config; it is not an identity axis. | |
| 59 | # Room/map scoping belongs to KeetTileIndex and StateBase, not the filesystem. | |
| 60 | # | |
| 61 | # LOOKDEV_TILE_CACHE overrides the whole path. | |
| 43 | 62 | CACHE = os.environ.get("LOOKDEV_TILE_CACHE", |
| 44 | os.path.expanduser("~/.cache/terrain-lookdev/tiles")) | |
| 63 | os.path.expanduser( | |
| 64 | "~/.local/share/godot/app_userdata/HyperTPS/tile_cache/1234")) | |
| 45 | 65 | TILE_PX = 256 |
| 46 | 66 | APRON = 1 |
| 47 | 67 | MPP = 30.0 |