Dissolve shader

Info

As part of the class of Interactive Computer Graphics I have to write and create different shaders in OpenGL and GLSL. Shaders are small scripts that contain the mathematical calculations and algorithms for calculating the color of each pixel rendered, based on the lighting input and the Material configuration.

To explain in short version, OpenGL is an API for rendering graphics and GLSL(GL Shading Language) is a language that let’s the user manipulate the pipe line of the shaders. The pipeline is something like this:

vertex specification -> vertex shader -> transformed vertexes -> primitive rasterization -> fragments -> fragment shader -> output pixels

As part of the class I have worked upon 3 main things, Shaders, Lighting and BulletPhysics

As part of my work I have added a dissolve shader here in the webpage. Dissolve is a cool looking effect that has been used in many games and movies. I have tried to recreate that by using a Perlin noise function.

As for the other projects I have also integrated openGL and GLSL with the BulletPhysics as part of extending the functionalities towards creation of the game engine. Game engines are fairly complicated softwares as they include the concepts from Mathametics, Physics and all different branches to create. Game engines like Unity and Unreal are created with the company by so many years and thousands of employees. I have tried creating a fairly simple engine by just integrating bullet physics on the top of the openGL. This helped me use the object creating and lighting from the openGL and let’s me add the physics and collision over it.

At the time of creating this webpage, I don’t have lost my whole setup of OpenGL because it has decided not to work with my system so I ported all of my files to the Unity and here is the shader in the action.

Technology Used

OpenGL, GLSL, BulletPhysics