Repository navigation
Conversation
marcinn
force-pushed
the
dev/integrate-track-rendering
branch
30 times, most recently
from
September 29, 2026 09:40
c162ab2 to
2411e54
Compare
* _submodel_islands() keeps each piece's nearest piece and gap; a merge looks again only at the grown piece, O(P^2) instead of O(P^3) * The 36WEa driver's cab built in 30 s (dashboard light: 727 pieces, 22.3 s) on every cab change; now 1.1 s, the same lights * Finding: a cab build is measured on the largest real cab
* A long timeout hides the early error: a probe runs in the background and is killed after 15 s without a new line * A probe never saves a user setting; set_setting() keeps it in memory
* Driver hints tile (F3) anchored to the top-right corner, at least 360 px wide (2.5x its own width), widened leftwards by a longer hint * Shift+F3 frame time stats start at 360 px instead of 96 px, so the two do not overlap * The timetable (F2) moved to the bottom-right corner, above the vehicle chips and the streaming spinner
* The HUD's trainset list shows by default only the vehicles of the trainsets the player can drive (occupied and offered by the scenario) * "Show all trainsets of the scenario" switch, as in the scenario selector * MaszynaSceneryInfo.Trainset.is_drivable() shared by both lists
* "Frame time statistics" entry in Diagnostics, Shift+F3 its shortcut, cycles DebugMenu through hidden, compact and detailed * DebugMenu.cycle_style() is the one road; its own key handling removed * Translations of the entry in every language
* New last stage: the game appears once the streaming has built the chunks around the camera (radius 1, at least 1 km each way) and the vehicles within the draw distance - before, only the camera's own chunk * streaming_camera_changed lets RailVehicleRenderingServer queue every vehicle in range at once; a vehicle built takes its detail at once, so a near one is built as nodes before its build counts as done * area_get_pending_count() and builds_get_pending_count() drive the stage's progress; Galicja: the stage takes 10.7 s
* LegacyCabinLampIslands.submodel_islands() replaces the GDScript: samples decode only their DXT block, a grid finds each piece's nearest * A lamp mesh of more than 1024 pieces is a backlight and gets one light (36WEa dashboard: 7237 pieces, 2.0 s -> 42 ms in a debug build) * The 36WEa cab builds in 0.43 s instead of 1.1 s, the same lights
* UserSettings.is_config_changed(): the configuration compared with what the file holds since its last load or save * The close button and Escape close the settings at once when nothing was changed, ask save or discard otherwise * In a game F11 (and the Simulator menu's entry) closes an open panel
…built * The stage reported its start (90%) and its end only; it now reports each vehicle built, from VEHICLES_PROGRESS to the end of the load
* The scenario started after the load (its scenery sounds, 5.5 s on Galicja) showed nothing: the ring stood at 90% under Vehicles * SceneryWorld.scenario_progress, from MaszynaLegacyScenario.start(): the Surroundings stage begins at once, the sounds take it from 90% to 95%, the cab and the streaming around the camera the rest
* View > Logs: tabs "Console" (GameLog), "Gameplay" (the gameplay log, live) and "App" (the engine's log), each its last 5000 lines; the developer console (~) no longer prints GameLog * Diagnostics > Developer console, on the new console_toggle action (~) the console now matches exactly; "Power source", "Scenario and Events" translated * Top bar: the View menu closes on a chosen entry and the bar slides out once its last menu closes with the mouse below it
* "Vehicle card" entry in View: opens the card of the player's vehicle, closes an open one; ticked while a card is open * The trainset list stands right of the vehicle card, both aligned at the bottom and growing upwards
* MaszynaSceneryInfo.title is read_display_name() - the "//$l", "//$n" and file name parts - instead of the raw "//$n" line, so Shift+F2 names the scenario as the selector and the loading screen do
* Profiles render at 16 px/m in one band above the rail, centred on the vehicle, without the margin; cache version 9 * The starter's trainset row and the editor's trainsets dock lay vehicles out at their FIZ length over buffers, side views overhang onto neighbours * No separation between the vehicles of a trainset
… any * _prepare_engine() reads the line breaker and the converter overload relay of every vehicle under control, as the update's reset does * A car without an engine (36WE B, PWR=2) has no line breaker to count; a vehicle with one collector is hinted only pantograph A - both quirks in MASZYNA_ORIGINAL_QUIRKS.md * test_zzz_driver_ready_36wea_014a: the 36WEa started by the keys is ready for its driver and hinted no pantograph B
* RailVehicleServer.trainset_determine_type()/trainset_get_type(): NONE, PASSENGER, CARGO, MIXED from the cars' brake delays, kept per vehicle * the driver's AutoRewident port determines it; stops, proximity, braking, speed, series motor and heating read it - braking.cargo is gone * a passenger train behind a locomotive left at G no longer leaves its stops before the departure (Os33733 at Zagórz)
* a seventh speed button, x30 (one wall second is thirty in the game)
* "Switch on compressor" is done once any vehicle under control has its compressor allowed to run (IsAnyCompressorEnabled), not by the controlling car's compressor running - an EN57's is in its ra cars * test_zzz_driver_hints_en57_2000_v1: an EN57 started by the keys is not hinted to switch its compressor on
* RailVehicleBrake.cntrl_max_brake_pressure_mass from Cntrl. MaxBPMass, given to the Mover in kg: an empty trailer brakes at TareMaxBP, no locked wheels * RailVehicleBrake.handle_movement/handle_step: brake_level_increase/_decrease move the Mover's handle handle_step positions; FV4a continuous, any other handle a position per key press (the cab honours it) * EN57-636ra fixture and test; cut-vehicle-fixture follows subdirectory includes; the other unread Cntrl. keys listed in TODO.md
* Shift+F2 has two tabs, "Scenario description" and "Scenario progress": the task told in sentences from the driver's timetable and current order (ScenarioTask), or "No scenario set for <vehicle>" * MaszynaLegacyAIDriver.order_text(), the original's OrderCurrent(), in the driver state as order_text; the vehicle card shows it too * the timetable panel opens itself when the player's train gets a timetable
* vend_sans_bold.tres, VendSans at weight 700 beside the medium one * TimetableHeading label variation in timetable_theme.tres, used for the "Scenario progress for <vehicle>" heading instead of TimetableTitle
* PlayerServer moves the player's driver into every cab, of the same vehicle too: no "deactivate the cab" in the C car's rear cab * driving aid asks a vehicle for the pantographs its PhysicalLayout has (the C car's B), not by CollectorsNo * 36WEa-024a fixture and regression tests; the start-up test's security reflex acknowledges the player's vehicle
* BugReportRecorder of a run without a display writes logs/headless/gameplay.log, not the game's gameplay.log * AGENTS.md and the testing skill: every headless run passes --log-file, so it does not rotate (and after five runs delete) the game's app.log
* the driver cues closing the doors before revoking the permits, as the original's Doors() (Driver.cpp:4380-4395): closing them revokes the permits (Mover.cpp:8745-8749) * the revoking hints show no key: a push permit button only grants (Train.cpp:7213-7220), so Shift+, did nothing on a 36WEa * test_driver_door_hints on an EN57 driving trailer
* the vehicle card stands right under the trainset list in the View menu * F7 opens the vehicle card, Shift+F7 the trainset list (vehicle_card_toggle, trainsets_toggle) - the original's F7 is debug-mode only, Shift+F7 unused
* the walk leaves the unit's direction at 0, as the original's cab activations send it (the machine room's 0 too), and the master controller refuses until the reverser is set
… builds * ci.yml and godot-engine.yml removed (kept on backup/rebased-with-our-ci) * build.yaml builds the host library once (build-host, HOST_ONLY in entrypoint.sh) for the unit tests - moved in from tests.yml, with the start-up report of the set-aside ci.yml - and for each platform's template_release build and export (HOST_PREBUILT), then publishes the games as the branch prerelease maszyna-reloaded-<branch> * Makefile: f219612's CMAKE_GODOTCPP_PRECISION and _API_FILE defined again, the versioned double extension_api.json CMakeLists.txt forces
* commit style: a follow-up of the same subject is amended or squashed into its commit, never left as a trail of commits; HEAD checked before amending
* Driving aid: a hint keeps its place (rules out the others of its group, not itself), idle before the line breaker with its key, a rear cab shown the reverser's own side; test follows SN61-02's hints by their keys * VehicleController.Direction for get_direction()/get_direction_absolute(), every reader on it; start-up tests: forward from any cab, SN61 idle * Scenery selector: list read again on every open and by a refresh icon in the search field, keeping the search and the selected scenery
* gnd-skydome: the sun shafts effect samples its own copy of the colour; sampling and writing one texture removed the D3D12 device * Windows renders on Vulkan again (driver.windows was d3d12) * FINDINGS.md rule and the archive entry; the double install of the effect noted in TODO.md
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.