Skip to content

Releases: scottb613/SCO_LIDEX

SCO LIDEX v1.200

Choose a tag to compare

@scottb613 scottb613 released this 10 Aug 16:56

SCO LIDEX Terrain Builder

SCO LIDEX is a Windows terrain-building utility for Open Rails and MSTS route developers. It discovers route coverage, obtains USGS or global Copernicus elevation data, builds normal terrain and optional TSRE-style distant mountains, validates the work, and writes terrain back into an existing route.

Latest release: v1.200.

Release Highlights

v1.000 — Complete Feature Set

Terrain Generation and Source Data

  • Builds normal Open Rails/MSTS terrain from USGS 1-meter 3DEP elevation data.
  • Falls back through USGS Original Product Resolution data, displayed as 5m~, and USGS/NED 1/3 arc-second data, displayed as 10m, when finer coverage is unavailable.
  • Samples the native ORTS 256×256 height grid at true 8-meter post spacing. The 256 stored posts cover 2,040 meters inside a nominal 2,048-meter tile; the neighboring tile supplies the next boundary post.
  • Uses GDAL windowed raster reads so only the needed parts of source products are read instead of downloading complete DEM files.
  • Merges generated terrain in a bounded rolling window to support large routes without retaining the entire route in memory.

Coverage and Tile Selection

  • Uses existing route terrain tiles as coverage.
  • Accepts exact tile names from ROUTE\SCOLIDEXTiles.txt.
  • Builds coverage from the route marker file, KML coordinates, or track database references.
  • Provides configurable normal-terrain and Distant Mountain coverage radii.

Normal and Distant Mountain Terrain

  • Creates or updates normal route terrain in Append or Overwrite mode.
  • Creates TSRE-style Distant Mountain lo_tiles exclusively from Copernicus GLO-30 data, resampled onto the 128-meter low-terrain grid.
  • Detects and replaces incompatible DEMEX-style distant mountain terrain when Distant Mountain generation is selected.
  • Preserves existing texture, water, overlay, and patch choices during normal updates whenever the source tile layout can be patched safely.
  • Includes clean normal-terrain and lo_tile templates for first-time creation and recovery from unsupported or damaged terrain files.
  • Provides the explicitly destructive Clean Tile Wipe option for rebuilding a tile from a clean template.

Projection, Placement, and Calibration

  • Supports the standard MSTS/Open Rails interrupted Goode homolosine world-tile projection.
  • Detects and honors route-specific TsreGeoProjection entries for DEM sampling, coverage bounds, markers, KML, and Distant Mountains.
  • Provides meter-based north/south and east/west Advanced Geo Bias controls for route-specific calibration during DEM generation.
  • Includes Commit/Post Processing for quickly testing offsets by resampling existing normal or TSRE-style Distant Mountain height grids without another USGS download.

Safety, Validation, and Recovery

  • Performs a read-only Scan before Run and validates route paths, selected tiles, raw-grid readability, decoded coordinates, templates, and only the data sources required by the selected stages.
  • Provides Scan Override for deliberate advanced or known-good workflows.
  • Marks retryable failures so Append can retry them automatically.
  • Prints paste-ready failed-tile lists for targeted SCOLIDEXTiles.txt retries and separates unmappable failures that cannot be retried by tile name.
  • Provides live totals for processed, skipped, failed, 1m, 5m~, 10m, and 30m-global work.
  • Supports Abort and stops before the next tile or write step.

Application and Diagnostics

  • Provides a Windows WinForms interface with a formatted, read-only Help viewer.
  • Prevents multiple GUI instances from running simultaneously.
  • Writes SCOLIDEX.log to the user's Desktop with selected settings, projection details, source usage, elapsed time, failures, and separate USGS/Copernicus data-read totals.
  • Writes SCOLIDEX-startup-error.txt to the Desktop if startup fails before the GUI opens.
  • Ships as a self-contained Windows x64 distribution with GDAL, clean terrain templates, documentation, third-party notices, and a desktop shortcut helper.

v1.100 — Additional Work

  • Uses the calibrated standard-projection terrain baseline of 11 meters east and 16 meters south to match TSRE map coordinates; v1.100 introduced the correction and v1.200 refines its east/west component.
  • Applies the correction at geographic sampling time to both normal terrain and Distant Mountain generation, preserving consistent tile transitions.
  • Leaves route-specific TsreGeoProjection mapping unchanged; the correction is only the standard-projection baseline.
  • Treats Advanced Geo Bias values as additional route-specific offsets on top of the corrected standard baseline.
  • Adds GEOMETRY_PLACEMENT_CORRECTION.txt with the coordinate comparison, 256-post/8-meter grid explanation, and implementation details.
  • Aligns the Windows executable file, assembly, and product metadata with version 1.100.
  • Restores a tracked and distributed docs folder and adds this Markdown README for GitHub and release-page presentation.

v1.200 — What's New

  • Adds non-overlapping interface sounds for application buttons, checkbox/radio selections, normal status-stage changes, successful Scan/Run completion, and failure/error/abort indications; all supplied WAV assets remain packaged.
  • Retains the isolated 4m evaluation implementation, but keeps the packaged GUI fixed to Normal - 8 m; the disabled teaser is labeled Testing - 4 m.
  • Adds a disabled Create Mosaic Tiles teaser for future development.
  • Adds the full Beast of Burden SCO LIDEX title graphic, a restrained textured title plate, and a slightly taller layout without reducing the running log.
  • Restores the Route Path Browse button and adds a clearly labeled Recent menu for the five most recently used valid routes, saved in %LocalAppData%\SCOLIDEX\route-history.json.
  • Adds key-free global elevation fallback using Copernicus DEM GLO-30 Public Cloud Optimized GeoTIFFs on AWS Open Data.
  • Uses the established USGS 1m5m~10m sequence first, then fills only unresolved posts from 30m (global) data.
  • Uses Copernicus GLO-30 exclusively for Distant Mountains, resampling 30-meter source data onto their 128-meter low-terrain grid; DM-only Scan and Run do not query USGS.
  • Identifies the source as a low-resolution digital surface model that may include vegetation, buildings, and infrastructure.
  • Adds separate 30m (global) status counters, an amber GLOBAL - LOW RES MODE indicator, representative-source Scan validation, and Copernicus data-read totals.
  • Reports USGS 1m, 5m~, 10m, Copernicus, and Geofabrik status separately at the end of Scan; viable fallbacks enable Run with warnings while failed or uncovered sources are excluded from that Run.
  • Searches OSM caches before downloading: the selected route first, then sibling and registered route caches. A covering cache is used directly in place without copying it.
  • Downloads a fresh Geofabrik PBF into the selected route only when no existing route cache covers the selection. Purging a cached PBF is the user's explicit refresh mechanism.
  • Stores each new Geofabrik PBF under its route's osm_data\geofabrik folder and writes a portable osm_data\osm-cache.json manifest.
  • During Create Map Tiles, writes reusable route OSM derivatives to the active route's osm_data folder: categorized route-geodata.gpkg, its route-geodata.json manifest, and TSRE-compatible forest-polygons.geojson.
  • Builds derivative coverage from the union of the route's actual 2048-meter world-tile footprints. Habitat layers are clipped to the exact route coverage; roads, railways, water, buildings, and developed context retain a 2048-meter margin.
  • Stores woodland, scrub, heath, grassland, wetland, water, waterways, buildings, developed land, agriculture, roads, railways, and bare-ground layers with declared WGS84 coordinates and spatial indexes.
  • Rebuilds derivatives when the regional PBF or route world-tile fingerprint changes. A newly downloaded PBF always refreshes the derivatives; an unchanged current package is reused.
  • Reads a covering PBF from another route in place while saving the newly sliced derivatives under the active route. Derivatives are validated and atomically replace the previous set only after all outputs pass validation.
  • Keeps only the small shared Geofabrik index and cross-route cache registry under %LocalAppData%\SCOLIDEX; large PBF data is never stored in AppData.
  • Replaces the all-or-nothing exit purge with an unchecked, per-cache list covering only regional PBFs and incomplete downloads. Route derivatives, the small shared Geofabrik index, and generated TSRE map PNGs are never offered for deletion.
  • Refines the standard-projection baseline to 11 meters east and 16 meters south.
  • Isolates Copernicus naming, discovery, validation, and COG reads in Program.Copernicus.cs.
  • Enables Create Map Tiles using anonymous Geofabrik regional OpenStreetMap PBF extracts rather than the public OSM editing API.
  • Renders one 4096×4096 map overlay per selected 2048-meter normal terrain tile and writes it directly to TSRE's F3 terrain_maps/<X*10000+Y>.png cache.
  • Overwrites a matching cached PNG without creating a map ACE or changing terrain materials, 16×16 patch UVs, TERRTEX files, or Distant Mountain tiles.
  • Projects every OSM vertex through the same corrected tile-local coordinate path used by terrain sampling; the Austria acceptance route reports zero pixel error at tile corners and center.
  • Loads selected-route PBF geometry once, retains it for the complete run, and renders two 4096 bitmaps concurrently.
  • Uses bundled GDAL and TSRE's F3 PNG naming/projection behavior; no API key, external map service, route-editor executable, ...
Read more

SCO LIDEX v1.100

Choose a tag to compare

@scottb613 scottb613 released this 08 Aug 21:12

SCO LIDEX Terrain Builder

SCO LIDEX is a Windows terrain-building utility for Open Rails and MSTS route developers. It discovers route coverage, obtains USGS elevation data, builds normal terrain and optional TSRE-style distant mountains, validates the work, and writes terrain back into an existing route.

Release highlights

v1.000 — Complete feature set

Terrain generation and source data

  • Builds normal Open Rails/MSTS terrain from USGS 1-meter 3DEP elevation data.
  • Falls back through USGS Original Product Resolution data, displayed as 5m~, and USGS/NED 1/3 arc-second data, displayed as 10m, when finer coverage is unavailable.
  • Samples the native ORTS 256×256 height grid at true 8-meter post spacing. The 256 stored posts cover 2,040 meters inside a nominal 2,048-meter tile; the neighboring tile supplies the next boundary post.
  • Uses GDAL windowed raster reads so only the needed parts of source products are read instead of downloading complete DEM files.
  • Merges generated terrain in a bounded rolling window to support large routes without retaining the entire route in memory.

Coverage and tile selection

  • Uses existing route terrain tiles as coverage.
  • Accepts exact tile names from ROUTE\SCOLIDEXTiles.txt.
  • Builds coverage from the route marker file, KML coordinates, or track database references.
  • Provides configurable normal-terrain and Distant Mountain coverage radii.

Normal and Distant Mountain terrain

  • Creates or updates normal route terrain in Append or Overwrite mode.
  • Creates TSRE-style Distant Mountain lo_tiles from 10-meter elevation data.
  • Detects and replaces incompatible DEMEX-style distant mountain terrain when Distant Mountain generation is selected.
  • Preserves existing texture, water, overlay, and patch choices during normal updates whenever the source tile layout can be patched safely.
  • Includes clean normal-terrain and lo_tile templates for first-time creation and recovery from unsupported or damaged terrain files.
  • Provides the explicitly destructive Clean Tile Wipe option for rebuilding a tile from a clean template.

Projection, placement, and calibration

  • Supports the standard MSTS/Open Rails interrupted Goode homolosine world-tile projection.
  • Detects and honors route-specific TsreGeoProjection entries for DEM sampling, coverage bounds, markers, KML, and Distant Mountains.
  • Provides meter-based north/south and east/west Advanced Geo Bias controls for route-specific calibration during DEM generation.
  • Includes Commit/Post Processing for quickly testing offsets by resampling existing normal or TSRE-style Distant Mountain height grids without another USGS download.

Safety, validation, and recovery

  • Performs a read-only Scan before Run and validates route paths, selected tiles, raw-grid readability, decoded coordinates, templates, and a representative USGS service request.
  • Provides Scan Override for deliberate advanced or known-good workflows.
  • Marks retryable failures so Append can retry them automatically.
  • Prints paste-ready failed-tile lists for targeted SCOLIDEXTiles.txt retries and separates unmappable failures that cannot be retried by tile name.
  • Provides live totals for processed, skipped, failed, 1m, 5m~, and 10m work.
  • Supports Abort and stops before the next tile or write step.

Application and diagnostics

  • Provides a Windows WinForms interface with a formatted, read-only Help viewer.
  • Prevents multiple GUI instances from running simultaneously.
  • Writes SCOLIDEX.log to the user's Desktop with selected settings, projection details, source usage, elapsed time, failures, and an estimated USGS data-read total.
  • Writes SCOLIDEX-startup-error.txt to the Desktop if startup fails before the GUI opens.
  • Ships as a self-contained Windows x64 distribution with GDAL, clean terrain templates, documentation, third-party notices, and a desktop shortcut helper.

v1.100 — Additional work

  • Corrects standard-projection terrain placement by 16 meters east and 16 meters south to match the TSRE map-coordinate convention confirmed across multiple test routes.
  • Applies the correction at geographic sampling time to both normal terrain and Distant Mountain generation, preserving consistent tile transitions.
  • Leaves route-specific TsreGeoProjection mapping unchanged; the correction is only the standard-projection baseline.
  • Treats Advanced Geo Bias values as additional route-specific offsets on top of the corrected standard baseline.
  • Adds GEOMETRY_PLACEMENT_CORRECTION.txt with the coordinate comparison, 256-post/8-meter grid explanation, and implementation details.
  • Aligns the Windows executable file, assembly, and product metadata with version 1.100.
  • Restores a tracked and distributed docs folder and adds this Markdown README for GitHub and release-page presentation.

Installation

  1. Download SCOLIDEX-v1.100-win-x64.zip from the v1.100 release.
  2. Extract the complete archive to a writable folder.
  3. Run SCOLIDEX-win-x64\SCOLIDEX.exe.
  4. Optionally run AddShortcutDesktop.cmd from the extracted top-level folder.
  5. Back up a route before using Run, Overwrite, Clean Tile Wipe, or Commit.

Requirements and limitations

  • Windows 10 or newer, 64-bit.
  • Internet access while requesting elevation data.
  • USGS elevation coverage is United States focused.
  • Large routes can require substantial processing time and disk space.
  • Clean Tile Wipe and post-processing terrain shifts modify route files; always work from a backup.
  • KML polygon filling is basic and should be considered experimental.
  • SCO LIDEX reads TsreGeoProjection when present but does not create or modify that route setting.

Documentation

The docs folder contains the complete instructions, changelog, known issues, build notes, geometry-placement technical note, sample tile list, license, and third-party notices.

License

SCO LIDEX is distributed under the GNU General Public License version 3 or later. Third-party components remain under their respective licenses.

SCO LIDEX

Choose a tag to compare

@scottb613 scottb613 released this 16 Jul 23:36

SCO LIDEX v1.000 is now available - Official Production Release.

SCO LIDEX is a terrain-building utility for Open Rails / MSTS routes. It reads your existing route tiles, reaches out to the USGS cloud elevation services, and builds terrain directly into the route without needing to manually download DEM files.

Main features:

  • Builds normal 8m route terrain tiles from USGS 1m LIDAR where available.
  • Falls back to USGS Original Product Resolution DEM, shown as 5m~, when 1m data is not available.
  • Falls back again to 10m / 1/3 arc-second elevation when needed.
  • Builds optional TSRE-style Distant Mountain tiles.
  • Replaces incompatible DEMEX-style distant mountain tiles with TSRE-style lo_tiles.
  • Supports Append and Overwrite modes.
  • Can select coverage from existing route tiles, a text tile list, marker file, KML file, or track database.
  • Includes a read-only Scan step before Run to catch route/tile/service problems before writing files.
  • Writes a desktop log with settings, progress, failures, and elapsed time.
  • Failed normal tiles are marked so a later Append run can retry them, which helps when USGS has a temporary service hiccup.
  • Includes a simple GUI, in-app help, contact button, and desktop shortcut helper.