Skip to content

fix(linux): Resolve black infantry textures and update build scripts#178

Merged
fbraz3 merged 3 commits into
mainfrom
fix/linux-infantry-shadows
Jun 27, 2026
Merged

fix(linux): Resolve black infantry textures and update build scripts#178
fbraz3 merged 3 commits into
mainfrom
fix/linux-infantry-shadows

Conversation

@fbraz3

@fbraz3 fbraz3 commented Jun 26, 2026

Copy link
Copy Markdown
Owner

Description

Fixes the issue on Linux where infantry models render as solid black silhouettes at typical gameplay distances.

Changes

  • DirectX 8 Downsampling Parity on Linux: Backported the manual box filter downsampling logic for D3DFMT_A4R4G4B4 and D3DFMT_R5G6B5 from macOS to Linux in d3dx8_compat.cpp. The Linux port previously relied entirely on the GLI library to generate mipmaps, which lacked support for these specific formats, causing D3DXLoadSurfaceFromSurface to fail. Bypassing GLI for these formats and applying the manual box filter restores rendering parity with macOS and the original Windows targets.
  • Updated the Docker Linux build scripts to disable the DXVK_HUD FPS overlay by default since the game has a native framerate counter.
  • Upgraded the base builder image to Ubuntu 26.04 LTS and fixed an include case-sensitivity conflict (File.h vs file.h).

Validation

  • Successfully compiled both Base Game and Zero Hour on Linux.

fbraz3 added 3 commits June 26, 2026 19:49
…asing

Updates the Docker base image and related documentation to use Ubuntu 26.04
instead of 24.04. Resolves a case-sensitivity build error in MiniAudioManager.cpp
caused by conflicting `File.h` and `file.h` includes that surfaced with the new
compiler/environment.
Disables the DXVK FPS overlay (`DXVK_HUD=0`) in all Linux execution and deployment
scripts. The game already has a native FPS counter, so the Vulkan overlay is
redundant and clutters the screen.

Fixes an issue where casual players would see the overlay enabled by default.
Backports the manual box filter downsampling for A4R4G4B4 and R5G6B5
textures from macOS to Linux. This fixes an issue where infantry
shadows and recolored textures rendered entirely black at lower mipmap
levels because the GLI library does not support these formats.

Closes issue where infantry was rendering black on Linux.
@fbraz3 fbraz3 added bug Something isn't working Linux labels Jun 26, 2026
@fbraz3 fbraz3 merged commit be81f87 into main Jun 27, 2026
8 checks passed
@fbraz3 fbraz3 deleted the fix/linux-infantry-shadows branch June 27, 2026 03:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working Linux

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant