IME support (such as virtual keyboards, Windows Emoji selector or something more complex) improved, but just in case it can be disabled now in GUI section;
Odometer loading should be fixed (and for cases without CM used, CSP will keep its own track of total driven distance);
Extra FX TAA works a bit better with LCS enabled (sharpening with it active is reduced now), no longer makes sun black;
Extra FX SSLR should work better with LCS enabled;
Ctrl+Shift+A/T selects previous mode (some other bindings from that group need more fixing, working on it);
Ctrl+Shift+U switches to a previous desktop;
CSP integration of system keybindings fixed, now MGU ones support controllers again, engine brake works properly including held down Shift button;
Automatic shadow splits no longer take FOV into account for interior shots, splits are shown in LightingFX app;
[CUSTOM_PHYSICS] EXTRAPOLATE_STATE = 1 for online servers is removed (please set to 0 anyway if your servers require CSP newer than 2784, to fix issues with 0.2.3);
Dust particles keep their colors for longer;
Radio no longer keeps playing after restarting AC if it was paused, or in replays;
fuPBR… shaders with parallax reduce its contribution at grazing angles, preventing some visual glitches;
Surface colors synchronization for smoke, particles and skidmarks better handles broken materials with widely different ksAmbient and ksDiffuse;
CSP showroom no longer crashes with a certain tonemapping function;
Cars with tyres with insane dimensions no longer break skidmarks, GrassFX and such;
Using track camera for extra shots no longer affects audio (also, Lua scripts can specify cameras set to use);
Origin shift activates sooner to prevent wobbling on some tracks;
Objects Inspector shows state of integer values properly (for example, flags);
Loading original car textures with kn5:: works much better with encrypted models;
HUD toasts (popup messages in the bottom left corner) no longer steal focus on appearing;
Web Browser with its Ctrl+Tab no longer conflicts with Apps Switcher;
Taskbar icons are positioned in a more stable way to prevent flickering;
A bunch of fixes for random crashes when editing configs and such;
Distant headlights glare is removed for now until I’ll redo it in a way that doesn’t rely on cars having accurate headlight light source placement.
Matte glass taking distance into account to adjust blurriness (introduced in 0.2.3) fixed;
Visual part for deforming track walls fixed;
Surfaces FX:
AIs no longer break when driving off-track;
AIs will try and select gravel tyres where appropriate;
Rain FX:
AI tyre selection fixed;
Water splashes from wheels fixed, now spawn in the right place and look correctly as well;
Few other small visual improvements;
Whitish fake shadows outline with ExtraFX should be fixed;
Tyres FX: rain tyre patterns are better compatible with grass and damage, color has been fixed as well;
Domain zone finally fixed;
Mesh raycasting missing some flat static meshes fixed;
Crashes with extended physics setup items happening if − or + buttons were held are fixed (also, the whole thing should be a bit more stable overall);
Track sections set in sections.ini going through starting line should work now;
Gamepad and keyboard keyboard bindings ignore presses if keyboard modifiers are pressed (apart from gear up/down and handbrake for keyboard controls, in case somebody would use Ctrl, Alt or Shift for * gas or brakes); wheel keyboard bindings should already filter out those presses;
Toggling replay mode or seeking its time bar marks cars as jumped preventing some issues with animated entities;
New trees use track occlusion planes (both distant billboards and closer 3D trees), shading slightly improved;
Advanced chunks optimization no longer messes up TAA and motion blur on some tracks;
Yellow and blue flags shouldn’t flicker in obscure cases anymore;
Trees are drawn in mirrors with high quality reflections (with shadows);
Camera app restores DOF settings to previous when closed (for free and F5 cameras);
WindscreenFX forcefully adds transparent flag to windscreen meshes to help some poorly made mods;
A fix for looped lanes without intersections for traffic planner and mode;
Origin Shift is triggered less often, no longer messes up reflections or flexing cars on shift;
60s driver model helmet drawn with NeckFX is fixed;
Skin driver model overrides are ignored if skin driver model is missing;
Meshes with premultiplied blending should be better compatible with ExtraFX;
New modifier for flag shader to act as a tent roof (wobbling with wind, soaking up with rain);
nePBR… and nePerPixelMultiMap_bending now support UV2-mapped stickers;
Default settings for driver model extra shadowing adjusted for better visuals;
New GEAR_RAW format type for CSP digital instruments (regular GEAR now shows the custom gear label if set);
Specify car to take audio from if car audio is missing (also, missing car audio no longer causes a crash);
Car configs can use [AUDIO_VOLUME_EXT] to set alternative volume multipliers for exterior views only;
New [PITSTOP_CAMERA] THETA=, PHI=, RADIUS=, FOV= parameters for track configs altering camera used for tyre changes animation;
New [START_CAMERA] BLOCK_TRAJECTORIES=, POSITION_OFFSET= parameters for track configs altering starting camera;
ksPerPixelMultiMap_AT_NMDetail should support seasonal changes better;
New ksTree_bush shader, acts just like ksTree (including A2C support), but receives per-pixel shadows;
[SHADER_REPLACEMENT_…] entries load SHADER value as a list now, using the last entry that is available;
New parameter for UV-based mesh splitting, UV_REGIONS_USE_SIZE, for simpler configuration;
New BLEND_MODE = PREMULTIPLIED value for shader replacements;
ksWindscreen: new alphaGamma parameter for quickly adjusting transparency;
Shaders ksPerPixelMultiMap, ksPerPixelMultiMap_NMDetail and ksPerPixelMultiMap_damage_dirt now can receive traces from wipers as well;
Tracks load dirt, dust and grass color properly (generic config stops working if sections are present), also loading colors from [DIRT] section if [TYRES_FX] section is missing.
tyreRadius in car state updates with changes in selected tyres;
Shared signing library for some advanced trickery using RSA;
Shared library for raycasting track physics geometry with extra details;
Shared library for storing data using SQLite as backend;
Capturing starting camera is safer;
ac.takeAStepBack() takes a distance argument;
ac.markLapAsSpoiled() got an option to hide the spoiled lap message;
ac.isControllerGear<Up/Down>Pressed() should be triggered by apps such as Unbound as well;
ac.getCarGearLabel() for getting the label of currently engaged gear;
ac.<log/warn/error/debug>() have been moved to C++ side for better performance, now can be deactivated AC-wide (see developer settings in general group);
Load tables from car, track or online script configs;
Leaderboard in Lua state works properly in races with multiple sessions;
Audio:
Group events have volume multipliers set to 100% by default;
A certain DSP entry to access volume peaks live;
Scene API:
Loading extra KN5s with skinned meshes should work now;
Loading different KN5s from the same folder no longer causes issues if they share a texture name;
Extra human models can be loaded to car root much more reliably, applying human surface materials and more;
UI API:
ui.onChat() is fixed;
ui.onDriverNameTag() force activates new tags for the current session;
Web browser engine: few stability improvements, new :onCrash() method, new :texture() method for accessing raw texture directly;
Premultiplied UI modifier works much better;
New functions: ui.<begin/end>MIPBias();
New icons: redo, reset, up (alt.);
ui.onDriverTags(): smoother fading nearby, optional table to override tag settings;
ui.DWriteFont() supports font variations, such as slant, with new :axis() method;
Gameplay API:
ac.setAILevel() upper limit has been raised from 1 to 2;
Define new audio volume levels to be shown in Audio Volumes app (see Rally Copilot volume);
Car physics scripts:
Override ABS behavior;
Values in ac.accessCarPhysics() are no longer zero at the start of the script;
ac.setExtraMass() no longer messes up car resets or pushes player car when AIs teleport;
New Modes:
Few fixes for general look and feel;
Extended physics is now available;
Option to fallback to pit positions if start positions are missing;
Specify Lua apps to open automatically if not (won’t be saved as opened at the end of the session);
Reload on restart now happens after the user car has been teleported;
Finish fade time is customizable;
Mouse shouldn’t get stuck on session results anymore (might also apply to other AC modes such as drift or time attack);
Lua apps:
New ac.setWindowIcon() (if icon updates rarely, works much better than a live icon);
Ability to run a bit of code in semi-background (used by updated Setup Exchange app to show number of available setups on its icon);
Windows can be registered as Object Inspector tools instead;
WeatherFX:
New ac.setExtraAmbientDistance() function for WeatherFX styles;
Graphics Adjustments FFX CAS should pass HDR values above 1 through (without applying sharpening to them), for targeting HDR displays;
Car instrument scripts can override letter used for current gear, allowing to create proper automatic gearboxes;
Online scripts can use ac.storageSetPath() to share settings between different servers.