From 67cd77edf88c9cc1a3e73787271d047a0ac7ff21 Mon Sep 17 00:00:00 2001 From: Dante Leoncini Date: Sat, 9 May 2026 17:20:59 -0300 Subject: [PATCH 1/2] I already fixed the issue where the heads appeared black during cutscenes. It seems it was a vertex color problem --- src/core/main.cpp | 22 +++++++++++++--------- vendor/librw/src/gles1/gl1skin.cpp | 5 +++++ 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/core/main.cpp b/src/core/main.cpp index 87484ee..d44fe99 100644 --- a/src/core/main.cpp +++ b/src/core/main.cpp @@ -1448,17 +1448,21 @@ RenderEffects(void) CGlass::Render(); CWaterCannons::Render(); CSpecialFX::Render(); -// CShadows::RenderStaticShadows(); -// CShadows::RenderStoredShadows(); -// CSkidmarks::Render(); -// CAntennas::Render(); -// CRubbish::Render(); -// CCoronas::Render(); + #ifdef RW_GLES1 + CShadows::RenderStaticShadows(); + CShadows::RenderStoredShadows(); + CSkidmarks::Render(); + CAntennas::Render(); + CRubbish::Render(); + CCoronas::Render(); + #endif CParticle::Render(); CPacManPickups::Render(); -// CWeaponEffects::Render(); -// CPointLights::RenderFogEffect(); -// CMovingThings::Render(); + #ifdef RW_GLES1 + CWeaponEffects::Render(); + CPointLights::RenderFogEffect(); + CMovingThings::Render(); + #endif CRenderer::RenderFirstPersonVehicle(); POP_RENDERGROUP(); } diff --git a/vendor/librw/src/gles1/gl1skin.cpp b/vendor/librw/src/gles1/gl1skin.cpp index 901923d..a4c3849 100644 --- a/vendor/librw/src/gles1/gl1skin.cpp +++ b/vendor/librw/src/gles1/gl1skin.cpp @@ -33,6 +33,10 @@ skinRenderCB(Atomic *atomic, InstanceDataHeader *header) InstanceData *inst = header->inst; int32 n = header->numMeshes; + //test rapido a ver si es la textura + glDisableClientState(GL_COLOR_ARRAY); + glColor4f(1,1,1,1); + while(n--){ m = inst->material; setMaterial(flags, m->color, m->surfaceProps); @@ -47,6 +51,7 @@ skinRenderCB(Atomic *atomic, InstanceDataHeader *header) // skinInstanceCB: igual que defaultInstanceCB, sin pesos/indices // porque GLES1 no puede hacer skinning en GPU +// aunque... capaz podemos hacerloc on el PowerVR y las extensiones void skinInstanceCB(Geometry *geo, InstanceDataHeader *header, bool32 reinstance) { From 20c7bf7818645a7fa28318e3ec1f18021df5d74a Mon Sep 17 00:00:00 2001 From: Shinovon Date: Mon, 11 May 2026 06:20:30 +0500 Subject: [PATCH 2/2] Update todo --- TODO.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/TODO.md b/TODO.md index 698f30f..32eb71c 100644 --- a/TODO.md +++ b/TODO.md @@ -22,11 +22,13 @@ GLES 2.0 specific: - [ ] Skinning shader is still broken on VC4 - [ ] Disappearing background in cutscenes - [ ] HUD still disappearing sometimes +- [ ] Huge lag spikes on VC4 GLES 1.1 specific: - [x] Backport to STLport v4 - [x] GLES 1.1 engine - [x] Keyboard mappings for both QWERTY/12-keys +- [x] Fix cutscene heads - [ ] Use pvrtc compression - [ ] Optimize to always run 10+ fps - [ ] Fix z-buffer issues (world clips through hud)