FCT
载入中...
搜索中...
未找到
Shaderc_ShaderCompiler.h
浏览该文件的文档.
1
//
2
// Created by Administrator on 2025/4/8.
3
//
4
#include "
./ShaderCompiler.h
"
5
#ifndef SHADERC_SHADERCOMPILER_H
6
#define SHADERC_SHADERCOMPILER_H
7
namespace
FCT
{
8
constexpr
shaderc_shader_kind
FCTShaderKindToShaderrcShaderKind
(
ShaderKind
kind)
9
{
10
switch
(kind) {
11
case
ShaderKind::VertexShader
:
12
return
shaderc_vertex_shader;
13
case
ShaderKind::FragmentShader
:
14
return
shaderc_fragment_shader;
15
case
ShaderKind::ComputeShader
:
16
return
shaderc_compute_shader;
17
case
ShaderKind::GeometryShader
:
18
return
shaderc_geometry_shader;
19
case
ShaderKind::TessControlShader
:
20
return
shaderc_tess_control_shader;
21
case
ShaderKind::MeshShader
:
22
return
shaderc_mesh_shader;
23
}
24
return
shaderc_vertex_shader;
25
}
26
class
Shaderc_ShaderCompiler
:
public
ShaderCompiler
27
{
28
public
:
29
Shaderc_ShaderCompiler
();
30
std::vector<char>
compile
(
const
std::string &source,
const
std::string &entry_point,
ShaderKind
kind)
override
;
31
protected
:
32
shaderc::Compiler
m_compiler
;
33
shaderc::CompileOptions
m_options
;
34
};
35
}
36
#endif
//SHADERC_SHADERCOMPILER_H
ShaderCompiler.h
FCT::ShaderCompiler
定义
ShaderCompiler.h:10
FCT::Shaderc_ShaderCompiler::compile
std::vector< char > compile(const std::string &source, const std::string &entry_point, ShaderKind kind) override
定义
Shaderc_ShaderCompiler.cpp:14
FCT::Shaderc_ShaderCompiler::m_compiler
shaderc::Compiler m_compiler
定义
Shaderc_ShaderCompiler.h:32
FCT::Shaderc_ShaderCompiler::m_options
shaderc::CompileOptions m_options
定义
Shaderc_ShaderCompiler.h:33
FCT::Shaderc_ShaderCompiler::Shaderc_ShaderCompiler
Shaderc_ShaderCompiler()
定义
Shaderc_ShaderCompiler.cpp:6
FCT
定义
Enums.h:8
FCT::ShaderKind
ShaderKind
定义
ShaderGenerate.h:19
FCT::ShaderKind::TessControlShader
@ TessControlShader
定义
ShaderGenerate.h:24
FCT::ShaderKind::ComputeShader
@ ComputeShader
定义
ShaderGenerate.h:22
FCT::ShaderKind::MeshShader
@ MeshShader
定义
ShaderGenerate.h:25
FCT::ShaderKind::GeometryShader
@ GeometryShader
定义
ShaderGenerate.h:23
FCT::ShaderKind::FragmentShader
@ FragmentShader
定义
ShaderGenerate.h:21
FCT::ShaderKind::VertexShader
@ VertexShader
定义
ShaderGenerate.h:20
FCT::FCTShaderKindToShaderrcShaderKind
constexpr shaderc_shader_kind FCTShaderKindToShaderrcShaderKind(ShaderKind kind)
定义
Shaderc_ShaderCompiler.h:8
src
Context
Shaderc_ShaderCompiler.h
制作者
1.14.0