💦 CREATE AND FUCK YOUR OWN AI CUMSLUT 🔥 TRY NOW ♥
Create AI Cumsluts 💦
lights-patch-v0.2.3-preview211-full.zip 118.0 MB
April 6, 2024

Linear color space

When it comes to rendering, Assetto Corsa always had this problem where all the shading was done in so called gamma space. That’s a common mistake (and in fact, some years ago most videogames were doing things this way), and while I became aware of the fact some time ago, only recently I realized the extent of the issue. Pretty much anything we were trying to do, be it dynamic lights, reflections, fog, sun/ambient light combo, or even something as basic as Lambert model computing light contribution based on surface orientation relative to light, nothing worked correctly as a result. Ever noticed how car reflections were broken at night, for example, or how multiple dynamic lights in the same area were quickly oversaturating the image? If you’re interested in more details, I wrote a detailed explanation on CSP wiki (github.com).


At first I tried to add some shady workaround, but when I was finishing working on the 0.2.2 update it occurred to me how we could change things. It is still required to rewrite quite a lot of CSP rendering, but thankfully done this way we don’t really have to go back and redo all the material settings, so things should look pretty reasonable.


But one thing that couldn’t be automatically adapted was Weather FX styles. When working on them earlier, we were (sometimes unknowingly) putting a lot of effort to try and mitigate issues created by incorrect rendering. I tried to create some compatibility layer, but the results were so poor so now it’s up to WeatherFX styles to decide which color space to use. Right now, only the default style supports linear color space, but I’m sure Peter Boese will update his wonderful styles soon. For now, this is how you can activate the new option:

With the linear color space option active this style would look very different: when rewriting it, this time I used actual lumen values and other sources for reference. It also takes humidity and pressure into account (you can tweak those during the race using built-in CSP Debug app). Here are some before and after comparisons:

Please note: with the new option available some PP filters might misbehave, especially with YEBIS replacement active (and you don’t need to activate it for the color space option to work). Some materials might also seem off: while remapping covers most cases, it might need some further improvements. If you’re working on new content, please have a look at the post I linked earlier.

Surfaces FX

Another big change is an experimental module Surfaces FX. It’s a part of our efforts to bring actual rally races to Assetto Corsa, so it’s mostly focused on gravel behavior, but it also alters grass and sand as well. As an experimental physics extension, for now it’s only available in offline races, or on servers that explicitly enable the option. Please give it a try on some rally track, or just dive into sandpits. One thing to note however, don’t expect existing rally cars with tarmac tyres to behave like cars with rally tyres. Actual rally cars with actual gravel tyres are coming very soon, as well as a Сo-pilot and advanced pace notes editor. But even without those, street tyres can already be fun on gravel.


New physics experiments

While some physics experiments were proven and as such now enabled by default, there are a few new ones available now. No longer you’d need to explicitly enable extended physics in CM, now there is a checkbox simply activating it for all cars. Another option adds lateral rays: while extended physics already adds a lot more rays per tyre, by default those rays are only longitudinal. Adding lateral rays changes behavior a lot more significantly: now curbs are a lot safer to drive on, but those lateral rays also cause contact points to shift left and right, so FFB might noticeably change (and in general, those lateral rays make designing suspension a bit more difficult).

Another noticeable change is an experiment replacing surface noise used for some surfaces with Perlin noise (however, Surfaces FX extension currently pauses Perlin noise completely and replaces it with its own damping-based approach).


Mouse steering extensions

If you’re using a mouse to steer a car, now you can use a Lua script to improve the controls as well. Default script also maps the mouse wheel to shifting gears, so with that and an option to use the middle mouse button to toggle mouse steering you can control the entire car with one hand.

(However, if you have a mobile phone with a gyroscope, I would recommend you instead to take a look into Gamepad FX’s Mobile script. Just change input mode in AC controls settings to gamepad, enable that script and it should guide you through the whole installation after clicking a start button in AC. There were some issues with it previously, but it should work again now; and I should really look into turning that Expo snack into a proper app.)


Other notable changes

  • Some unnecessary settings were hidden to remove the clutter. There is no reason to not use a fix for stereo in VR, for example, so why is it there taking space and confusing newcomers?

  • AIs got a few fixes and a bunch of new tweaks to fix some common issues, most of which are disabled by default, but should work well.

  • If you’re familiar with the Traffic Planner tool, there is a new option allowing you to export lines from it as new AI splines. Just a small addition that might help to save some time in some cases.

  • Astronomical computations are now done by some ancient library from the 90s that actually works properly, way better than stuff I tried to come up with based on some papers I found online. So, the upcoming eclipse should actually be there!

  • Track Adjustments got an option (enabled by default) to snap tyre grooves to the underlying surface. Not a massive change, but it fixes this thing that was annoying me for years.

  • Smart Mirror with Real Mirrors option active can show virtual mirrors only for the mirrors that are not currently visible in the main view, kind of how Euro Truck Simulator 2 does it.

  • VR tweaks: options to change pointer color and to get it to hide faster based on rolling average of its speed alone.

  • Default Weather FX style now can draw lightning properly, not just as distant flashes.

Here is the full list of changes (gists.github.com); as usual nowadays, most of them are fixes or new functions for Lua scripts. And here is a quick install URL.


Thank you so much for such amazing support! Hopefully this build is stable, but the next one, v0.2.3 public with linear gamma space, will be ready very soon. And, apologies for taking that long with this one, I had to rewrite more than I anticipated (although, to be honest, I had a feeling it would be like that).