Shaders: Confusing or Pretty?
What am I doing?
Moving on into my specialism, I wanted to do a bit of a deep dive into the realms of shaders in games. Now, first things first, let's define what shaders are before we have any chance of actually creating some. This post is strictly research and will not show the development of physical work, just more of an exploratory look into the many different branches and avenues that we can go down when we make VFX.
As a technical artist, learning to use shaders properly opens up the amazing power that modern graphics cards hold. This is because graphics cards contain thousands of cores instead of the 4-12 you can find in most CPUs. Though the processing capabilities of these cores are much less powerful, the sheer mass of them can hold the ability to compute many calculations in perfect synchronisation. This kind of programming is a little different to some of the more conventional types but is incredibly valuable for modern AAA titles in the games industry. Almost any graphical simulation, tech demo or VFX in general uses these practices to achieve the look they have.
Put simply, a shader is a program or set of code that flows through the graphics pipeline and tels the hardware of a computer, console or device how to render each pixel on the screen. this is done in a lot of different ways but most of the time a shader will use lighting to compute how to render each pixel and this is where the name "shader" comes from. There are many other uses for shaders and shader type coding within games and in media visualisation and the possibilities are endless.
With the use of more and more complicated shader parameters, we can now process more and more complicated visuals. There is literally masses we can go into here but I wanted to stay away from a fair amount of it and concentrate on only a few key stages in VFX for games and try and keep these posts far more contained to a subject.
Shaders are the best solution we have for graphical improvements within games and the code that runs it is what we can thank for all of the best looking games we have. I wanted to take the time here to outline all of this so that the rest of the project makes sense within the context of art and design. The programming of these shaders is art. It is the creation of visuals and the way in which we can achieve greater heights in visual media.
This research into the formalities and specifics of the use of shaders within games and visual media has helped massively to give context to the work I have done, am in the process of doing and will be doing in the future.
Within the last post, I wrote about the steps I took to create a particle system that worked in real-time to display some crazy code driven graphics. The next few posts will explore something very different to that as we will be exploring texturing for modern games. After that, I will be looking into volumetrics and pseudo textures. Lastly, I will bring them all together in one scene to check for performance.
Comments
Post a Comment