I have a map that consists of many HexTiles in 3D. Now I want to overlay information for each tile.
The first method I tried is making a seperate viewport and using a viewport texture to display the information on the tile, but the performance is really bad and it uses too much vram, because I need too many viewports. Even sharing viewports for tiles that display the same information does not work.
The next method I tried is projecting UI elements directly to the tile with unproject_position() and scaling the elements accordingly to the distance to the camera. This method works really well for smaller maps (60x40 tiles), but for larger maps (max 300x200) the performance drops because the position is calculated every frame. Even using multiple threads does not help much.
Is there a solution I am missing or are there any workarounds you can think of that allow me to display information for every tile?
Thank you very much