Shape Change Shader in Unity


I am really new to shader system in unity but I have something in my mind that I wonder it can achieve through shader graph.

Is it possible to implement shape change in run time?
For example a cube morph into sphere slowly.
A better example would be what we saw in movie where a human turn into a werewolf.

If no, what is the possible method/study I need to learn before I can try to achieve this?

Thanks in advanced!

1 Like

Hi @woofur1n3,

Unfortunately in the current Shader graph system you can’t, you can use only - one mesh with shader (material), to implement something like morphing - you would need to create a shader that displaces vertices to the desired world space coordinate.

I see that you can create something similar with Texture sampling and lerping between two textures and lerping from one sample texture to another sampling point and modify world position based on your custom lerp value.

There are a couple of plugins however that do this as they are built to handle this function specifically, from my memory you can put one object and the destination object and it will blend / morph to it.

Let me know if you need more info :+1:

Hi, can you share more regarding this? Besides that, what sort of study/knowledge required for me to implement this? I am quite new to unity (about 4/5months experience), I would like to enhance more skills on this topic.

Thanks in advanced!

1 Like

Yes I would recommend if you’re still new to Unity to go through their getting started series, it’s actually quite helpful and covers alot of the engine specifics. Do you have much experience with C#?

Yes. I completed quite a few courses on Unity Learn Premium, including C# Survival Guide, Beginner, Intermediate and Advanced Programming courses.

Currently I’m working on my own RPG game and I would like to blend between shape as one of the mechanic in my game.