Real-time Water Caustics Material

I was recently reading an article on 80.lv about a caustics material created for Unity and I decided I wanted to create something like that for Blender in the EEVEE engine. I’m still working on it and there are some things I’m trying to figure out still, like light separation, but here’s my current result.
water%20caustics%202
I plan on creating a tutorial for this as soon as I’ve figured out the other things I want to add.

14 Likes

I’m having a difficult time getting the separate RGB to work the way I want it to. This works pretty well though. It sure is a lot of fun to play with. My next goal for it is to have it only show on objects below a certain level.
water%20caustics%203

2 Likes

I think I may be at a point where I can actually share how I made this. I made it so you can pull an object in and out of the water. I’m pretty excited about this. I’m not much of a “nodes” guy, I’m just happy I managed to figure this out.
water%20caustics%20height

12 Likes

That’s the pretties under-water water Ever, Good job - -.

1 Like

Wow ! how did you make that ?

1 Like

you should use the volume density node. it makes things disappear when they’re low enough, like real water.

1 Like

That’s definitely a good idea for deep water.

Thanks, I’m going to put together a tutorial next week for it.

1 Like

it looks just like a nice lake or, hidden oasis - - could you make a little scene, with a palm tree or, some bushes - - Thanks

Following this so I can find out how it’s done. Great work!

1 Like

It’s definitely a good idea for me to make an actual useful scene instead of these basic objects for the tutorial.

This is a great idea…and beautifully done!
Could use it very soon… :smirk:

I just found this.

1 Like

That’s pretty cool. I’ll have to make use of that.

I couldn’t get that setup to work for me :frowning:
Also a little confused by the lower mix shader which only has one shader plugged into it :confused:

EDIT: Seems like a few other people are having trouble getting it to work with 2.81

I saw this post and was like hey another version then i saw the same thread linked. Yea 2.81 doesn’t seem to like ray cast it seems but I’m interested in both of these since i use glass with liquid in it a decent amount but I’ve just accepted it won’t look perfect. Clients don’t notice I’m just anal would be fun to pump up the realism with it though

My material is quite different from the other one. The animated water on top of my example is just for show. Mine will work in 2.81. I’ll have a video of it up this week.

I have been really busy lately, and haven’t had the time to make the tutorial that I wanted. You can download the material from Gumroad to explore the node setup.

caustics%20demo

2 Likes

Here’s a screenshot of the node setup.

1 Like

I was working on an underwater shader for a project i want to release everything for free in the community but i have a question;

Are the caustics generated from the ocean waves or are they just fake via texture?

I am asking since Eevee is a rasterizer and have no depth so getting caustic from waves should be impossible in theory.

EDIT: sorry i just realize you have upload the file