Substance Designer - Physics Simulator
Complete overview of the physics simulator

Complete overview of the physics simulator

Position encoder into pixel colors, using a high and low byte encoder, RG for the X value and BA for the Y position

Position encoder into pixel colors, using a high and low byte encoder, RG for the X value and BA for the Y position

More complex encoder, responsible to store the vectors data with negative and float values into texture image

More complex encoder, responsible to store the vectors data with negative and float values into texture image

Example of the Pixel Processor that updates the velocity based on the acceleration

Example of the Pixel Processor that updates the velocity based on the acceleration

Derivative of the collisions to compute the bouncing directions

Derivative of the collisions to compute the bouncing directions

Final example with more complex collisions!

The substance file responsible for the individual frames exports

The substance file responsible for the individual frames exports

Check the blog for the full explanation: https://www.artstation.com/alunagarvin/blog/qynZd/substance-designer-physics-simulator

This started just as a proof of concept of what is possible to do with the pixel processor and data management, and to complete this I had to come up with some clever solutions to many different problems, it has been the most instructive practice I've ever made in Substance Designer and I encourage anyone with a basic knowledge in Vectors to do their own implementation of this topic, you will surprise yourself of what you can achieve!