
SHADERS - VERTEX ANIMATION
Learning and Experimentation
SUMMARY
Shaders offer a lot of versatility and creative opportunities which can make such a large impact in games. Out of curiosity, I decided to try my hand at it and learn the basics so I applied for a small series of mentorship sessions.
Through out the sessions I learnt about vertex animations via world position offsets to create the illusion of a mesh changing position/rotation/scaling.
I also learnt about material parameter collections/vector parameters to change exposed parameters during run time depending on the scale of materials applied to a mesh.
WORLD POSITION OFFSET (WPO) EXAMPLES
Below are examples of the world position offset materials I created for location, rotation and scaling.




VECTOR PARAMETER EXAMPLE
Utilising world position offsets and using vector parameters to allow communication between an actor blueprint and the assigned material, I created a group of actors that visually create a bridge as the player gets near them.
The actor is placed as normal and then the user, via the exposed parameters, can edit the desired location/rotation of the actor before the bridge is formed creating a floating magic cube look.




POST-MORTEM
Learnt a lot during the mentor sessions on the pros and cons of merging shaders with gameplay, they are very effective for visuals but limited when used gameplay elements depending on the desired goal.
For example during world position off set, collision does not move with the mesh itself so is best used for areas the player will not physically interact with. If required then work arounds would be needed such as pre-placement of collision boxes.
​
I've found what I learnt during the sessions extremely useful during my recent projects, in one project I used it to have a loot item rotate when dropped. Using world position offset, its a lot more efficient than having the rotation driven by a looping timeline or on tick.
CREDITS
Nicolas Pirot (Senior Technical Artist): Mentor
​