765153ad91
Merge remote-tracking branch 'origin/feat/switch-blades' into feat/renderers-cleanup
2026-10-29 23:55:04 +01:00
maj00r
80379b991c
feat(editor): the work of the editor sessions not committed yet, as it stands: a curve traced on from the end of the diverging track of a switch goes on at its radius with no transition in, or from a straight right at the switch (alignment start_held, fit_going_on), the plan taking an end adjoining R 10 km or more for a straight; the switches and slips laid into curves, slid along them and laid alone on one straight (frame_path, switch slide); the route plan reading curves going on from the tracks adjoining, the kept designs taken or forgotten; the orthophoto and terrain model settings, downloads and layers, the tracks onto the terrain; the curvature of a path in the plan (bezier::plan_curvature); the Polish texts of all of it. Not built as committed
2026-10-29 22:19:06 +01:00
8c6a47f42c
Light the occupied cab with the light points of its model
2026-10-28 21:16:22 +01:00
9904eddd0d
Light the cab with cablight/dashboardlight light points of the cab model
2026-10-28 20:55:45 +01:00
8f891fdc14
Report where the GPU got to when the Vulkan device is lost
2026-10-28 20:21:00 +01:00
413cebed9c
Hold the sky back only around tunnels and keep the cab lit by day
2026-10-28 14:01:37 +01:00
e8a90507f0
Light the cab with the sun coming in through its windows
2026-10-28 12:19:43 +01:00
1447dcf075
Walk the shadow passes and the culled model groups on worker threads in the Vulkan renderer
2026-10-27 20:56:11 +01:00
2a876befb0
Shade the sky and the sun by the scenery around the camera instead of the track environment flags
2026-10-27 16:02:36 +01:00
9dde5b0e5e
Take the ambient occlusion into the lighting and add a probe of the cab
2026-10-27 13:23:52 +01:00
ac0b4e5f15
Add a white balance to the tonemapping
2026-10-27 01:40:19 +01:00
550d47e97c
Merge remote-tracking branch 'jano211/siec-radio' into feat/renderers-cleanup
2026-10-26 16:36:36 +01:00
a6bdeeaa2b
Add DLSS Frame Generation (gfx.framegeneration x2/x3/x4) and Reflex (gfx.reflex) to the Vulkan renderer
2026-10-25 20:52:12 +01:00
1841e6d7b0
Add NVIDIA DLSS to the Vulkan renderer (gfx.antialiasing dlss/dlaa) and gfx.buffer.percent
2026-10-25 19:35:33 +01:00
71a6628a4a
Vulkan ray tracing: shade the heightmap terrain from its layers; longer default SSR range
2026-10-25 17:15:58 +01:00
f20b1a3071
Replace cubemap scenery reflections with SSR, add Vulkan ray traced reflections
2026-10-25 13:54:49 +01:00
252b9373ea
Add gfx.antialiasing (off, msaax2/x4/x8, taa) with temporal anti-aliasing in the GL 4.6 and Vulkan renderers
2026-10-25 05:17:41 +01:00
c48c58776a
Vulkan: parity with GL (P1–P7), shared GPU culling records (N6c), threaded command recording and render thread (M1, M4)
2026-10-25 03:06:01 +01:00
bd589f272d
feat(vulkan): vulkan 1.4 core with the user interface and the launcher, shaders split into ogl46/vk14 with SPIR-V binaries loaded first
2026-10-24 05:47:11 +02:00
68fa5dc2da
feat(vulkan): gfxrenderer picks the opengl 4.6 or the vulkan 1.4 renderer (B1-B3)
2026-10-24 03:06:33 +02:00
6bcdb7dd05
perf(gl46): the geometry of the banks without user data in a few large buffers shared by them, so the multi draws take the chunks of many models at once (gfx.geometry.shared)
2026-10-24 01:49:02 +02:00
3e2d292709
perf(gpucull): keep the walks of the submodel trees of the instances from frame to frame and make them again only when the model changes (gfx.gpucull.walkcache)
2026-10-24 01:01:43 +02:00
Claude
f30fefd91c
Sieć trakcyjna: przęsła wg typów sieci, wysięgniki z katalogu, bramki, kotwienia i edytor sieci
...
Sam kod exe z gałęzi siec-trakcyjna (bez testów, notatek i danych z tests/catenary).
Dane (data/traction_*.txt) leżą poza repozytorium.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_019Tqn7T8D1Gx3ptKtZgNtX5
2026-10-23 23:15:00 +02:00
336690ad8a
perf(debug): debug.memorystats switch for the heap counting (off by default) and the places of the large heap blocks in the memory section
2026-10-23 23:10:32 +02:00
1a42009dc2
perf(physics): performance.multithreading switches the work over many threads, which each job sizes by how much it has: the physics steps a thread per 128 vehicle steps, up to all logical cores
2026-10-23 21:07:05 +02:00
60667588b5
perf(physics): the steps of the vehicle physics on many threads, in groups of vehicles which act on one another (performance.cpucores, 0: all cores)
2026-10-23 19:56:36 +02:00
2f96dfe767
perf(physics): air flowing along a pipe wakes the physics of a coupled vehicle only when it changes its pressure by more than physics.pipewake (0.001 bar), not with any trickle of it
2026-10-23 19:30:21 +02:00
f17462b186
perf(physics): road vehicles farther than 1 km from the camera go by one step of the physics in a frame (physics.roadlod); count what resets the switching time of the vehicles (compressor, mains, diesel, physics woken) in the debug panel
2026-10-23 18:47:01 +02:00
a04efbf968
perf(physics): vehicles standing still and held by their brakes let their physics sleep (physics.sleepheld)
2026-10-23 18:20:49 +02:00
maj00r
5e846018b6
feat(editor): far out the top view shows the base map of OpenStreetMap from geoportal.gov.pl in place of the imagery, tiles as large as the view needs, the ground not drawn under it nor streamed as far as the view; the tracks over it in the colour of the rails, blue by default, and the joints of the pieces left out far out
2026-10-23 13:35:07 +02:00
maj00r
a892532fda
feat(editor): the top view draws the tracks whole, without the ballast or the rails alone, in a colour of their own over the imagery and the map: both rails close up, one line further out; a choice by the extent and in the View menu, kept in the settings
2026-10-23 13:20:06 +02:00
12c2aaf1db
chore: remove the NVRHI-based betterRenderer
2026-10-21 19:30:32 +02:00
867497b658
Simulate and light the smoke on the GPU and make rain and snow of particles
2026-10-20 16:44:27 +02:00
dfbe8a6d9e
feat(gl46): leave out instance buckets beyond their range before the culling
2026-10-20 14:57:30 +02:00
07ac7406a0
feat(terrain): grass follows the seasons and fades out over gfx.grass.fadedistance
2026-10-20 02:20:03 +02:00
f3bdadad66
feat(terrain): holes cut in the heightmap terrain and shader grass painted over it
2026-10-20 01:32:01 +02:00
de9f61b307
Merge remote-tracking branch 'origin/feat/switch-blades' into feat/gl46-migration
2026-10-19 22:13:43 +02:00
maj00r
d1dbd40566
feat(editor): the top view of the tracks draws the terrain to the corners of the screen, the ballast optional
...
- In the top view of the tracks work area, the renderer's reach is the half diagonal of the screen. It used to be three extents, which cut wide windows short.
- Cells far from the camera no longer draw only their tracks: the terrain shapes are drawn too. Models keep their own ranges.
- In that view, the heightmap streamer loads chunks as far as the corners, up to 50 km. The detail comes from the size of a pixel, not from the distance.
- The walk over the chunks around the camera is skipped while it would ask for nothing, so a wide reach costs little.
- A setting, kept in the editor settings, leaves out the ballast of the railway in the top view, so the ground under the tracks shows. It is in the View menu and next to the extent slider.
- Self-test: ortho <extent> [noballast|ballast], orthophoto off.
2026-10-19 17:10:27 +02:00
8c00b0bc3d
Fit the cascades of the sun shadows to the depth of the view
2026-10-19 12:02:01 +02:00
b1f880b5a7
Cull the scenery models drawn on their own on the GPU with the instances
2026-10-19 10:54:04 +02:00
ffe77be754
Cull the instances of the shadow maps of headlights and lamps on the GPU
2026-10-18 23:14:08 +02:00
64dedb9d53
Record the opaque scene once and replay it for the depth prepass and the colour pass
2026-10-18 21:00:54 +02:00
bc4df5567f
Cull and draw the sleepers of tracks on the GPU with the instances
2026-10-18 03:18:26 +02:00
f4b516eeb8
Cull shadow and reflection passes on the GPU
2026-10-18 01:46:45 +02:00
494304903f
Draw the instances from the GPU with multi draws, the model block of each draw read by its number
2026-10-18 00:47:05 +02:00
maj00r
d25f20a56c
feat(track): 3D sleepers and switch timbers, blade heel and throw from templates, one rail carving pass
...
- sleepers3d / sleepers3dplain / sleepers3dbed in eu07.ini: timbers put together from the begin, main and end parts of a model
and stretched to their length, plain sleepers of their own model; tracks whose plain sleepers would touch are laid as one
cluster, lines of timbers led by priority and turned to the bisectors of frogs and crossings at a limited rate, whole timbers
under crossings, split ones between tracks with room to part them, gaps filled per rail and overlaps shortened or dropped;
clusters worked out in a background thread while driving, on demand in the editor
- the ballast can be left out under the beams (sleepers3dbed no)
- blades get their heel and throw from the switch template or blades <heel> <throw> in the scenery; blades of double switches
run on into the track linking them to the next switch
- rail cutting at frogs, wing rails, movable noses and switch crossings done by one carving pass (RailCarve)
- tint of the rail treads applied to the colour only, without the matte band at the frog
- a switch trailed through with a movable nose set the other way derails the vehicle
- self-tests: sleepercheck, sharedzones, beamsnear, throw, sleepersbg
2026-10-17 23:32:43 +02:00
7221c153dd
Let eu07.ini scale how much the moon lights the scenery at night (gfx.moonlight)
2026-10-17 23:10:01 +02:00
435110cef9
Place the sun and the moon where they are and light the night by the phase of the moon
2026-10-17 22:47:24 +02:00
5a5c67aaaf
Let the instances drawn from the GPU hide one another, in two phases
2026-10-17 21:50:23 +02:00
27e5c07837
Add screen-space contact shadows for the sun, lamps and headlights
2026-10-17 03:11:47 +02:00