JeanPhilippeKernel / RendererEngine

3D Renderer Engine builds with Vulkan and C++ 20
MIT License
171 stars 17 forks source link

Revisit existing ShaderManager implementation #303

Open JeanPhilippeKernel opened 6 months ago

JeanPhilippeKernel commented 6 months ago

We want to simplify the creation of Shader object for Pipeline Specification

As today, the creation the of Shader object for a pipeline is kind hard coded in such way that the user needs to remember the name of the shader file he/her want to load - as we rely on it to retrieve the files.

See: ImGuiRenderer RenderPass::UseShader

Our goal is to move the impl in Render Pass into a ShaderManager that will be responsible for creating/caching shader objects. the basic creation of a Shader object should require: (unique key name, the vertex file, the fragment file)

Back then, when using OpenGL, we had a ShaderManager implemented, the new specification above should be able to leverage it and do the necessary changes or improve it .

jnyfah commented 3 months ago

@JeanPhilippeKernel !!!

JeanPhilippeKernel commented 3 months ago

thanks for the reminder, description updated 🙂