-
-
Save gro-ove/7328d0f73c73c6732352b507c98aded8 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Dynamic weather conditions online with either a server plugin (documentation is coming soon) or custom acServer implementation; | |
- New WeatherFX controller that uses OpenWeatherAPI to sync conditions with real weather dynamically; | |
- State of wings used to hide and show additional car geometry is syncing online now; | |
- FSR: | |
- Whole thing reworked with officially released SDK: | |
- Quality presets are different now; | |
- Recommended level of sharpening is used now; | |
- Option for adjusting MIP bias according to recommendations; | |
- Old implementation is still present in case you wouldn’t like the look of the new one; | |
- Option to set lower quality setting for left and right sides in triple screen mode; | |
- Optional debug mode: hold Space to quickly switch to simple linear upscaling to compare; | |
- Smoke fully reworked (apart from tyres heating and spawning logic): | |
- New improved shading; | |
- Improved smoke-cars collisions; | |
- Better support for open-wheelers; | |
- Tyre smoke spawns below car with extreme drifting angles; | |
- Dust and splashes spawns around car, not just from wheels; | |
- Dust flies off dusty wheels; | |
- A bit of dust appears for some F1 cars with wooden skidpads when those touch the ground (and can be configured on per-collider basis, similar to sparks); | |
- Clouds of dust spawn on collisions; | |
- Smaller particles for bits of dirt and smaller splashes spawn in contact points; | |
- Long-lasting smoke and dust (lasts for several minutes); | |
- When on grass, instead of dust clouds, more subtle soil particles are used (color is set in track config); | |
- New look for smoke from exhaust, heated brakes and damaged engine; | |
- Smoke won’t show up inside a cockpit; | |
- Colored smoke and dust lose saturation with expansion, with new config parameters to adjust the rate; | |
- Smoke culling improved for further optimization and smoother transitions; | |
- New options to adjust density and on-screen size, to balance between visuals and performance; | |
- With ExtraFX, option to get smoke clipped by windows or, instead, rendered behind them; | |
- Extra effect with smoke covering whole screen, to get effect of camera stuck in smoke much cheaper; | |
- Pieces particles update: | |
- Adjusted types chances, size and shading; | |
- Collision detection now uses car heightmaps instead of depth buffer for more accurate results; | |
- Size of sparks particles fixed, sparks no longer spawn with head-on collisions; | |
- TyresFX: | |
- Grass and dirt on tyres reworked, textures and rendering both; | |
- Soil color is taken into account; | |
- GrassFX: | |
- Active ExtraFX pass option now properly supports fake car shadows reprojection; | |
- Grass deformation updated, now takes into account grass height; | |
- If you’re using original AC motion blur, it would affect grass as well now; | |
- Smart Shadows: | |
- Smooth transition between cascades reworked and is configurable now; | |
- Disk shadows filtering removed, PCF is back until I figure out how to do it properly; | |
- Nice Screenshots: | |
- Old HDR fix thing is now replaced with brightness-based weighted average; much easier to deal with, and it produces better results; | |
- Accumulation DOF: options to customize shape and samples distribution for bokeh; | |
- New rendering modes: 360°, fisheye, split screen (new Content Manager supports custom modes for AC video settings); | |
- Specify joypad index for joypads input mode; | |
- Support for VAO patches v5 with spatial AO samples for dynamic objects; | |
- New sky mesh with more evenly distributed triangles for better reflections and mirrors; | |
- Option to hide console; | |
- Option to create portals to other servers online for freeroam servers; | |
- Scene tweaks from new photo mode app remain active with app hidden, or without replay (in a single-player race); | |
- If VR failed to initialize, there’ll be a warning on loading screen (especially helpful if you accidentally chose wrong render mode); | |
- Similar warning would be shown if ExtraFX would fail to initialize because of AC motion blur; | |
- Chat shortcuts reworked: new UI system, now don’t trigger change in turbo, different approach for alternative set of messages; | |
- Option to unbind digit buttons from changing turbo level; | |
- Triple screen tweaks: option to always show driver name tags (with original system); | |
- Semi-transparent shadows from smoke, flames, semi-transparent objects and such improved with Bayer dithering; | |
- Button for manual control of speed limiter; | |
- Online servers can alter speed limiter parameters, disable forced limiter (with configurable penalties), re-enable collisions in pits; | |
- Walking out module: settings, improved transition, few fixes, selected car is the controlled one, tool for positioning cars a bit more easily; | |
- Custom glare for distant headlights (experimental, disabled by default for now); | |
- VR mirroring: option to fill the screen, new modes for anaglyph mode, additional settings; | |
- Support for custom track tyres raycasting with a CSP plugin; | |
- Option to fix audio alignment (seems like sometimes some AC cameras could break it); | |
- Option to hide CPU occupancy warning; | |
- Option to add border to AC window just in case; | |
- PP-filters now can access additional auto-exposure options, for example, changing how fast AE changes (filters editor got new options in a sub-section of the AE section); | |
- Support for secondary clutch axis (CM support is coming soon); | |
- Option to hide driver name tags and driver points on track map for certain cars online via server config or extended server API; | |
- New driver tags: option to control rendering distance; | |
- Small tweaks: option to alter change AC audio volume during the race with buttons; | |
- Option to remove 1 GB size cap for replays; | |
- Double precision physics engine now enabled by default; | |
- Freer camera: use pedals to smoothly control camera speed. | |
Fixes: | |
- FSR: | |
- Oculus Rift integration fixed; | |
- Virtual mirror incorrectly positioned in triple screen fixed; | |
- Shader `ksPerPixelMultiMap_AT_NMDetail` is finally fixed (has been broken from pretty much first builds of CSP); | |
- Pieces particles occasionally breaking motion blur fixed; | |
- New photo mode app: setting DOF or changing camera FOV doesn’t reset to free camera anymore; | |
- Additional caching during loading no more messes up setup menu (there was a problem trying to load a newly made setup); | |
- Mumble voice chat audio orientation fixed; | |
- Origin shift compatibility: | |
- AI recording tool fixed (didn’t render spline correctly); | |
- Driver eyes positioning tool fixed (similar issue); | |
- ExtraFX bounced light clip plane fixed; | |
- WeatherFX clouds and flickering cloud shadows fixed; | |
- Case of VR with post-processing disabled fixed; | |
- Custom triple splits: misplaced driver names fixed; | |
- Shadows from dynamic lights fixed; | |
- Fixed interior reflections masking flickering in free camera with AMD GPUs; | |
- Interior reflections masking no longer darkens rough reflections that much; | |
- AC crashing when CSP is trying to fix certain wiper animations fixed; | |
- Accumulation DOF works better with real mirrors; | |
- AC shutting down when making screenshots and such with certain mods fixed; | |
- Accumulation DOF no longer breaks with ExtraFX motion blur (without accumulation motion blur); | |
- Memory leak with SMAA fixed; | |
- Possible performance issues with some PP AA modes fixed; | |
- AC stuck in setup check with cars with extended physics fixed; | |
- Monitor mirrors showing headlights as red and blue fixed; | |
- Problems occuring when trying to save and load selected PP-filter are fixed; | |
- Option to draw track AO samples removed to stop people from activating it accidentally; | |
- VAO patches for cars no longer affect windscreen brightness; | |
- Switching VAO sets (with driver/without driver) fixed; | |
- Fur material changing scale randomly fixed; | |
- Disabling windscreen dirt not always working fixed; | |
- FidelityFX CAS now works with FXAA and FXAA 3.11 (fixed) as well as with SMAA; | |
- Half-resolution smoke now works with triple screen mode; | |
- Shader `stPerPixelNM_UVflow` with alpha-test now casts shadows properly; | |
- Low beams not working properly in replays fixed; | |
- Windscreen meshes drawn over driver’s visor (with something like F6 camera) fixed; | |
- Shaking chase cameras fixed; | |
- Tessellation shaders (flags, bending pieces): fog, shadows and ExtraFX effects are fixed; | |
- Randomized wind component getting too large fixed; | |
- Crash with downshift protection on older mods without audio event fixed; | |
- Shadowed wheels and VAO fade out when car tilts too much; | |
- Collision depth is stored in replays now, for deforming walls to work correctly; | |
- Fake Shadows generation for cars like McLaren-Mercedes MP4/13 fixed (now ignores seatbelts); | |
- Cached car data growing too large with repeated entries fixed; | |
- Car heightmap not working correctly with some cars (and resulting in, for example, sparks flying inside) fixed; | |
- WeatherFX: | |
- PP-filter adjustments are reset when current filter is changed; | |
- Default WeatherFX implementation updated and fixed (improved clouds, definitions for cold and hot weather types were missing); | |
- Per-pixel fog used in some shaders fixed; | |
- Replay clips saving is more stable now; | |
- FPS limiter deactivation in new performance stats app fixed; | |
- Loading of extra CSP data for older replay versions fixed; | |
- Pieces of grass and dirt not really working with car driving backwards fixed; | |
- Broken shading (especially shadows) of some skinned meshes fixed; | |
- Fake shadows from front wheels sometimes being rendered above everything else in first persion view fixed; | |
- Default button (numpad’s plus) for Extra D is fixed; | |
- Loading car names from JSON is fixed; | |
- GrassFX culled too early in right eye in VR fixed; | |
- Incorrect configuration for rotating car objects (in extra_animations.ini) would no longer crash the game; | |
- Car wheels jittering back and forth in rare cases when moving slowly fixed; | |
- Replays now can record more frames with extra CSP data; | |
- Bluish reflections with SSLR fixed (it still needs a lot more fixing though); | |
- Cars custom emissives sometimes failing to sync with light sources fixed; | |
- Additional replay data breaking when replays run into size limit fixed; | |
- Extra-long speculars of SSLR are fixed; | |
- Few fixes for headlights range switching with different camera modes; | |
- ExtraFX TAA messing up LEDs fixed (with auto-fix active); | |
- Python app names in Python profiler tool (and possibly more) getting messed up fixed; | |
- Custom raycasting (in general settings) occasionally breaking simulation into brown screen fixed; | |
- Extended raycasting (in custom physics) fixed once more; | |
- AC crashing in track day mode on some tracks because of tyres issue fixed; | |
- Also, AC would no longer crash if there would be meshes and nodes mentioned in camera_facing.ini and sharing the same name; | |
- Fixed first shadows split breaking in VR in some cases; | |
- Photo mode app: making a motion mode shot no longer freezes AC for a few seconds fixed at the start; | |
- Real Mirror no longer breaks after switching driver on and off a few times; | |
- Default car setup “_ext_default” fixed, now loads all the parameters (also now race.ini can define a custom setup to load, optionally fixed); | |
- New driver tags: distortion in VR fixed; | |
- Advanced culling causing initial skidmarks to appear with a delay fixed; | |
- Smaller fixes and stability improvements. | |
For new content and configs: | |
- Override car data files related to visuals, such as “lods.ini” or “lights.ini”, by creating new files in “extension/data_override” folder; | |
- Colorful shadowing: overall look improved, new parameters; | |
- Masking pass shading improved, doesn’t look as messy with darker textures, new parameters; | |
- Custom car physics: | |
- Create hidden car setup items linked to some AC physics controller (for example, to create a suspension with ride height adapting to car speed); | |
- Link clutch damage to exceedingly high torque; | |
- Create extra links for any suspension, linking together hubs or attaching hubs to body with distance or fixed joints; | |
- New inputs for dynamic physics controllers: `DAMAGE_ENGINE`, `DAMAGE_GEARBOX` (0 for original, 1 for fully damaged); | |
- Custom track physics: | |
- Soft walls fixed, with new `MAX_DEPTH` option to limit softness for collisions that are too deep (docs are coming); | |
- Cars spawned aligned to track surface (optional, controlled by track’s physics config surfaces.ini, enabled by default with custom track physics); | |
- Deformable track walls for deep collisions (with soft colliders), for tyre walls and such; | |
- TyresFX: | |
- New `DIRT_OFFSET_K` parameter, similar to `DAMAGE_OFFSET_K`; | |
- Option to set custom meshes for different tyres; | |
- `[MESH_SPLIT_...]`: | |
- Set split name or material directly, or use existing material; | |
- New mode `COPY_FLIPPED` to fix missing interior windows; | |
- New `INSERT_TO` option to specify new parent for new meshes; | |
- Parameter `[BOUNCED_LIGHT] AMBIENT_MULT=0.2` for reducing ambient effect on bounced light now that new VAO patches for tracks have light bounces; | |
- Parameter `[REFLECTIONS_FX] INTERIOR_NODES=…` for cars without properly set `COCKPIT_HR` now works better, affecting more CSP features; | |
- New car instrument inputs for KERS; | |
- Extra car switches (those extra A/B/C/D functions): | |
- New extra E and extra F switches are added; | |
- Switches now can have a name set in config to show in car description during loading; | |
- Optionally, switch can operate in hold mode (active while button is pressed); | |
- Optionally, switch can require stationary car to activate (like a speed key for Bugatty Veyron, for example), or neutral gear, or pressed brake pedal; | |
- CSP configs can add extra comments about car features on loading screen; | |
- Adjustable wings now can affect several nodes at once (easier to get LODs to work); | |
- New `ColoredBlackSpecular` parameter for car paint shader improving look of multi-colored skins, enables automatically with fourth version; | |
- Set soil color for tracks along with dirt and grass color; | |
- Option to set soil, dirt and grass colors for different types of surfaces; | |
- New track inputs: | |
- `CAR_DAMAGE_N` for amount of damage of Nth car; | |
- `CAR_DAMAGE` for maximum amount of damage of all cars (could be tied to roof lights of ambulances?); | |
- `ONLINE_RACE` switching to 1 for online races; | |
- `TIME_SMOOTH`: time of day in seconds without rounding; | |
- In condition expressions, writing “condition:” prefix when referencing a different condition is no longer needed; | |
- In places where previously track parameters could either be a number or reference a condition, now expressions are fully supported as well; | |
- `CONDITION` for track lights and material adjustments now can use expressions too (although, without color support for now); | |
- Issue with parameters `MOVE_MESH_BEHIND` and `MOVE_MESH_IN_FRONT_OF` unable to reorder elements within same parent is fixed; | |
- Track configs now can set flame emitters; | |
- New `common/particles_track.ini` with some presets for track particles (bonfire, stove, flare); | |
- New `common/displays.ini` helping to easily create new quads for digital displays in cars; | |
- Macro `CustomEmissive_UseDiffuseAlpha` fixed, now can use alpha from txDiffuse; | |
- If you’re using wing animations to show and hide extra bits, now you can configure it so “hidden” geometry would actually be hidden, saving draw calls: | |
- Car lights now can be bound to wing states, referencing wing ID and using LUT for brightness multiplier; | |
- For simple cases with two states where hidden bit is either scaled down or moved far away, CSP should be able to guess things automatically; | |
- Tool to quickly generate such animations with corresponding config is available on CSP wiki; | |
- When copying coordinates from Objects Inspector, hold Shift for additional precision; | |
- Brakes input for cars fixed, now uses `[BASIC] BRAKES_THRESHOLD` as default threshold; | |
- Car config parameter `[DATA] DISABLE_DIGITALINSTRUMENTSINI=1` to disable original digital instruments; | |
- Track config parameter `[DYNAMIC_OBJECTS] DISABLE_ONLINE_SYNC=1` to disable syncing of dynamic objects online and get them to start from initial position for each new connected client; | |
- Tracks now can use custom model for static reflections or set shader replacements to act upon a default one (good for hiding trees on tracks like Monaco); | |
- Problem with changes to semi-transparent shadows not applying live is fixed. | |
For new apps and scripts: | |
- Python apps: | |
- Live reload for Python apps with Python apps profiler, including fully automated option; | |
- New functions for time control: `ac.ext_getWeatherTimeMult()`, `ac.ext_setWeatherTimeMult(value)`; | |
- New functions for advanced rendering: render to texture, use custom pixel shaders, access virtual mirror texture for custom virtual mirrors; | |
- Function to check if VR is active or not; | |
- Result of `ac.newTexture()` is cached now, feel free to re-create those textures each frame (although it would still be faster to save value locally); | |
- Lua apps: IMGUI for UI, extra APIs, live icons, fullscreen drawing callback for optional fullscreen HUDs with custom virtual mirror, damage and fuel warning indicators (all optional); | |
- WeatherFX: | |
- API to create and manipulate dynamic lights for more advanced visual effects; | |
- New `ac.setSkyV2SunSaturation(number)` to adjust sun saturation; | |
- New `ac.setTrackConditionInput(key, value)` function which also allows to override `AMBIENT` input; | |
- Functions to adjust VAO and extra AO samples parameters; | |
- New sky-covering clouds using panorama textures as an alternative way to render clouds; | |
- Option to load textures asynchonously, new function to unload textures; | |
- New cloud material parameter `normalFacingExponent` for adjusting normal calculation (default value is 0.5); | |
- New cloud parameter `normalYExponent` for shifting whole cloud shape, to get it to look more as if camera is below; | |
- New cloud parameter `topFogBoost` for boosting fog at the top of the cloud; | |
- Implementation and controller scripts now can do some work in parallel, reducing load on main core; | |
- Controller scripts got new API for making HTTP(S) requests; | |
- Lua scripts: | |
- New module to create Objects Inspector tools using Lua, with extended API for creating various UI controls; | |
- Helper functions: `try(block, catch, finally)`, `class()` for creating classes easily (uses middleclass); | |
- New table functions `table.filter()`, `table.map()`, etc. | |
- New timer functions `setTimeout`, `setInterval` and `clear…` counterparts (similar to JavaScript); | |
- New I/O functions `io.exists()`, `io.load()` and `io.save()` (only for scripts that would have access to I/O); | |
- Load and store typed values with `ac.storage` (could be used to access string values based on keys or, for faster access, create localized holders); | |
- `ac.load(key)` returns nil if no value with such key was stored before; | |
- More functions to access more details about simulation state like type names, driver names and nationalities, etc.; | |
- Lua scripts being unable to find referenced files nearby fixed; | |
- Scriptable displays: | |
- Script could be in a separate file (`SCRIPT=script.lua`, same as LUTs); | |
- Access mirror texture to create displays with rear view camera and overlays; | |
- Define new cameras (similar to rear view mirror) with optional post-processing and access them in script, for this like parking camera activating with reverse gear; | |
- React to clicks on other meshes (optionally limiting area to certain UV coordinates), so they could act like buttons; | |
- Change car state: switch headlights, high beams and extra toggles; | |
- Control some of car inputs: alter ABS, TC, brake bias, turbo wastegate, engine brake, etc. (could be used to create a dashboard similar to one of BMWs with extra car settings); | |
- New `display.horizontalBar()` function for simple drawing of a progress bar made out of segments; | |
- API to create dynamic lights and custom audio events (including an option to load a custom soundbank); | |
- API to access nodes and meshes and move them around, hide/show or change their material properties; | |
- Scriptable displays for tracks (similar to cars scriptable displays with access to track conditions and ability to set custom condition inputs); | |
- New values for car state for Lua scripts: KERS state, number of gears, number of turbos, H-shifter state and more for user controls and for specific cars. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment