Added the ability to have multiple shaders and pipelines. The current implementation is slow because we recompile/reload the whole engine whenever we change the rendering method. Simply what I do currently is:
Load the shaders/main.frag and all the other at shaders/brdfs/*
Compile them at every single time when recreating the engine (Updating it). This is quite slow, because we only need to re-record the object's command buffers and nothing else when we change the rendering method.
Recreating the engine will again load all the source code of the brdfs -> Compile them to Spirv -> record and load everything again. This is a very slow implementation.
Added the ability to have multiple shaders and pipelines. The current implementation is slow because we recompile/reload the whole engine whenever we change the rendering method. Simply what I do currently is: