着色器Profile添加

This commit is contained in:
Nana 2025-02-24 00:29:43 +08:00
parent e383f483c1
commit 6ac0b4ed9d
2 changed files with 20 additions and 1 deletions
example/src
scripts

@ -6,6 +6,6 @@ int main(int argc, char* argv[]) {
init.size = {800, 600};
init.resizable = true;
init.centered = true;
init.api = mirage::renderer_api::opengl;
// init.api = mirage::renderer_api::opengl;
return run(init);
}

@ -257,6 +257,25 @@ def generate_pipeline_header_preamble() -> List[str]:
" desc.type = type;",
" desc.sourceType = is_string_source ? LLGL::ShaderSourceType::CodeString : LLGL::ShaderSourceType::BinaryBuffer;",
"",
" if (rendererID == LLGL::RendererID::Direct3D11) {",
" if (type == LLGL::ShaderType::Vertex) {",
" desc.profile = \"vs_5_0\";",
" } else if (type == LLGL::ShaderType::Fragment) {",
" desc.profile = \"ps_5_0\";",
" } else if (type == LLGL::ShaderType::Compute) {",
" desc.profile = \"cs_5_0\";",
" };",
" } else if (rendererID == LLGL::RendererID::Direct3D12) {",
" if (type == LLGL::ShaderType::Vertex) {",
" desc.profile = \"vs_6_6\";",
" } else if (type == LLGL::ShaderType::Fragment) {",
" desc.profile = \"ps_6_6\";",
" } else if (type == LLGL::ShaderType::Compute) {",
" desc.profile = \"cs_6_6\";",
" };",
" } else if (rendererID == LLGL::RendererID::Metal) {",
" desc.profile = \"2.1\";",
" }",
" auto shader = renderer->CreateShader(desc);",
" if (auto report = shader->GetReport()) {",
" spdlog::error(\"Shader compilation report: {}\", report->GetText());",