This is the final project for my Intro to Computer Graphics class 😄
=== Tools used (they are all free so you can do this too!!!) ===
https://web.engr.oregonstate.edu/~mjb/glman/ - glman is the application im using to visualize the shaders
https://www.blender.org/download/ - blender is what i modeled the cylinder in. It also what I edited this video with.
https://www.gimp.org/downloads/ - gimp is the tool generate noise, blur/color/correct/etc to my textures to get them to the final state and is used to make textures seamless (Filter → Map → Tile Seamless) (you can also do all this stuff in krita)
https://krita.org/en/download/ - krita is the tool i used to paint the particle texture (you can also do this in gimp)
I used windows screen recorder to record video & camera for face cam (you can also do all this better in https://obsproject.com/download but i was too lazy to set that up)
https://web.engr.oregonstate.edu/~mjb/cs557/#handouts - this is the class I am in. If you want to learn how use GLSL, you can just read all the powerpoints (linked as 1pp) and you get a good idea what to do
0:00 Introduction
0:10 Cylinder
0:25 VERTEX SHADER START
0:44 Trumpet Shaped
1:32 Bending it
1:57 Making it Spin
3:14 FRAGMENT SHADER START
3:19 Applying a Texture
3:41 Moving the Texture
4:18 Sampling the Texture Twice
4:56 Adding Fog
6:03 Low Frequency Details
7:34 Color Correction
8:15 Lightning Flashes
8:57 Lightning Math
10:06 Lightning Code
11:45 Providing Depth
12:26 Implementing Dust
13:29 Finished Wormhole
13:40 What I Wish I did Differently
14:00 Why no Post-Processing?