Godot Version
4.4.1v rc1
I’m creating a game with isometric-like tiles.
I’ve given myself a goal to create a sort of wave effect on the outskirts of my tiles using shaders(noise), given that my tiles change their vertical position regularly I change the shader based on the tile height giving them the effect of emerging from the tides.
Because I need every tile to have a differently offset wave pattern I create a new instance of a saved noise_texture2D that has a fast_noise_lite for every tile on screen. I then modify the noise offset property and append the texture to the tile shader. This adds up when I use 600+ tiles and creates quite a bit of overhead when I first load the tiles (also unnecessary RAM usage).
Is there a way to individually offset the noise of the noise texture on the tiles without having to duplicate it for every tile?
I’ve thought of making a single overlaying mesh for the wave effect, but that would prove to be difficult given the isometric-like projection. Not sure I could z-sort that.
I’ve also thought of not modifying the offset property entirely and just moving the textures UV via shader, but that could prove to make a repetitive pattern, also seams.
Any help is greatly appreciated.