Skip to content

Fix bounded texture cooking and preserve texture caches - #602

Merged
freezy merged 2 commits into
masterfrom
fix/urp-player-gpu-cache
Oct 20, 2026
Merged

freezy merged 2 commits into
masterfrom
fix/urp-player-gpu-cache

Conversation

@freezy

@freezy freezy commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner

Bound GPU BC7 encoding submissions and guard padded blocks to prevent Linux GPU hangs during table texture optimization. Preserve texture cache identities across graphics changes and support compatible cached variants.

Validation: coordinated Linux standalone build succeeded; 31 Unity EditMode tests passed. Cold and warm T2 loading completed without an Intel GPU timeout; warm cache loading took 2.1 seconds.

Part of the coordinated fix/urp-player-gpu-cache changes across the engine, player, URP/HDRP adapters, PinMAME, and URP player project.

Coordinated PRs:

@greptile-apps

greptile-apps Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The PR appears safe to merge; the remaining request for focused cache tests is non-blocking.

Summary

The PR bounds BC7 work sent to the GPU and keeps cooked textures tied to their source content and cook settings.

  • Texture cooks send bounded GPU batches and safely handle padded blocks.
  • Texture caches follow texture inputs and cook settings.
  • Runtime collider imports use the player's material setup.
  • Shared graphics settings now name FSR 1 and STP upscalers.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Read material sources] --> B{Version 5 cache matches content and settings?}
    B -->|Yes| C[Upload cached textures]
    B -->|No| D[Decode source textures]
    D --> E[Encode bounded BC7 batches]
    E --> F[Finish GPU readbacks]
    F --> G[Upload cooked textures]
    G --> H[Write version 5 cache in background]
    E -->|Failure| I[Use source textures]
Loading

Reviews (2) · Last reviewed commit: "Drop legacy texture cache formats and de..." · Reviewed by Greptile

Comment thread VisualPinball.Unity/VisualPinball.Unity/Packaging/VpeTextureCache.cs Outdated
@freezy
freezy merged commit 2b8a0a9 into master Oct 20, 2026
15 checks passed
@freezy
freezy deleted the fix/urp-player-gpu-cache branch October 20, 2026 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant