17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-10-17 08:39:19 +02:00
Commit Graph

166 Commits

Author SHA1 Message Date
maj00r
95d4581da2 pan ortho view with middle mouse 2026-10-08 22:00:04 +02:00
maj00r
7618dcda59 hint parallel snap while shifting a straight 2026-10-08 21:59:36 +02:00
maj00r
4d7f5f0f0c move parallel track to lay and selection 2026-10-08 21:56:28 +02:00
maj00r
c186b82e5a lay track - better visual info about curvature 2026-10-08 21:05:16 +02:00
maj00r
c11480ce2e fix flipped ortophot + clear cache 2026-10-08 20:20:12 +02:00
maj00r
14e916e81f prevent collecting all switches from scenery at start of tool 2026-10-08 19:35:28 +02:00
917c8f7285 Merge branch 'master' into feat/modern-editor 2026-10-08 17:44:58 +02:00
28b4e57133 feat(loading): optional background loading: sound files decoded by worker threads (sound.asyncload), data of dds textures read by worker threads (gfx.textures.streaming), gl textures of vehicles farther than a multiple of the draw range released (gfx.textures.releasedistance); all off by default 2026-10-08 16:17:46 +02:00
maj00r
b02fe0ac2b feat(editor): Signals mode of the Tracks window (H): semaphores, block, warning, shunting, stop, substitute signals and repeaters placed by the track from the templates of the scenery, described by //$e signal: (kind, mount, lamps, lean, the event the train reads them by) which tools/editor/signal_headers.py writes into them; a click by a track puts the signal on that side 2.25 m from the axis at the rail heads, facing the trains which have it on their right, a drag along turns it to the trains going the way of the drag; its (p1)_sem_info goes to event1 or event2 of the path, warning signals and repeaters, which the train doesn't read, get none; a head leaning away from the track swapped for its counterpart; the plate named like the signal; signals dragged along the track with their event, removed with it, renamed in the node properties with it, each a single step of the undo history; Polish translation 2026-10-08 03:12:16 +02:00
maj00r
4a7d839e5d feat(launcher): new scenery made by the wizard starts at noon with no fog and no clouds 2026-10-08 02:17:06 +02:00
maj00r
01949425ac feat(editor): track laid on past the diverging end of a switch keeps the cant of its end along with its radius and grade 2026-10-08 01:54:29 +02:00
maj00r
898b4fcaf7 feat(editor): switch drive placed with a switch leans with the grade and the cant of the track at the points, raised as the simulation raises a canted track 2026-10-08 01:53:34 +02:00
maj00r
095dae91b6 fix(editor): track laid on past the diverging end of a switch goes on with the radius of the real diverging path, a switch placed into a curve stores the radius its diverging path really has instead of the one of the template 2026-10-08 01:50:00 +02:00
maj00r
2626c8c86b fix(editor): platform edge by the points of a switch keeps the setback of the diverging path, the sample at the points counted with the line leading into the switch 2026-10-08 01:48:41 +02:00
maj00r
a5ade3258f fix(editor): a curve with a switch in it read as one curve through the main track of the switch, the switch placed into a curve on the part around the click; the diverging path of a switch placed into a canted curve lies on the conical surface of the cant along its whole length, not only at its ends; platforms by a switch keep the cant of the track for their height, the gauge of the other path only sets them back 2026-10-08 01:39:35 +02:00
maj00r
ee3833fdba feat(editor): platform edge put 1.725, 1.675 or 1.650 m from the axis of the track as chosen, kept in the editor settings; models along a track set back by the gauge of the other path of each switch whose points their line passes, also when they stand by the plain track ahead of the switch or by its straight path, the widening led in from the tracks beyond the diverging path; the line beyond the ends of a sweep goes on along the straightest path 2026-10-08 01:12:30 +02:00
maj00r
d4791f6a29 feat(editor): a model or an include standing by a track bent along it (B, or the Bend along the track section of the toolset): it stays where it stood and follows the track, through the joined tracks as far as it reaches; reference point at its start, origin, middle, end or a point picked on the model, across at its origin, the side facing the track, the far side or its middle, up at its origin, bottom, top or the top of its edge by the track; the blue cross of a bent model dragged for its offset, with Shift for its height and with Ctrl along the track, the values shown at the cursor; a bent model clicked to edit; one step of the undo history; scale of the model kept, parts lit only at night left out; edges of platforms told by the name of the model and by the overhang of their edge over the foot: put 1.725 m from the axis at the height the name gives, turned with the edge to the track when they stood the other way; platforms stand on the plane of the rail heads carried on to their edge (PKP PLK ST-T2), the gauge widening led in from the tracks beyond the ends and from the other path of a switch; gaps between the pieces of a sweep filled with the paths which join them; Platforms and models tab left out of the track editor; laid track eased into the curvature of the one it joins with a transition curve; File > Open scenery... starts the editor again with the scenery picked from a list; the camera saved with the scenery; T and Shift+T turn each turntable to its next and previous position by event launchers written on each save; a turntable track deleted with its template; a scenery with no trainset gets a WMB10 on its first track; vehicle placed where the track is clicked; gauge check takes in the bent models; Polish translation of the editor 2026-10-08 00:51:40 +02:00
9d6aa24af4 Merge branch 'feat/modern-editor' of https://github.com/MaSzyna-EU07/maszyna into feat/modern-editor 2026-10-06 22:53:04 +02:00
8dd666d4d8 feat(editor): array of the selected model in the toolset, after the array modifier of Blender: fixed count or fit length, relative and constant offset along the axes of the model, turn per copy, copies following the ground; the array follows its settings until something else is selected or changed, and is a single step of the undo history 2026-10-06 22:52:42 +02:00
maj00r
d4271ea7c5 fix(editor): no variables named near or far, the Windows headers define them away 2026-10-06 22:37:00 +02:00
maj00r
24923dd472 feat(editor): track editor driven by what the cursor is over: the outline and a label show what a click or a drag does, snapping to free ends on the screen, handles and ends dragged directly, no rotation gizmo; laying from a free end the same in every mode, straight with Shift, the curve of a switch going on past its diverging end; height 0 where there's no terrain; placed switch leaves the switch mode, double slips listed apart, a drive of the switch placed with it by the //$e switch description of its template; compound curves of any number of radii; dragged end of a straight fits the curve beside it; name of a path, followed by the memory cells and the includes taking it; turntable placed from a template described as one, tracks led out of it and the tracks around fitted to it, its positions written to the include; infrastructure bound to the path whose events read its memory cell; terrain made where the route has none and shaped to the formation under the ballast; models along the track over the selected path and on along the joined ones while dragged, rarely used settings folded; vehicles and trainsets placed on any path, switches included, facing the way the arrow shows; joined paths spread into the selection; New scenery in the File menu starts the editor again with the wizard; ortho zoom towards the cursor; scripted self tests; Polish translation 2026-10-06 22:19:54 +02:00
maj00r
0a3cd55e59 feat(launcher): -edit without a scenery opens the wizard of a new scenery: file name, title and centre, picked on the OpenStreetMap map of geoportal.gov.pl in PUWG 1992 or given in degrees; the scenery is written with the centre as its //$g reference and opened in the editor; a bare -edit no longer loads the scenery of eu07.ini 2026-10-06 22:19:40 +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
c4a22eabd5 feat(editor): nodes placed with the brush and the area fill go without names; name of a model instance set in the node properties and written to its definition on save; redo of a deletion finds nodes which have no name 2026-10-06 21:58:57 +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
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
maj00r
3731520e33 feat(tracks): track editor in one movable Tracks window with exclusive modes, a guide of what can be done in the current step and the rarely used fields folded; vertical profile window with the ground of the scenery triangles; plain pieces added at a free end, freehand only on request; curve mode edits the single curve clicked 2026-10-05 01:21:11 +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
jerrrrycho
79bd0c8e91 fix(sonar): addressing reliability/security issues (#202) 2026-10-04 20:00:13 +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
ceae93eec5 fix(roads): lane transitions drawn as road with an island or a closed zone, end faces and rounded island ends, closed zone stripes on curves, banks applied to the whole road; junction banks to the ground and pedestrian crossings 2026-10-04 03:25:32 +02:00
maj00r
9bd8226c51 Fix the GCC 13 and MSVC builds: no brace-initialised reference from reference_wrapper, no near/far names 2026-10-04 02:49:05 +02:00
maj00r
ac82db8178 Structure gauge: map scan in slices over the frames with progress and cancel, skip the triangles far from the lines 2026-10-04 02:35:00 +02:00
maj00r
818fc60e21 Structure gauge: no road gauge along the pavements 2026-10-04 02:33:11 +02:00
maj00r
e69601dfa0 Structure gauge: no red highlight of the intruding triangles 2026-10-04 02:27:52 +02:00
maj00r
1ab5e1e8c3 Structure gauge: camera along the track at the height of the hit, close to it 2026-10-04 02:25:12 +02:00
maj00r
ce0c311106 Structure gauge refactor: outline ring, tilt in the sections, outline choice, shared track line 2026-10-04 02:22:57 +02:00
maj00r
7e78ca8714 Structure gauge: the lower part turns with the plane of the rail heads on cant 2026-10-04 02:12:14 +02:00
maj00r
0b5b69d76e Structure gauge button in the Track tab of the toolset 2026-10-04 02:05:31 +02:00
maj00r
e4e3aad853 Structure gauge: G1/G2/GA/GB/GC installation gauges, road clearance, Toolset button 2026-10-04 02:00:43 +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
maj00r
d57215877f feat: structure gauge window in the menu bar, gauge tunnel around the hit, fixed reach 2026-10-04 01:54:17 +02:00
maj00r
208ad3400d fix: structure gauge measured from the rail head, not the rail foot of the scenery points 2026-10-04 01:48:11 +02:00
maj00r
f2e727ce9a feat: structure gauge violations on the whole map, camera goes to them 2026-10-04 01:44:04 +02:00
maj00r
cf8062ea96 feat: GPL-1/GPL-2 structure gauges, widening run-in ahead of the curves 2026-10-04 01:40:25 +02:00
maj00r
b0c363b586 feat: structure gauge along the line of the selected path in the OpenGL view 2026-10-04 01:27:41 +02:00
maj00r
661c211b2e feat(editor): tooltips of the track fields, textures applied on leaving the field 2026-10-04 01:04:41 +02:00
maj00r
17725b6527 feat(editor): mode bar of the track window, key hints and values of the change at the cursor 2026-10-04 01:01:49 +02:00
maj00r
7d87fef7a0 refactor(editor): anchor on the nearest place of a path 2026-10-04 00:51:05 +02:00
maj00r
07994a578c refactor(editor): stored bindings read apart from their registration, one way to open a profile route 2026-10-04 00:50:08 +02:00