From 406900e253bfcaa4a8b70d394b6e6bc36918e244 Mon Sep 17 00:00:00 2001 From: fgsfds Date: Thu, 3 Aug 2023 16:50:24 +0200 Subject: [PATCH] port: detect fog color usage --- port/fast3d/gfx_pc.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/port/fast3d/gfx_pc.cpp b/port/fast3d/gfx_pc.cpp index ed8104e76..37b153aa7 100644 --- a/port/fast3d/gfx_pc.cpp +++ b/port/fast3d/gfx_pc.cpp @@ -1114,7 +1114,8 @@ static void gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx* verti d->z = z; d->w = w; - if (rsp.geometry_mode & G_FOG) { + // seems like PD uses the fog color without setting G_FOG sometimes + if ((rsp.geometry_mode & G_FOG) || (rdp.other_mode_l >> 30) == G_BL_CLR_FOG) { if (fabsf(w) < 0.001f) { // To avoid division by zero w = 0.001f;