top of page
image7.png
MElayuLogo1.png

DESCRIPTION

HUH

SHADER WORK

Welcome visitors to your site with a short, engaging introduction.

Double click to edit and add your own text.

WATER SHADER

Wave simulation

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

Refraction

In the shader, refraction is calculated by getting screen-space information about the color, basically creating a duplicate texture of what the camera is showing. Then, this is distorted by a normal map. The final normal map is created by blending two scrolling textures.

Refraction.PNG

Particle-based dynamic ripples

For Dynamic ripples and Player interactions, I use render textures and particles. This of course comes with some limitations, but it is a fair solution for small bodies of water, which were the planned to be the majority in our game.

​

​

These node setup is very simple. It's just adding the Render texture that is masked to only detect particles. The output of this is a black and white texture, where the white areas are the particles. With this, I derive a heightmap, which I then add on top of the previous wave displacement.

 

I also use this method to mask out certain areas from waves. For example, it doesn't make sense for water to behave the same near the shore. 

Dynamic Water Ripples.PNG

Caustics

These set of nodes are contained in a subgraph, which is later on used for triplanar mapping. What is happening here is very simple,  some Voronoi noises are blended between each other and multiplied by a float which determines the strength / brightness of the effect. All of the noises are displaced over time, giving the illusion of motion. Since The textures are moving at different speeds, it breaks the pattern, creating the caustics.

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless. 

Caustics.JPG
Caustics2.JPG

GRASS SHADER

Wind Simulation

The wind simulation is very simple. The blades of grass are displaced according to a noise texture. This texture is in world space and it scrolls towards a direction, which is set externally. The displacecement is then masked, making it so the blades of grass sway only on the top.

​

​

WindSim.JPG

Grass-Player interaction

Unity offers Render Features, which allow artists / coders to customize the way Unity renders some things. In this example, the render feature is used to displace grass in an area defined by a sphere. Inside of the game, the sphere is made invisible and placed under the player's feet. This method isn't the most scalable as the perfomance cost increases as interactable objects are added, but it worked very well for this particular project as the player was the only entity that was capable of interacting with the grass.

​

I achieved this by following NedMakesGames' tutorial (I also got in contact with him and he was very open to helping me out!)

​

​

RenderThing.JPG
TrampleFeature.JPG

Shading

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

GrassShading.JPG

CRYSTAL SHADER

Crystal Refraction

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

Additional Effects

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

WATERFALL SHADER

Displacement

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

Foam

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

water droplets

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

ADDITIONAL SHADERS

Toon Shader

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

Sand and Crystal sparkles

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

water droplets

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

3D MODELING 

Welcome visitors to your site with a short, engaging introduction.

Double click to edit and add your own text.

TREES

Toon Shader

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

Sand and Crystal sparkles

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

water droplets

These are the nodes responsible for vertex displacement. Inside of the subgraph is the formula for Trichoidal waves. I blend three different waves together to make the effect seem more seamless.  

ROCKS

Empower
Growth

PROPS AND VEGETATION

Vegetation

- Using Particles

​

- Fixing Normals

​

- Using a simple VD shader

bottom of page