maj00r
|
85b76acca5
|
perf(sleepers): the instances of the sleepers and timbers of a track sent to the gpu once, as it's laid, and kept there in a buffer of their own; in each pass the runs of them in sight turned by the modelviews of their cells into the instance buffer of the frame by a compute pass, one dispatch and one barrier a pass, and drawn in one instanced draw for each model, part and level of detail, in place of the cpu turning every instance every frame
|
2026-10-24 01:40:34 +02:00 |
|
maj00r
|
f155956669
|
perf(sleepers): the rails of each track for the fastenings worked out once and kept until its geometry is made again, it goes far or the crossings change, not again for every track laid around it; the fastenings laid only out to 30 m past where they're drawn, the tracks further out keeping their beams to lay them on as they come near; out past 50 m the tracks laid while the laying in a frame took under 2 ms, the rest in the frames after
|
2026-10-24 00:23:50 +02:00 |
|
maj00r
|
5aedbcdc1b
|
feat(sleepers): the timbers of a switch get the fastenings of the rails from the submodels plate, chair and check of their model: a plate under each rail where it lies on a timber, slide chairs under the stock rails along the blades, a fastening of both where a check rail or another rail of the frog lies close beside, the legs of the nose in one plate where they're joined; the rails sit on the plate, the blades ride on the slide plates of the chairs as high as the model has them, their webs shortened; the fastenings drawn within 120 m; selftest fastenings
|
2026-10-23 16:46:58 +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 |
|
|
|
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 |
|
|
|
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 |
|
|
|
2d7942786d
|
feat(track): each 3D sleeper at the level of detail of its own distance
|
2026-10-21 21:48:17 +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 |
|
|
|
30cb83584d
|
fix(track): timbermodel of a track lays switch timbers without sleepers3d in eu07.ini
|
2026-10-21 15:37:11 +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 |
|
|
|
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 |
|
|
|
0545f93f24
|
Keep the hotspotpower of light points apart from their colour
|
2026-10-19 17:51:13 +02:00 |
|
|
|
8c00b0bc3d
|
Fit the cascades of the sun shadows to the depth of the view
|
2026-10-19 12:02:01 +02:00 |
|
|
|
e7c65993d8
|
Copy the textures of the terrain layers again when the season or the weather changes
|
2026-10-19 11:09:57 +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 |
|
|
|
2e30366235
|
Draw the recorded instance draws with the variant seed they were recorded with
|
2026-10-18 18:41:33 +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 |
|
|
|
7221c153dd
|
Let eu07.ini scale how much the moon lights the scenery at night (gfx.moonlight)
|
2026-10-17 23:10:01 +02:00 |
|
|
|
41cc966103
|
Show the moon by day as bright as its sunlit surface, and where the sun and the moon are in the sky window
|
2026-10-17 22:59:23 +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 |
|
|
|
0dae1f0b9f
|
Give the fog volume a slice of the fog without its clouds for the sky
|
2026-10-17 19:56:35 +02:00 |
|
|
|
dd89aa5396
|
Fray the edges of the volumetric clouds with a finer noise and let their billows shade one another
|
2026-10-17 17:57:25 +02:00 |
|
|
|
27e5c07837
|
Add screen-space contact shadows for the sun, lamps and headlights
|
2026-10-17 03:11:47 +02:00 |
|
|
|
97112b143b
|
Draw the depth of the whole scene before its colour
|
2026-10-17 02:15:50 +02:00 |
|
|
|
f352718e4a
|
Stream model data through persistently mapped buffers
|
2026-10-17 01:24:33 +02:00 |
|
|
|
e31a49f917
|
Sample the fog cells across their whole size and take their lamps from fixed clusters
|
2026-10-17 00:22:29 +02:00 |
|
|
|
e8dbaf70a9
|
Sample the fog cells in their middle across the view and dither the output
|
2026-10-17 00:11:27 +02:00 |
|
|
|
6ee628aaa5
|
Steady the volumetric fog and add a switch for the old headlight beams
|
2026-10-16 23:23:51 +02:00 |
|
|
|
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 |
|
|
|
d509775269
|
Cast shadows of vehicle headlights from the scene in their beam in the GL 4.6 renderer
|
2026-10-16 14:13:36 +02:00 |
|
|
|
466cb5339e
|
Draw instances from the GPU culling with indirect draws, occlusion culling and a depth prepass
|
2026-10-16 12:54:52 +02:00 |
|
|
|
2f0a06b98e
|
Cast shadows of scenery lamps from the scenery, nearby vehicles and the cab in the GL 4.6 renderer
|
2026-10-16 11:32:45 +02:00 |
|
|
|
06d7b9e9f0
|
Cast shadows of the cab lamp from the cab in the GL 4.6 renderer
|
2026-10-16 02:43:27 +02:00 |
|
|
|
4d3a401aae
|
Cull and assign LOD to instances in a compute pass
|
2026-10-16 01:08:44 +02:00 |
|
|
|
9277c28805
|
Cull instances by compact records and draw them from a shader storage buffer
|
2026-10-16 00:37:54 +02:00 |
|