fix depth write

This commit is contained in:
Bigfoot71 2026-03-15 14:27:05 +01:00
parent 10ca5b7c91
commit 3f141c1698

24
src/external/rlsw.h vendored
View File

@ -2752,10 +2752,10 @@ static inline void FUNC_NAME(const sw_texture_t *tex, const sw_vertex_t *start,
/* TODO: Implement different depth funcs? */ \
float depth = SW_FRAMEBUFFER_DEPTH_GET(dPtr, 0); \
if (z > depth) goto discard; \
} \
\
/* TODO: Implement depth mask */ \
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
/* TODO: Implement depth mask */ \
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
} \
\
if (ENABLE_TEXTURE) \
{ \
@ -3223,10 +3223,10 @@ static inline void FUNC_NAME(void)
/* TODO: Implement different depth funcs? */ \
float depth = SW_FRAMEBUFFER_DEPTH_GET(dPtr, 0); \
if (z > depth) goto discard; \
} \
\
/* TODO: Implement depth mask */ \
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
/* TODO: Implement depth mask */ \
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
} \
\
if (ENABLE_TEXTURE) \
{ \
@ -3500,11 +3500,13 @@ static inline void FUNC_NAME(const sw_vertex_t *v0, const sw_vertex_t *v1) \
\
if (ENABLE_DEPTH_TEST) \
{ \
/* TODO: Implement different depth funcs? */ \
float depth = SW_FRAMEBUFFER_DEPTH_GET(dPtr, 0); \
if (z > depth) goto discard; \
} \
\
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
/* TODO: Implement depth mask */ \
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
} \
\
float color[4] = {r, g, b, a}; \
\
@ -3661,11 +3663,13 @@ static inline void FUNC_NAME(int x, int y, float z, const float color[4]) \
\
if (ENABLE_DEPTH_TEST) \
{ \
/* TODO: Implement different depth funcs? */ \
float depth = SW_FRAMEBUFFER_DEPTH_GET(dPtr, 0); \
if (z > depth) return; \
} \
\
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
/* TODO: Implement depth mask */ \
SW_FRAMEBUFFER_DEPTH_SET(dPtr, z, 0); \
} \
\
if (ENABLE_COLOR_BLEND) \
{ \