2be85410ce
Draw volumetric clouds, their shadows, a volumetric fog and catalogue stars from a new weather system in the GL 4.6 renderer
2026-10-16 21:44:47 +02:00
8cd0bab27b
Editor terrain: texture browser, undo, conversion from terrain files
...
- Terrain work mode shows a browser of the textures folder in place of the
node bank; textures/materials can be dragged onto the palette entries
(replacing the material), the material field and the water material field
- Ctrl+Z/Ctrl+Y for heightmap terrain changes: a brush stroke or an
operation is one step of the editor history
- Ground conversion reads only the files of the terrain directives
(.txtf with origin/rotate, or .btf without text), paints the chunks with
the materials of the triangles, drops only the shapes of those files
- Fix: ground grids converted out-of-range floats to int, so whole-scene
queries returned the triangles of a single cell (shifted chunks)
- Fix: terrain layers copied from textures already uploaded without their
data stayed grey
- Fix: ImGui ID conflict between terrain tool radios and section headers
- Fix: layers of terrain .txtf files named with the scenery/ prefix and
could not be saved
- Editor selftest commands for the terrain
2026-10-09 23:39:26 +02:00
35bda3778c
Heightmap terrain: .tch chunk packs, streaming with LOD, terrain painting, water and modifiers - terrain/<name>/terrain.yaml + <px>_<pz>.tch packs of 16x16 chunks (250 m, 0.5/1/2/5 m spacing), slices with crc-32 and optional zstd (vendored zstd 1.5.6 in ref/zstd) - heightmap_terrain [name] endheightmap_terrain directive replaces editorterrain - streamer: worker threads, camera + look-ahead loading, geomipmap LOD with skirts, pooled geometry - mat_terrain shader: up to 8 painted layer materials per chunk via texture arrays (opengl33); other renderers fall back to the dominant material - water bodies (outline + level), terrain modifiers (vertical profile shaping kept non-destructive) - F11 Terrain work mode rebuilt: chunks, sculpt, smooth, paint, point spacing, water tools
2026-10-09 21:02:25 +02:00
f94100ffe7
feat(editor): more models selected at once (Shift+LMB), moved and turned by the gizmo together, undone in one step; Ctrl+C / Ctrl+V copy the selected models with their groups and paste them at the cursor; Ctrl+G groups the selection, Ctrl+Shift+G takes a group apart, groups written to the scenery as group ... endgroup and loaded as groups of their own; End drops each model of the selection and of their groups onto the ground; menu of the selection at the cursor on Ctrl+RMB; Edit menu with undo, redo, the clipboard, grouping, deleting; Help > Keyboard shortcuts (F1) with the keys of every field of work, F2-F5 choose the fields of work, the tracks menu lists the track tools with their keys, the keys and descriptions in the menus and tooltips; self-test commands for the selection; Polish translation
2026-10-09 01:12:46 +02:00
maj00r
b451f80c6d
feat(terrain): binary terrain (BTF2) keeps the sweeps and the //$ lines of its text file and loads them with the terrain; a sweep in the text file no longer stops the conversion; binary files of the version before made again from the text
2026-10-08 00:51:29 +02:00
maj00r
978b99b7e5
feat(scenery): models laid along curves (sweep nodes), bent to follow the paths or repeated along them, loaded and saved with the scenery; trainsets put on a path while the simulation runs; trainset turned around by reversed after its header: the first vehicle stays at the offset and leads towards point 1, the rest stands behind it; launcher keeps reversed trainsets and can turn one around; memory cells saved with the new name of the path they name; events tell their targets and the events of a multiple event; renderer tells whether the cursor is over a surface; vehicle placed in the editor entered when the driving goes on
2026-10-06 22:19:32 +02:00
90c5420396
perf(scenery): runs of model instances read straight from the text by a reader made for them, shared between threads; anything the reader doesn't cover left to the parser; model and skin located once for a run of instances; lookup of nodes by uuid filled on load only for a scenery opened for editing
2026-10-06 21:58:49 +02:00
4e4cbdd052
feat(terrain): terrain directive can name any number of terrain files, each processed the way a single one was
2026-10-06 18:53:27 +02:00
7dd5005574
feat(scenery): SBT generated again for the sceneries which name no terrain files (.txtf, .btf); a scenery naming any gets no SBT
2026-10-06 02:36:04 +02:00
2e631dcbd6
feat(terrain): binary terrain files (.btf) made out of text terrain files (.txtf) named by terrain directives, checked against length and checksum of the text and loaded section by section when needed; -btf command line conversion; SBT files no longer generated, only loaded
2026-10-06 01:55:38 +02:00
0ae0aecde8
fix(scenery): binary terrain files named by terrain directives loaded once and only as a complete set, with fallback on the default SBT or the text files; default SBT no longer ignored and rewritten on every load
2026-10-05 23:51:01 +02:00
maj00r
a13a5548df
feat(terrain): grade line fitted to the ground under the route within the limits; editor terrain shaped to the grade line with a formation and rounded slopes, with one step back; scenery ground triangles of chosen materials converted to editor terrain and taken out of the files on save, with a dated backup of each file; crack-free simplified terrain mesh, terrain streamed as far as the scenery is drawn, the nearest chunks first; smoothing brush
2026-10-05 02:21:55 +02:00
012ffc7470
Merge branch 'feat/modern-editor' of https://github.com/MaSzyna-EU07/maszyna into feat/modern-editor
2026-10-04 21:58:19 +02:00
444e89558b
feat(roads): lanes change within a road piece (lanesto), junctions of two roads from earlier sceneries are loaded as such pieces and saved as roads; the editor leads the lanes of neighbouring pieces with them
2026-10-04 05:00:52 +02:00
27a94509c4
feat(roads): right of way and lane turns at junctions, road weights, kerbs, medians and forking roads, banks to the ground, roundabouts, pedestrian crossings, spawn sets by count; fix(editor): model skin export, placement on the ground under the orthophoto
2026-10-04 01:55:35 +02:00
3ce9102da0
feat(roads): level crossings, spawn and removal points for road vehicles, deleting points of a road
2026-10-04 00:31:44 +02:00
maj00r
8778353b22
feat(editor): infrastructure bound to the paths follows their changes
2026-10-04 00:14:03 +02:00
daeed40f15
feat(roads): junctions, height above the ground and rounded profile following the terrain
2026-10-03 20:28:37 +02:00
e4083d507f
feat(roads): editor menu and window for building roads, lanes shown as trajectories
2026-10-03 18:21:10 +02:00
2f417fddcc
feat(roads): road node with generated lanes, surface and markings
2026-10-03 17:35:08 +02:00
maj00r
676bf39136
feat(editor): track editor saves changed paths to scenery
2026-10-03 02:41:35 +02:00
maj00r
8f2a34b3cf
feat(editor): route design with curves and transitions
2026-10-03 02:41:34 +02:00
521c4f9ebb
feat(editor): keep content added by the editor ahead of FirstInit
2026-10-03 01:59:13 +02:00
ced26d171f
feat(editor): edit parameters of a placed include
2026-10-03 00:37:17 +02:00
968594c3e9
feat(editor): include database, placing .inc templates from the node bank
2026-10-02 23:57:35 +02:00
3199f3796e
feat(editor): layers window, scenery save and include descriptions
2026-10-02 22:40:52 +02:00
73f2f68aa0
feat(editor): edit session (-edit) and scenery layers
2026-10-02 21:29:18 +02:00
jerrrrycho
176427f96b
refactor: sonar c++20 changes ( #185 )
2026-09-28 21:08:15 +02:00
jerrrrycho
d85096f64d
reformat: remove redundant parentheses
2026-06-30 21:19:46 +02:00
75461eaf86
World Streaming Part 1
2026-06-18 18:18:02 +02:00
3419666070
scale/endscale/localscale per node model
2026-05-10 13:12:49 +02:00
docentYT
d1f16411a1
Replace clamp with std::clamp
2026-05-01 22:14:29 +02:00
docentYT
ec1dfae953
Replace starts_with and ends_with with string class methods
2026-05-01 17:31:11 +02:00
docentYT
1cfcf47788
use glm instead of Math3D in Globals
2026-04-26 23:27:10 +02:00
copilot-swe-agent[bot]
7e49aa8740
Rewrite #includes to use explicit subdirectory paths
...
Co-authored-by: Hirek193 <23196899+Hirek193@users.noreply.github.com >
2026-03-14 19:16:48 +00:00
copilot-swe-agent[bot]
0531086bb9
Reorganize source files into logical subdirectories
...
Co-authored-by: Hirek193 <23196899+Hirek193@users.noreply.github.com >
2026-03-14 19:01:57 +00:00