The online racing simulator
October Progress Report
(381 posts, closed, started )
Quote from nacim :What's the use of the "CPU generated sky" ? Is it used to generate the ambient Spherical Harmonic or something like that ? Can't you reuse the GPU skybox, downsample it and upload it back to CPU ?

Yes, the CPU sky is for:
- ambient lighting spherical harmonic (for directional ambient lighting)
- maximum brightness value (needed before the GPU sky is generated - see below)
- average sky colour (I'm trying to move away from any uses of this)

The GPU sky can still be stored as a 32-bit SRGB texture, doesn't need to be 64-bit HDR if I know the maximum value (from the CPU) before it is generated on the GPU. Each pixel is then multiplied by (1.0 / max_brightness) so the sky uses the full 24-bit range of colours.

I'd sometimes like to be able to generate things on the GPU and read the texture back into system memory for analysis by the program, and I do this, not in realtime, in a few places:
- baked ambient and artificial lighting render
- path-based echo map
- path-based ambient lighting render for cars (called 'lightmap' in LFS)
- path-based occlusion test (called 'optimiser' in LFS)
- calculating average colours from textures

But as far as I know, reading back the texture from GPU to CPU will always cause a small glitch or hesitation, because the CPU must stop and wait, when it calls GetRenderTargetData, until the GPU is ready to send the data. I'm not sure if this is the case with later versions of DirectX - I think later versions are better for getting data back from the GPU because of compute shaders and so on. But I think this is a limitation with DX9 so I've avoided using that in real time situations. Anyway the CPU sky at 64x64 only takes 3 milliseconds in the debug build, and as it's on that separate thread there is no glitch at all, so I think it's quite good now. The lighting system judges that the sun has moved enough to need a new sky, asks the CPU sky thread to make a new sky, then when the CPU sky is generated a few ms later, the main thread tells the GPU to generate the new sky (seems to take no time at all).
Open source doesn't mean you can just take code and use it an a closed source environment... (In this case you can because it's MIT licensed)
Quote from PeterN :Open source doesn't mean you can just take code and use it an a closed source environment... (In this case you can because it's MIT licensed)

Depend on the type of license as you said, tbh open source projects ( I use Blender ) are great for learning/research purpose, for those who are into soft developments.
Gpu and cpu optimization, multithreading. It sounds great.
Thanks for the updates Scawen! Always an interesting read.

Quote from Evolution_R :BeamNG: Color Space, Lighting and HDR Rendering

I still think the new graphics of Live for Speed looks better.

The devs from BeamNG are doing an awesome job as well. Their blogs are quite interesting to read, and that game is so much fun. But sorry, both the old and new graphics from BeamNG look better than LFS. Looking at the pictures and videos from the BeamNG update they have stepped it up for sure. The night mode from LFS might look better though, but can't really tell because I compare the video with some nice crisp stills from Scawen. The shadows really look weird, and the way objects suddenly get lit because of the headlights really looks weird (look at those big pillars that support a road above).
Quote from Scawen :So, a good day's work, though not the sort of thing that sounds very exciting to most people.

the work of this 'most people' themselves is not interesting. Good to read that something is being done on multi-thread/multi core level.
Quote from simon1234 :Scawen forget about the forum just get an update out Thumbs up

That is not how it works in real life. Sometimes explaining whats going on can lead to new insights or some new/other idea. Communication is pretty important.
Quote from cargame.nl :That is not how it works in real life. Sometimes explaining whats going on can lead to new insights or some new/other idea. Communication is pretty important.

That's very true. I'm sure Scawen is familiar with Rubber duck debugging Razz.
Hello,
after the redesign of the tracks have you planned a redesign of the cars?

thank you Smile
Quote from Nanex :after the redesign of the tracks have you planned a redesign of the cars?

Current patch is about new shadowing system (and maybe tires physics).

The new shadows require fixes of every track models, to have correct rendering of shadows without some kind of glitches/blinking/wrong-look/etc...

But the old car models render OK-ish with the new system. They look outdated, but they decided to not delay this patch by couple of years to update also the cars (as they already work as is), so they limited the patch to update "only" tracks.

So "no" (in this patch).

(if you are asking about future... well... can you imagine not updating the current cars if they are trying to create "best online car racing simulator"? As long as they are developing LFS, it's just question of time and priorities, but at some point either cars will be updated, or mod-tools will be released. The only other option is, that the development will stop before one of those happens).
I like how the bloom works with highlights.
Attached images
bloom_fz_highlight.jpg
It looks amazing! Heart
I hope these white 'edgy' pixels are easy to resolve -
They are not very easy to resolve. Antialiasing doesn't work very well in HDR when very bright pixels are next to dark pixels. Because when the GPU takes the average of the bright and dark samples, the result is still 'very bright'. The effect is also noticeable in some of the night pictures, where there seems to be no antialiasing on the edges of the street light lens.

EDIT: Actually this doesn't seem to be the same issue. This is more about reflections on edges and I guess you can see it in the public version too (maybe less so as you don't have such bright patches on environment maps). Anyway I don't think it's that noticeable, maybe worse if you are examining a screenshot.

I like the effect of bloom in the day when there are occasional bloom effects when you see the sun reflected in the window of a building, and when the sun itself is seen, flickering in and out of brightness behind some trees. I've found it looks best when moving rather than in screenshots.
i see a small video coming?? Tongue
bloom looks nice indeed.
indeed bloom is very nice !
But yes, the lack of antialiasing or the lack of pixels used for the car are noticeable on screenshot.
Quote from Bass-Driver :i see a small video coming?? Tongue
bloom looks nice indeed.

Yeah we have to check a video! Smile

A single screenshot is too easy to point out weird looking pixels.
The bloom effect seems very well tweaked for a start! many games like to exaggerate this effect which make them look awful!

I think those white edges are from the FZ5 mesh model, they are too sharp.
Quote from Scawen :I like how the bloom works with highlights.

Why the rims reflect the sun in this prespective? Is that the new lighting?
Quote from Flotch :the lack of pixels used for the car are noticeable on screenshot.

so what you are saying is a more high res car model would improve the situation? *cough*.. OK Smile
Quote from cargame.nl :so what you are saying is a more high res car model would improve the situation? *cough*.. OK Smile

Even some tesselation might help?
About rims reflecting the sky where it shouldn't... maybe they need a separate shader. Shrug
Quote from cargame.nl :so what you are saying is a more high res car model would improve the situation? *cough*.. OK Smile

Higher resolution cars wil be a must after all the efforts been done over the tracks ! But, after Wink
Quote from Evolution_R :It looks amazing! Heart
I hope these white 'edgy' pixels are easy to resolve -

Obviously not a solution, but on a high-DPI monitor (say 4K 22") it won't be nearly as noticeable.
Quote from Evolution_R :About rims reflecting the sky where it shouldn't... maybe they need a separate shader. Shrug

Maybe Global Illumination would be the "easy" but performance costing answer here rather than separate shaders?

Bloom is looking very good and not overly done.
This thread is closed

October Progress Report
(381 posts, closed, started )
FGED GREDG RDFGDR GSFDG