Release of Build 1118
Yes, it’s still a bit too early for our monthly roadmap, but it is about time to announce Build 1118, which comes around two and a half months after our previous update. Why did it take so long, you might ask? Because we needed to take some time to complete some bigger tasks, such as overhauling our package management system, deploying the first step of our graphics improvements and integrating our brand new broadcast overlays. All in all, this is a considerable update with a mix of improvements, fixes and new features. On top of that, we are also proud to release a brand new track, the Berlin E-Prix Track, which is on sale in our store right now.
https://store.steampowered.com/itemstore/365960/detail/49/
Things that have not yet made it are the release of Portland International Raceway and an update to the Zandvoort 2020 track, but both will come soon!
In terms of feedback we would like to invite you all to provide feedback on a couple of things. First of all, the graphics updates and how they affect the content you use. Secondly, if you are doing broadcasts, we’d like to know what to bring next to the overlays. Finally, we encourage you to give the new UI another try. It’s not the default yet, but we intend to make that switch soon, initially leaving the old UI as an option in a beta branch but eventually phasing it out altogether. We will also phase out our 32 bits version as hardware surveys tell us it’s not being used anymore as users have all switched to 64 bits operating systems.
Broadcast Overlays
Broadcast overlays are now integrated into the simulation as part of this update. That means you can use them directly in-game or with a broadcasting tool like OBS or XSplit. The overlays come with a separate control panel that can be used to control cameras as well as enable specific broadcast elements. It is available as a web page, which means you can remotely control the connected client from another computer or tablet. The overlay itself is also available as a transparent web page for integration into broadcast tools as well as directly in-game when you watch in full-screen.
There is also a system to customize overlays for your own league, tweaking colors, adding your own logos and customizing the style through CSS (cascading style sheets). This customization also includes support for setting safe regions when broadcasting to linear TV and a way for a single control panel to control multiple clients, in case you need to stream the same cameras to different output formats in the highest quality, completely removing the need for expensive frame interpolation hardware.
Our future roadmap here includes a guide on how to customize overlays as well as to add support for distributing them via the workshop.
Graphics Development
This release sees numerous updates to the graphics engine of rFactor2. These updates will allow us to build higher quality content going forward, and shortly they will let you do the same with mods. As an overview we have addressed some teething issues we were having with our PBR implementation and equalized the lighting equations between PBR and non-PBR. We have also corrected a range of balance issues with the lighting, postfx and atmospherics setup. This will allow us to release content of a much higher quality going forward; however, it will mean that some mods will require some fixes to look their best. In testing we have found that some old content is not configured correctly, and the old lighting setup masked these issues.
Now let’s take a closer look at what we have done and the implications of those changes. After an in-depth look into verifying the results of our PBR lighting pipeline against ray tracing solutions, we found that we had to make some adjustments to correct various issues with diffuse and specular output. This will make it much easier for artists to author content as things start to just behave naturally. Previously, in order for our new content to fit with the old content, we had to run a very constrained version of the shaders. This was one of the reasons we did not support modding with them yet. These changes will allow us to run at the full output now. The first track to be fully developed with this in mind is the just released Berlin Formula E track. However as a result of these changes you may find the lighting balance not quite right at Le Mans or other tracks recently updated to PBR. We will update these shortly.
We have also ported those lighting calculations over to the old shaders. However, the pre-PBR shaders required much darker albedo maps than is normal. As a result we have had to apply an automated correction to these textures. The intention is that these corrections will, on the shader side, push the albedo maps into the correct ball park for real-life albedo values, which the PBR shaders take as a rough input guideline. This change may take a bit of iteration, so please be patient and give us feedback if required. The main change resulting from all this is that the ambient lighting will be brighter on content using non-PBR shaders. It is important that ambient probes are set correctly. In our tests we found that mod tracks with poorly setup ambient probes resulted in bad lighting. Examples of this include them being in areas of strong colour cast (such as over a lot of very green grass), or underneath the terrain (resulting in the bottom of the ambient probe being brighter than the sky), or really high up in the sky (so the ambient probe receives much more sky contribution than you would expect, making it very blue in general). On content that had good ambient probes, we found that there was minimal difference, other than a slightly blue shift, due to the increased ambient lighting.
Some custom Showrooms may require updating, depending on how they have been authored. If they are suddenly very dark then this is why, as we could not apply this auto correction to the built in ones, and we need to review the way old content is being rendered in them.
We also took an in-depth look into our PostFX setup, and have iterated our configuration there further. The first area of interest was reviewing the exposure and the tone mapping. With the changes made to the output of the shader lighting equations, this was vital to ensure a naturally balanced scene. We have enabled auto exposure in limited situations for now, such as external cameras, and attached cameras not in the cockpit. This will allow us to test these changes further before enabling in the cockpit. We have spent a lot of time taming the glare settings so that we can use the full range of specular during the daytime, although trackside nightlights are still partial to glare quite a bit – we do intend to address this though. We also experimented with some more advanced effects that we may introduce at a later date. We will most likely tone this down in the content. In the future, we look forward to key framing different conditions in order to bring this to life even further.
The atmospherics and sky has had a pass to try to link everything together better. We have reviewed the sky configuration to improve its balance in general. We paid quite a bit of attention to the visuals as the sun starts to go down and to make sure that we are keeping appropriate amounts of light in the sky as it progresses into night. There are clear gains there but there’s still more work to be done. We have done some basic adjustments to the cloud rendering to ensure they are rendered with more natural colours and linked them up to the horizon haze to try and ensure a more natural horizon under various conditions. Finally, we have also changed how fog is applied on the entire scene. There is a lot of content in rFactor2 that suffers from a significant issue concerning the amount of fog applied and the overly blue colour it presents in many conditions. We have therefore decided to apply fog to the scene from an authoring perspective in a different way. We will expose variables to configure this shortly. We now have a base level of fog which is applied over the scene on a clear day. The default value is set to a realistic value for a scene with an accurately modelled vista, such as Le Mans or Nordschliefe, where you can see far into the distance. We then have extra fog or atmospherics that are applied as the conditions change, such as the sun going down, or as it becomes more cloudy or starts raining. This may present some issues at tracks where a static horizon has been placed unrealistically close to the foreground though, and it would be better to change this mesh so it is at a more realistic distance. These settings now also apply to the sky, so we no longer have really bright blue sky on the horizon on a completely cloudy day.
We have also iterated our shaders further. There are various fixes and improvements to allow us to make improvements in various places on the new IBL shaders. We added a new Car Tyre shader, which will be used in the near future, as well as an IBL Terrain Legacy shader to allow for easier porting of old content to the new setup. The one major thing missing from this release that we have spoken about before is the Screen Space Reflections development. This is well advanced, yet needs further performance testing before it is released. We have, however, ported over some of the basic developments from this to the new release which make wet weather conditions look even better on PBR tracks.
With regards to full modding support, this is something we envisage that we can start offering after we have completed the Le Mans race next month. Our team has a huge amount of documents ready to port over for modder support once things become a little less busy!
New UI
Improvements to our new UI are ongoing, and we have already tackled the following things:
- We’ve now included options to select a custom showroom and HUD.
- Tuning info for the selected car is now correctly displayed.
- Setups now allow you to view and edit notes again.
- Enabled resume from replay.
- Added options to create custom skins and teams in the showroom.
- Properly detect if we’re offline and adapt the UI to that situation.
- Disabled options in the setup screen are now more clearly marked as such.
- Notification icon changes when there are new, unread messages.
- Ensured that parc ferme settings are always respected by the UI.
Improvements and Fixes
Apart from the bigger features above, we have done quite a few “smaller” improvements and fixes that should improve the overall experience:
- Fixed a graphics freeze that could occur on some systems after driving for roughly half an hour, at which point it could freeze for over a second, which was sometimes causing mild framerate stutters at other times.
- Improved the speed of real-road synchronization when a client logs into a server. As we developed more laser scanned tracks with significantly higher polygon counts for the road surfaces, this synchronization was taking more time. This has now been addressed, and you get a message when joining to indicate this process is ongoing. In general, you will want to wait for it, but you don’t have to. During the process, your frame rate might be slightly lower.
- We’ve reviewed the package management system and fixed several bugs related to packages and their dependencies that could cause scenarios where content would not correctly install and, worse, allowed you to join a server without having all content installed. The whole system is now made much more robust, and we also managed to speed it up.
- Our real-time logging has also been improved as we keep trying to track down further issues.
- Fixed the wrong track loading sometimes when loading a saved replay.
- Fixed newly saved replays not immediately showing up.
- Made a few small improvements to controller rearrangements, making sure we detect a controller regardless of what USB port it plugs into.
- Especially for long races, we have now implemented a way to resume a race on the same or a different server in case of networking problems. At the end of every lap, the current standings and order are backed up and these script files can be run on a new server to resume the race after all drivers have rejoined. We’ll explain this system in more detail in the upcoming weeks.
Formula E Berlin E-Prix 2020 Released
The Big City life – Berlin is not just the capital city of Germany, but it’s also one of the few places that has been visited by the Formula E circuit each year since 2015. The former airport Tempelhof makes for a great event venue for this “electric spectacle” and has become one of the most anticipated races for many Formula E drivers, not just German drivers.
The Berlin ePrix features vast concrete planes rather than smooth city street asphalt, turning it into a unique challenge for everyone who wants to be on the top spot of the podium. The layout itself mixes high-speed straights with very technical sectors, forcing teams to setup a car that can shine on both. With 2.3 kilometers of track, Berlin offers plenty of chances to make a move and climb up the ranking. The very long turn 1, which leads into a chicane-like sector, is a real highlight not just for the drivers, but also for the crowd, as the grandstands create arguably some of the best views you can have when visiting an ePrix.
The long straights open up to create a real fight for slipstream, giving an advantage to drivers who can use the full capabilities of their brakes. This leads into the long turns that also allow for alternative entry and exit lines, giving defenders many possibilities to cut back in front or strike back on the exit. Rhythm is absolutely everything on this track that feels, because these are no roads, like an airfield. More like a classic circuit track rather than a typical Formula E street race, 10 corners have to be tackled before a lap time can be posted on the board. This track demands a smooth driver for consistently quick lap times.
It’s your time now to prove that you are this complete driver, smooth but aggressive enough to go deep under braking, and precise on every single exit to maximize speed on the straights!