Question water

Hello good morning or afternoon, in this video game engine there are nodes to create the caustics as other video game engines haveagua

hello or like this

No nodes or shader for this. Your best bet is to fake like that:

or use another engine for that. You could try Coppercube for ease of use.

However, CC is not Open Source.

Would this be possible to have as a node/shader? If we could make one, it could be bundled and people wouldn’t need to build it from scratch, each time. Or is it a limitation with the engine, currently?

This may be of interest for you: https://github.com/MoritzBrueckner/armory-caustics-volume :slight_smile: It’s a custom material that you can put on a mesh which then acts as a caustics volume.

1 Like

Can´ t get this to run. Did everything as described on the Github page. As it is lacking, as an example, of the example file. Anybody has a working blend? On BA´ s BGE forum in ol´ times we used to say “without blend it does not exist”.

Hi, sorry for my late answer.

I now uploaded the example file that I used for the screenshots to the GitHub repository. The textures are packed and the background mesh textures are licensed as CC0 (IIRC they are from ambientcg.com).

Please let me know whether the file works for you (note that it requires the other files in the repository as well, in the same folder structure). If yes, there is something wrong with the setup instructions.

If it still doesn’t work, please send me a screenshot and any error messages as well as your system specs (OS + GPU) and I will try to find the cause :slight_smile:

1 Like

WORKS! The only difference was: I had a normal light as it is default in Blender. You might want to point out, that a switch to SUN is mandatory. Was quite hard to find out, even with the example. That is one of the reasons why i do prefer blends instead of videos etc. Cool shader!

1 Like

Thanks, added a note to the repo!

One more thing. As its less frequent in use, it would be useful to add that you can adjust the viewport appearance on a per object basis in the object settings. Else you wonder how to get rid of the faces display, cause you can´t just delete them (destroys effect).

I tried to replace the texture with another 512x512 8-bit png, but no dice. Even if i name it Caustics1.png and just replace it, it always behaves differently. I always get two head-to-head horizontal uv-shifts, one on top of the other. Mighty strange. Maybe someone could try this out. I might have missed a detail. I post the file which i generated with Blender 3.1.

Sorry, I don’t understand this. In the example file, the caustics volume mesh is displayed as wireframe in all Blender viewport modes (see Object Properties > Viewport Display > Display As [Wire]).

There are two problems:

  1. The shader expected a grayscale texture (it only uses the red channel for RGB values) which made the chromatic aberration invisible, but it’s changed now.

  2. The parameter values used in the shader are matched to the caustics texture in the repository and need to be adjusted to your texture (see GitHub - MoritzBrueckner/armory-caustics-volume: Underwater caustics volume material for Armory 3D). I also added a note for that in the readme.

    For me it looks much better with your texture if I choose a speed of 0.02, a scale of 0.1 and a strength of 0.1. In general your texture is pretty bright compared to the one in the repository, there are relatively few dark pixels in that image (maybe it has too much detail/layers). Also the chromatic aberration is probably too strong in the image.

1 Like

Wiredisplay: What i meant was adding a little remark as help for the casual Blender user. The function is rarely used. Nevermind.

  1. I have probably been mislead as their is data in all three channels of Caustics1.png.
  2. Will check that.
  3. Texture is so bright, because i adjusted the white point in GIMP.
    Thanks.
1 Like