2dc70a50bc
perf(debug): memory of the process and of its parts in the debug panel: resident, peak and private memory, card memory (GL_NVX_gpu_memory_info), the copies kept by the textures, geometry banks, models, scenery shapes and lines, sleepers and sound buffers
2026-10-23 22:02:03 +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
9f7217256b
fix(physics): the external program messages (multiplayer) no longer keep the physics steps in one thread, only network sessions do; the debug panel tells what keeps them in one
2026-10-23 20:12:02 +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
9a7ff372f7
perf(debug): count what wakes the physics of the vehicles (brake pipe, main reservoir pipe, command, speed, acceleration, neighbour, other) in the debug panel
2026-10-23 19:08:09 +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
e054fe900d
perf(debug): count what keeps the physics on in rail vehicles standing still (active cab, speed, acceleration, switching, ezt/dmu, moving neighbour), for the debug panel
2026-10-23 18:06:12 +02:00
0aa1e2d4b6
perf(debug): forces and update of the vehicles by kind in the debug panel: rail and road, within 1 km of the camera and farther, with the counts of vehicles and of the ones standing still
2026-10-23 17:54:05 +02:00
5a53c32b0a
perf(debug): forces and update of the vehicles by kind in the debug panel: rail and road, within 1 km of the camera and farther, with the counts of vehicles and of the ones standing still
2026-10-23 17:51:15 +02:00
52df707f30
perf(debug): parts of the vehicle update in the debug panel: scenery animations, power grid, roads, preparation, forces, vehicle update and ai, with the counts of vehicles and physics steps; input and the start of the ui frame timed apart
2026-10-23 17:26:44 +02:00
fc714d50ec
perf(debug): cpu timers of the simulation and the main loop, cpu time of the frame parts next to the gpu, renderer data of the debug panel in folding sections
2026-10-22 20:54:30 +02:00
5d3f857c39
perf(gl46): leave out instance buckets before the culling, lod bounds once per model, shared walks of the shadow cascades
2026-10-22 20:13:25 +02:00
b343e98e22
fix(roads): a level crossing watches the rails within its warning distance measured from where it is, however long the track through it
2026-10-22 18:42:36 +02:00
8fbf056749
fix(ai): a road order holding the vehicle keeps the road orders past it from telling the vehicle to drive on
2026-10-22 18:01:04 +02:00
f4f8c75e49
fix(ai): orders of road junctions and level crossings measured along the lane they lie on, so they aren't misplaced on short lanes
2026-10-22 17:16:33 +02:00
29f624024f
feat(ui): memory cells section in the debug panel, to look up and set them while the simulation runs
2026-10-22 16:42:56 +02:00
1cc1ba27d2
fix(roads): an axle getting on a crossroads takes the way the other axle took, one starting where it gets on
2026-10-22 16:22:49 +02:00
c7f4790aa9
fix(track): the blending at the joints exactly as long as set, however far apart the vertices
2026-10-22 00:29:00 +02:00
c17d77fe6c
fix(track): a blending length of 0 on either side keeps the joint sharp
2026-10-22 00:11:26 +02:00
173fe2ec3c
feat(editor): ballast and rails blending lengths apart, as sliders
2026-10-21 23:51:43 +02:00
925f5910bb
refactor(track): the ballast fades into that of the tracks joined, as the rails do
2026-10-21 23:36:03 +02:00
b8eb5c71a1
feat(track): parallax track materials blended at the joints
2026-10-21 23:25:40 +02:00
674abfeeab
fix(track): seasonal and specgloss track materials blended at the joints
2026-10-21 23:15:29 +02:00
283b8523e6
feat(track): normal mapped track materials blended at the joints too
2026-10-21 23:04:53 +02:00
6b87fe43b3
chore(track): log why a material isn't blended at the joints of the tracks
2026-10-21 22:52:59 +02:00
c5a894a674
feat(track): rails and ballast blended into those of the tracks joined, where their textures differ
2026-10-21 22:34:57 +02:00
407a555803
fix(track): 3D sleepers of a track's own sleeper model at the height it was fitted to
2026-10-21 22:01:30 +02:00
2d7942786d
feat(track): each 3D sleeper at the level of detail of its own distance
2026-10-21 21:48:17 +02:00
12c2aaf1db
chore: remove the NVRHI-based betterRenderer
2026-10-21 19:30:32 +02:00
9c2520ea52
fix(track): 3D sleepers let go of the beams of the tracks far away
2026-10-21 18:19:21 +02:00
83c8c23c80
feat(editor): presets of the track properties, applied on the selected tracks
2026-10-21 16:09:05 +02:00
16c77ab6fb
feat(editor): texture of the rails of path 2 of a switch set apart
2026-10-21 15:50:00 +02:00
30cb83584d
fix(track): timbermodel of a track lays switch timbers without sleepers3d in eu07.ini
2026-10-21 15:37:11 +02:00
3c890e4eb9
Make the default material matte
2026-10-21 15:03:14 +02:00
ae3e063df0
Add a list of the terrain chunks to the editor
2026-10-21 13:15:44 +02:00
7d0f76aaa9
Make the material shaders physically based
2026-10-20 18:39:31 +02:00
cf36b24e8d
Let the smoke leave the exhaust as a widening jet that fades in
2026-10-20 18:00:51 +02:00
abbdca4773
Let the templates of smoke sources set how fast their particles rise or fall
2026-10-20 17:12:23 +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
6a109e984c
perf(gl46): skip shapes out of the pass frustum and the motion blur when nothing moves
2026-10-20 15:23:03 +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
ceb439b218
Fix windows build
2026-10-20 01:38:33 +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
d7ba6926fc
Enable rail crossings and sleepers
2026-10-19 22:17:09 +02:00
34f206fefc
to de9f61b307
2026-10-19 22:14:04 +02:00
de9f61b307
Merge remote-tracking branch 'origin/feat/switch-blades' into feat/gl46-migration
2026-10-19 22:13:43 +02:00
maj00r
33892c1936
fix(editor): a touchpad swipe going on past the edge of the window no longer throws the camera away
...
With the cursor out of the window ImGui has no place for it, and the ray
under it came out as NaN: the zoom put the camera there for good and the
next look at the ground under the cursor aborted. The wheel is left
alone then, and the ground isn't asked for a point which isn't one. The
self-test gets leave, the cursor taken out of the window.
build-feat-switch-blades
2026-10-19 20:02:03 +02:00