Is is possible to make a material where something appears to be beneath a semi-transparent surface?

I'm not terribly proficient with making materials yet, but I was wondering if something like this is doable and if so, what it might involve. I basically want to make a part of a creature appear beneath the ice in 3d. but I don't know how to approach it or what I should be looking at.

22 points · 3 comments · view on lemmy.world

3 Comments

Zachs@lemm.ee · 8 pts · 2y

Check out an ice shader (ex: https://godotshaders.com/shader/spatial-ice-shader/). I'd imagine you could make a rectangle or plane with a material using the shader and place it over your creature. There's lots of good information in the Godot docs on shaders, I would recommend taking a look once you have a good grasp on the basics with materials.

mrsgreenpotato@discuss.tchncs.de · 4 pts · 2y
[ removed ]
Bezier@suppo.fi · 1 pts · 2y

Is this the effect you're after?
https://piped.video/watch?v=uLN69rtiu4Y
It's definitely possible with custom shaders, thought there might be somewhat of a learning curve.

ICastFist@programming.dev · 0 pts · 2y

If it was in 2D, you could couple the sprites/textures under a CanvasGroup node.

In 3D, I suspect you'll want to apply a NoiseTexture3D. Although this video uses the 2D noise, I suspect it won't be too different in how to make it work for a 3D texture - https://youtu.be/IvOfx-kbqac

https://piped.video/watch?v=IvOfx-kbqac