Kelsidavis-WoWee/tools
Kelsi b38dec7a83 feat(editor): add --gen-mesh-from-heightmap for PNG → 3D terrain
Converts a grayscale PNG into a heightmap mesh. Each pixel becomes
one vertex; brightness becomes Y. Mesh is centered on the XZ plane
with X spanning [-W*scaleXZ/2, +W*scaleXZ/2] and Z spanning the
same for H.

Defaults: scaleXZ=0.1 (a 64×64 PNG covers a 6.4×6.4 yard patch),
scaleY=2.0 (full white pixels rise 2 yards above black). Capped at
512×512 source images to keep vertex count bounded (the cap raises
to 262K verts for the largest legal input).

Normals are computed from finite differences against the height
field, giving smooth shading across the surface. Single batch +
one empty texture slot ready for downstream binding via
--add-texture-to-mesh.

Pairs naturally with --gen-texture-noise (synthetic terrain) or
any artist-painted heightmap exported from Photoshop / GIMP.

Adds stb_image.h include — implementation is already linked via
the existing tools/editor/stb_image_impl.cpp.

Verified: 64×64 noise heightmap → 4096 verts (= 64²) + 7938 tris
(= 2×63²), 6.4×6.4 span, height range 0..1.99; 1024×1024 input
rejected with size-cap error. Brings command count to 228.
2026-05-07 08:19:37 -07:00
..
asset_extract feat(extract): --purge-proprietary --json for machine-readable purge report 2026-05-06 11:32:42 -07:00
auth_login_probe Auth: include CRC in legacy proof; extend Turtle integrity set 2026-02-13 01:41:59 -08:00
auth_probe Add authenticator opcode support + auth_probe tool 2026-02-13 00:55:36 -08:00
blp_convert Replace MPQ runtime with loose file asset system 2026-02-12 20:32:14 -08:00
dbc_to_csv tools: fix DBC string-column detection false positives in both dbc_to_csv and asset_extract 2026-03-10 03:49:06 -07:00
editor feat(editor): add --gen-mesh-from-heightmap for PNG → 3D terrain 2026-05-07 08:19:37 -07:00
asset_pipeline_gui.py feat(animation): 452 named constants, 30-phase character animation state machine 2026-04-04 23:02:53 +03:00
backup_assets.sh Fix macOS build process and make shell scripts cross-platform 2026-02-23 18:35:53 -08:00
diff_classic_turtle_opcodes.py chore: fix executable permissions on 6 scripts 2026-03-30 18:55:15 -07:00
gen_opcode_registry.py chore: fix executable permissions on 6 scripts 2026-03-30 18:55:15 -07:00
generate_ffx_sdk_vk_permutations.sh Fix FSR3 permutation script failures on arm64 Linux and Windows 2026-03-09 13:11:03 -07:00
m2_viewer.py feat(animation): 452 named constants, 30-phase character animation state machine 2026-04-04 23:02:53 +03:00
opcode_map_utils.py chore: fix executable permissions on 6 scripts 2026-03-30 18:55:15 -07:00
validate_opcode_maps.py chore: fix executable permissions on 6 scripts 2026-03-30 18:55:15 -07:00