Both scripts passed (pitch, yaw, roll) and pitched the sun upward, so every scene rendered as night and the
viewport's auto exposure sat at EV -8.5, which is what the 'cached lighting is going to be clipped' warning
reports. Keyword arguments now; the gym script re-applies the rotation on an existing sun; the world script
removes the old external actor folder on disk rather than through the asset library, which cannot load
streaming proxies on their own.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The editor offered to import them as textures on every start; source files for authoring scripts do not belong
under Content. create_world.py and generate_heightmap.py read them from RawContent/World/Heightmaps.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Off the ladder at the user's request. Scripts/Authoring/generate_heightmap.py (numpy, installed locally by
bootstrap-pylib.sh) writes a 16-bit height PNG and three 8-bit weight PNGs to Content/World/Heightmaps;
create_world.py rebuilds /Game/Maps/L_World from them through ULandscapeAuthoringLibrary in the new SaltyEditor
module, which wraps ALandscape::Import because the engine exposes no landscape creation to Python. Uses
Elite_RockyMeadows' landscape material and layer infos (the pack itself is still uncommitted). 4033 vertices
a side at 350 cm a quad; swap the PNGs and rerun to change the terrain.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>