Repository navigation
Releases
Tourline Prologue v0.2.4
Tourline Prologue v0.2.4
This update greatly widens optional shader preparation, makes it cheaper to
compile, and fixes a dealership loading freeze and analog trigger pressure.
Run preparation again after updating. The renderer's generated shader text
changed, and that text is the cache key, so shaders prepared with v0.2.3 are not
reused. Your old cache is left in place but goes unused; normal launching still
works without preparation. The first launch of this version offers it once
(see First-launch offer).
Wider shader preparation
- The starter now has 12,669 verified pipelines across 3,446 programs
(v0.2.3: 5,669 across 1,881). The 7,000 additions come from a content sweep;
every one passed fresh shader, native-pipeline and persistence checks. - Preparation now also enumerates the game's shader catalogue from your own
GT.VOL/ELF: about 22,300 fragment and 2,240 vertex compiles, independent of
what anyone has played.GT5P_PREPARE_ENUMERATE=0skips this stage.- Expected gain: fewer shaders compiled during play. In one cold High Speed
Ring start (720p, 2x MSAA), the first 20 seconds served about 950 shaders
from the enumerated cache and compiled 205, against 375 compiles with an
empty cache. Median frame rate in that window was 29 against 20 FPS, and
the scene drew instead of showing a black view. - This is one route on one machine. Native driver pipelines are still created
on first use, so it is not a zero-stutter claim. - Cost: roughly 220 MiB more disk.
- Expected gain: fewer shaders compiled during play. In one cold High Speed
Cheaper shaders, faster preparation
-
Sample sharing: single-sample and multisample variants of a fragment
program now compile to one shader. Distinct pixel shaders in the starter fall
from 6,965 to 3,592, and enumeration fragment jobs from 34,355 to 22,282. -
Simpler shader text: looped vertex fetch, right-sized fragment registers
and lazy sRGB helpers produce the same shader output, checked bit for bit on
the GPU for all 1,120 vertex programs, for less compiler work. In-game GPU
time is unchanged within 5%. -
Preparation pipeline: compiler workers scale to the CPU (four on 8+
logical processors), bundled bytecode replaces thousands of file reads, and
verifying an existing cache falls from about 30 s to under 2 s. -
Measured on this machine:
Stage Before v0.2.4 Catalogue enumeration 1,028 s 262 s Full v0.2.3-sized (5,669-record) preparation 731 s 336 s -
End to end, measured: one full fresh preparation of the shipped
12,669-record starter plus enumeration, through the frozen helper on this
machine (i5-12400F, 6 cores / 12 logical processors, so four compiler
workers; original GT.VOL and ELF read in place; empty storage), took
579 s (9.7 minutes) and about 0.96 GiB of disk:Stage Seconds Start-up, game archive check, asset reads (before each of the two phases) 49 Vertex shaders (627) 23 Fragment shaders (12,669 records) 124 Native pipelines (inputs, create, lookup, verify) 127 Shader packs 3 Catalogue enumeration (24,522 jobs) 253 Total 579 A PC with fewer than eight logical processors uses two compiler workers
(about 1.4 times as long on this machine in earlier measurements), and a slower
CPU takes longer again; the launcher's estimate therefore says "about 10 to 20
minutes" with eight or more logical processors and "about 20 to 40 minutes"
with fewer. Only the first number was measured here; the others are scaled. -
Template format 3: pipeline templates now store only shader and state
inputs, so future renderer changes no longer need the starter re-issued.
Older helpers cannot read format 3; keep the launcher, runtime and helper
from the same ZIP together.
Shader preload is on by default, with its own indicator
- Preload known shaders (F1 > Shaders,
video.shader_warmup) now defaults
to On for a new settings file: while the game starts and the movie plays, the
recorded menu pipelines (then the race set during loading) are prepared in the
background. Settings files from v0.2.3 and earlier all say
shader_warmup = false(the game writes every setting), so the first 0.2.4
launch switches it on once and records that in a new[meta]section. If you
turn it off again in F1, it stays off.RSX_SHADER_WARMUP=0still turns it off,
andGT5P_SETTINGS_MIGRATE=0skips the one-time switch. The default applies
through the settings file; a bare engine run withGT5P_NO_SETTINGS=1is
unchanged. - "Compiling shaders" now means a draw is waiting. Before, the badge also lit
for the whole background preload, because the preload held the same busy count
and its driver calls went through the same counter. The backend now counts
preload work (startup warmup, the blocking scan, race preparation) apart.
RSX_SHADER_INDICATOR_LEGACY=1restores the old combined counting. - "Loading shaders" is a second, smaller and dimmer badge for that preload
work, off by default (F1 > Game > Shader preload indicator,
video.preload_indicator,GT5P_PRELOAD_INDICATOR=1). It sits in the same
corner and never shows together with "Compiling shaders".
First-launch offer
On the first launch of this version, after setup is complete and before the
game starts, the launcher offers optional shader preparation in the same styled
dialog the post-setup offer uses. It says what preparation does, that it is
optional and can reduce stutter, and the estimated time for your processor count
(see above). Prepare now runs the existing preparation window, with the same
cancel and resume behaviour; Skip and play, closing the dialog, cancelling or
a preparation failure all continue to the game. Either way the answer is recorded
in prepare-offer-<version>.done in the launcher's storage, so it is not asked
again for this version, and F1 > Debug > Prepare shaders and
Prepare shaders.cmd stay available.
- Fresh installs get this through the existing post-setup offer; the two never
appear in one launch. - Nothing is asked if a completed preparation made by this release is already
selected (the helper's read-only--check-selected, which compares a
fingerprint of engine, decoder and bundled inputs recorded when the selection
was written). Shaders prepared by v0.2.3 do not count. GT5P_PREPARE_OFFER=0disables the offer;--no-preparedskips it for that
launch without recording an answer.
Fixes
- Dealership logo freeze: repeated dealership visits (often around the
fifth, for example Mazda) could stop on the logo while audio continued. A
Windows thread-join race left finished threads occupying the 64-slot guest
thread table until no new thread could start. In a 315-second automated
repeated-dealer run, the old build filled the table and the fixed build kept
recycling threads.PS3_PPU_JOIN_WAIT_HOST=0restores the old behaviour. - Analog L2/R2: with accelerate and brake assigned to R2/L2 in the game's
own Options > Change Button Assignments, the triggers now give partial
throttle and brake across their whole travel. Previously they jumped to 100%
after about 9% of travel.PAD_PRESS_FORCE_FULL=1restores the old
behaviour.
Known problems
- Once, after returning to the main menu from a race, the menu scene's
glowing paper windows and lanterns showed as flat bright yellow. A
repeat of the same steps did not reproduce it. A render-target
slot reused after the race is suspected; it may predate this release.
Not in this release
- The shader interpreter fallback stays off. It cuts draws left out while
shaders compile by about 97%, but has not improved worst-case frame times. - Car, reflection and rolling-start camera hitches are not claimed solved.
Install
Extract the complete ZIP into a separate folder and run
tourline-prologue.exe. Existing storage, saves and settings are kept. Use
your own supported BCUS98158 v03.00 disc files; no game data or shader or
driver cache is supplied. tourline-prologue.exe --no-prepared bypasses a
selected preparation.
Tourline Prologue v0.2.3
Tourline Prologue v0.2.3
This update expands optional shader preparation and adds player controls for
learning and verifying pipelines from your own play sessions.
- The starter now contains 5,669 verified observed pipelines, including
dealership and subsequent player collection, with matching original-program
lookup maps. Observed menu/race warmup membership is retained; newly added
keys without observed membership stay on the demand path. Coverage is partial. - Preparation retains completed additional-translation fragment chunks through
cancellation. Resume checks saved work before reuse. Smaller chunks provide
progress between compiler jobs; normal compiler limits remain unchanged. - Retained preparation generations no longer hit the old fixed 100,000-entry
scan limit. The bounded scan allowance now follows catalogue capacity and
retained generations, keeping link and ownership checks in place. - Offline preparation explicitly flushes batch-completion output before the
engine exits. Completion/native-key checks remain strict; incomplete runs
retain their work and do not select an unverified cache. - Bounded parallel reads reduce cached preparation overhead. One local full
4,450-record pair measured 261.34 seconds with serial reads and 202.52 seconds
with four readers. This is a cached preparation result on one machine, not a
first-time compilation or gameplay performance guarantee. - F1 PC Settings > Debug provides Collect pipelines, Verify last
collection and Prepare shaders. Each action closes the current game
before the launcher starts the requested tool. Preparation/verification leave
the game closed afterward; launch normally to play again. - Collection verifies after play against your original game files, reconstructing
both shaders and checking exact native pipelines in a separate local cache.
A window styled like the precompiler shows progress, cancellation and results.
Resume pipeline verification.cmd continues interrupted verification. - Only successfully verified metadata is exported as a shareable template.
Unresolved records remain private and pending. Nothing is uploaded automatically;
maintainer acceptance is still required before adding records to the starter.
Extract the complete ZIP into a separate folder and run tourline-prologue.exe.
Keep the matching launcher, runtime and preparation helper together. Existing
storage, saves, settings and caches are retained. Preparation remains optional;
normal launching is available without it. Use your own supported BCUS98158
v03.00 disc files; no game data or shader/driver cache is supplied.
Collection currently supports the documented default 720p/1080p 16:9,
anisotropy-16, smooth-colour context. Automatic preparation selects supported
saved translation modes; this does not enumerate every resolution, MSAA mode,
car, course or camera. Driver pipelines are prepared locally for your GPU.
Verification can take minutes, especially for newly discovered programs.
Normal asynchronous rendering policy is unchanged. The texture-retention
experiment remains outside the shipped runtime patch. Car/reflection and
rolling-start camera hitches are not claimed solved; prepared key coverage
does not guarantee first-draw readiness or zero stutter.
For troubleshooting, GT5P_PREPARE_IO_WORKERS=1 restores serial preparation reads,
GT5P_PREPARE_FRAGMENT_CHUNK=4096 restores larger additional-translation chunks,
GT5P_OFFLINE_FLUSH=0 restores historical offline exit flushing,
GT5P_PIPELINE_TOOLS=0 disables F1 tool handoffs, and
GT5P_COLLECT_VERIFY_UI=0 uses console verification. These controls preserve
existing caches. tourline-prologue.exe --no-prepared bypasses selected preparation.
Tourline Prologue v0.2.2
Tourline Prologue v0.2.2
Default-translation shader preparation now writes local menu and race bytecode
packs before those pipelines are first used. The runtime already loads this
pack format. 720p and 1080p at 16:9, including the first-run preset, use the
bundled observed plan. Higher resolutions and 21:9 keep the previous
preparation path and do not receive that plan.
One ordered High Speed Ring comparison, with the unpacked window first, showed
fewer long frames when packs were present. The race window moved from 37.7 to
49.4 frames per second, and the 99th percentile frame interval from 121.7 ms
to 44.1 ms. Shader compiles did not fall. The packed window also had warmer
operating-system and driver caches, so this is not a reversed-order proof and
not a promise that hitches are gone. The reported mirror reflection change is
still unexplained.
RSX_SHADER_PACK=0 disables runtime pack use and keeps every cache file.
An existing unpacked preparation is left in place. The next default-translation
run uses a new generation and can import verified work from the previous one.
This release also includes preparation behavior that v0.2.1 did not publish:
- After the first successful file setup, the launcher offers Prepare now
or Skip and play. Closing the offer skips preparation. The offer does
not repeat on later launches.GT5P_PREPARE_OFFER=0disables it.
Prepare shaders.cmd still prepares or resumes at any time. - Saved settings choose the preparation translation. 21:9 adds ultrawide
variants. 16:9 above 1080p adds scaled fragment variants. 720p and 1080p
16:9 stay on the default set, which is the set that receives shader packs.
GT5P_PREPARE_TRANSLATION=defaultkeeps default-only preparation. - Optional preparation compiles vertex shaders in bounded batches.
GT5P_PREPARE_VERTEX_BATCH=0restores serial compilation. - Restart on the in-game settings page exits the old game and lets the
launcher start the replacement.GT5P_LAUNCHER_RESTART=0restores the
previous path. Both the new launcher and the new engine are required.
Optional preparation still reads the game folder already configured for play.
No separate GT.VOL extract is required for BCUS98158 v03.00. The preparation
window matches the in-game PC Settings menu. The starter remains 2,892 observed
pipeline records. GT5P_PREPARE_REUSE=0 disables reuse. GT5P_PREPARE_NATIVE_HASH=0
selects the Python checksum fallback. GT5P_PREPARE_UI=0 restores the Windows
dialog.
Extract the complete ZIP into its own folder, close the game and launch
tourline-prologue.exe. Existing selected storage, saves and settings remain
compatible. Cancellation keeps completed work; repeat the same option to resume.
Only successful verified preparation changes the selected cache.
Preparation remains optional. It may take several minutes and uses additional
local disk space. The starter covers observed routes and supported renderer
settings, not every car, track section, camera or pass. Uncovered pipelines
and different settings continue through normal demand compilation.
Use tourline-prologue.exe --no-prepared to launch with the ordinary cache
without deleting any cache. Keep previous installation folders for binary
rollback. The package contains no game data, executable dump, keys, raw shaders
or game-derived cache contents. Shader bytes, generated source and GPU binaries
stay on the user's machine. Your own supported game files are required.
Tourline Prologue v0.2.1
Tourline Prologue v0.2.1
Optional shader preparation now reads the game folder already configured for
play. A separate GT.VOL extraction or second asset copy is no longer required
for the supported BCUS98158 v03.00 disc build.
- New preparation window matches the in-game PC Settings menu. Its title is
Tourline Prologue, with real per-step status, cancellation and verified
resume.GT5P_PREPARE_UI=0restores the Windows dialog. - The starter expands to 2,892 observed pipeline records, adding verified
Fuji Speedway F candidates to the existing menu/High Speed Ring/Daytona set.
Both shader stages and native pipeline keys are verified locally. - Preparation can reuse verified shaders and driver hints from the previously
selected cache when templates or helper generations change. Every native
pipeline is still recreated and checked.GT5P_PREPARE_REUSE=0disables reuse. - Native checksum acceleration reduces repeated verification overhead, with a
Python fallback.GT5P_PREPARE_NATIVE_HASH=0selects the fallback. - Packed game reads are bounded and verified against the supported game files.
The legacy--prepare-assets <folder>path remains available.
Extract the complete ZIP into its own folder, close the game and launch
tourline-prologue.exe. Existing selected storage, saves and settings remain
compatible. After ordinary setup, run Prepare shaders.cmd if you want
preparation. Cancellation keeps completed work; repeat the same option to resume.
Only successful verified preparation changes the selected cache.
Preparation remains experimental and optional. It may take several minutes and
uses additional local disk space. The starter covers observed routes and
supported renderer settings, not every car, track section, camera or pass.
Uncovered pipelines and different settings continue through normal demand
compilation. Consistent gameplay stutter reduction has not been established.
Use tourline-prologue.exe --no-prepared to launch with the ordinary cache
without deleting any cache. Keep previous installation folders for binary
rollback. The package contains no game data, executable dump, keys, raw shaders
or game-derived cache contents. Shader bytes, generated source and GPU binaries
stay on the user's machine. Your own supported game files are required.
Tourline Prologue v0.2
Project Tourline Prologue v0.2
Adds optional experimental preparation of known shaders and pipelines before
play. Normal launching and asynchronous draw compilation remain available.
The player entry point is tourline-prologue.exe and the game window title is
Project Tourline Prologue. The launcher, game window and preparation helper
use the Project Tourline Prologue icon. Existing storage/saves/settings remain compatible.
- Run Prepare shaders.cmd after completing normal game setup. Select your
own GT.VOL directory unpacked with GTToolsSharp. The unpacker/assets are not
supplied; selecting the extracted disc folder alone is insufficient. - A bundled standalone helper reconstructs both shader stages and native
pipelines on the local machine. No separate Python/compiler installation is
required. Shader bytes, generated code and GPU driver blobs stay in storage. - Exact fragment batching, progress, cancellation and verified resume are
supported. Only a fully verified preparation is selected for subsequent play. - The starter describes 2,334 observed menu/High Speed Ring/Daytona pipeline
records. This is partial observed coverage; it does not cover every car,
track, camera or renderer setting, or independently recover every pass.
Preparation may take several minutes and uses additional local disk space.
It targets the supported disc ELF and default translation/root-signature
settings. Missing/incompatible entries and different settings use normal demand
compilation. Windows compiler/driver differences can reject preparation safely.
Consistent gameplay stutter reduction is not established. No zero-stutter claim
is made.
Cancellation retains completed work. Abrupt interruption can leave a partial
artifact that fails verification on retry; automatic cache repair is not
provided. Keep the logs/cache for inspection and use normal launching or
--no-prepared if preparation cannot complete.
Extract the complete new ZIP into its own folder, close the old game and use the
new tourline-prologue.exe. Existing selected storage/saves/settings are retained. To roll back
cache selection, run tourline-prologue.exe --no-prepared; keep all cache directories. Older
release binaries can still be used from their separate installation.
The package includes only the launcher/engine/dependencies, licensed art, the
standalone tool, notices and validated identifier/numeric-state metadata. It
contains no personal game files, decrypted ELF/SELF, raw shaders or cache files.
BCUS98158 v03.00 original game files are required and are not included. Validation
evidence and remaining limitations are recorded in docs/progress.md. Preparation
scripts do not create release tags or publish assets themselves.