- fully uses RenderGrid now, no more immediate mode
- remove RippleEffect because it was unused
- Don't render the grid if no effects are active. Sames some GPU time.
- Fix ShockEffect math, broken 2 commits ago
- Use indexed triangle rendering, no more GL_QUADS for tiles
- Fix aquarian text on maps
- Tile tex repeat mode works again
Known broken:
- Editor
- Tile repeat with grid effects
Turns out there was another renderer bug that would effectively
ignore the vertical flip if a Quad had an active ElementEffect that
used a grid (effects on numpad keys 1,2,3,5,6).
class Element is completely gone.
(The files are still there but no longer compiled in. Will delete later)
Broken still:
- support for vertical flip
- the editor
- culling
Unfortunatelx maps were designed with this bug present,
and now tile rotation on parallax layers is wrong for flipped tiles.
This also affected background fish swarms and anything that
was on a parallax layer and flipped horizontally.
Need to fix maps next...
See also: commit 76ba2b1211
Long/thin rectangular nodes were not handled correctly,
because it would only check the nearest waterbubble node
for overlap, not all on the map.
+ Lua func: isUnderWater(x, y, radius)
- fix typo that broke repeat-scale loading
- fix broken tile effects loading
- fix randomly shuffled world map tiles (as textures were loaded in a random order)
- reload tileset on editor reload (because we want to edit textures duh)
Textures used to be unloaded as soon as they were unreferenced.
The TextureMgr cache keeps an active reference to prevent load-unload-load
cycles so it only unloads things when explicitly asked.
This does require some more peak VRAM during map/tileset transitions
especially, since old textures are unloaded only after the next map
has been loaded, but the shortened load times should be worth it.
Major code/logic cleanups + it has a multithreaded batch mode now.
The VFS code doesn't like multiple threads at all,
so for now there's a big lock in front of where it matters.
Changed precacher, map/tileset, and worldmap loading to batched mode.
Still TODO:
- fix broken mod preview images
- reloading resources on debug key
- make mod recache entirely unnecessary
- actually drop resources when no longer needed