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) 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) {