Merge pull request #287 from polybiusproxy/dev

gnmdriver: Implement shader functions
This commit is contained in:
georgemoralis 2024-07-15 07:47:33 +03:00 committed by GitHub
commit c49afb4c17
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 216 additions and 60 deletions

View file

@ -17,11 +17,12 @@ namespace Shader {
static constexpr size_t NumUserDataRegs = 16;
enum class Stage : u32 {
Vertex,
TessellationControl,
TessellationEval,
Geometry,
Fragment,
Vertex,
Geometry,
Export,
Hull,
Local,
Compute,
};
constexpr u32 MaxStageTypes = 6;
@ -204,7 +205,7 @@ struct fmt::formatter<Shader::Stage> {
return ctx.begin();
}
auto format(const Shader::Stage& stage, format_context& ctx) const {
constexpr static std::array names = {"vs", "tc", "te", "gs", "fs", "cs"};
constexpr static std::array names = {"fs", "vs", "gs", "es", "hs", "ls", "cs"};
return fmt::format_to(ctx.out(), "{}", names[static_cast<size_t>(stage)]);
}
};