Closed qarmin closed 5 years ago
Considering that Godot will automatically fallback to GLES 2 if needed, I don't see why not default with GLES 3/Vulkan.
We can examine which performs better for our use case. UH is very simple graphically, so maybe GLES 2 would work better, and many users on Discord have old GPUs.
However, as Yeldham said, Godot should automatically fall back to GLES 2 if GLES 3 is not available, so that last point shouldn't matter except for developers.
While still technically possible, the automatic fallback is no longer officially supported in 3.1 stable, so it would be wise to default to GLES2 to get consistent results on all platforms.
PS: If you don't make use of any 3D elements, you can get slightly better performance by setting the Framebuffer Allocation to 2D Without Sampling in the Project Settings.
@Calinou Any idea how to fix this? The borders between tiles are very visible in GLES2. Even if I scale the tiles to be much bigger, there are still gaps.
@aaronfranke Are these still visible if you enable 2D Pixel Snap in the Project Settings?
@Calinou This is in 3D. Also, "2D Without Sampling" still affects 2D, as Polygon2D
s will not render their texture for example.
@aaronfranke Those artifacts are a result of mip-mapping. I suggest turning it off in import for projects like this.
@clayjohn As far as I can tell, that's already disabled:
You still need to do it on the import settings of the actual textures.
Done. Looks pretty better:
But now there's flickering when I zoom out and move the camera around... Even after enabling MSAA in the project settings, it doesn't seem that it affects these textures anymore with the mipmaps disabled.
@aaronfranke yea. MSAA wont help for texture artifacts like that. Also its not working in GLES2.
The reason you are getting the lines is that the tiles arent exactly the same on the edges. In short, they are not repeating tiles, they just look like they are because they are pixelated. Unfortunately, I think the only real solution is to redesign the assets.
I will experiment tomorrow to see if I can come up with a better solution.
I'm going to close this with the resolution of "We'll use only GLES 2".
The flickering is a minor problem that we can deal with later if it's still an issue.
Now with Godot 3.0.6 we don't have any choice, so for now UH use GLES 3. When Godot 3.1 will arrive, I would recommend moving immediately to GLES 2. Even if Godot will support Vulkan, UH should stay with GLES 2.
Changing renderer when project will be advanced, probably will need a lot of work to customize it with it.