Skip to content

Shader System Refactor #9

@Bridge4

Description

@Bridge4

Summary

Currently, if I wanted to add a uniform or sampler to any shader I'd have to make changes to the GLSL, then modify the descriptor pool allocation code to ensure it supports that, then modify descriptor set layout, etc etc.

If I wanted to add new shaders altogether I'd need to hardcode new layouts for them and manually adjust the descriptor pool.

The shader compilation refactor will allow me to write shaders freely by scanning the shaders folder and compiling. SPIR-V cross can pull details about uniforms and samplers used in shaders. This info can be used to automatically create descriptor set layouts for these shaders, allocate descriptor pool(s), and bind layouts to pipelines.

Value Proposition

  • Simplify shader writing process
  • Selectively apply shaders to different objects (textured/untextured/heightmaps)

Goals

  • Shaderc for shader compilation
  • SPIR-V Cross for shader reflection system
  • Refactor descriptor set management
  • Refactor graphics pipeline creation

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions