FCT
载入中...
搜索中...
未找到
VK_PixelShader.cpp
浏览该文件的文档.
1
#include "
../ThirdParty.h
"
2
#include "
../Context/VK_Context.h
"
3
#include "
./VK_PixelShader.h
"
4
namespace
FCT
5
{
6
namespace
RHI
7
{
8
VK_PixelShader::VK_PixelShader
(
VK_Context
* ctx)
9
:
m_ctx
(ctx),
m_module
(VK_NULL_HANDLE)
10
{
11
12
}
13
14
VK_PixelShader::~VK_PixelShader
()
15
{
16
if
(
m_module
!= VK_NULL_HANDLE) {
17
m_ctx
->getDevice().destroyShaderModule(
m_module
);
18
}
19
}
20
21
void
VK_PixelShader::create
()
22
{
23
createShaderModule
();
24
createPipelineStage
();
25
}
26
27
void
VK_PixelShader::createShaderModule
()
28
{
29
vk::ShaderModuleCreateInfo createInfo{};
30
createInfo.codeSize =
m_code
.size();
31
createInfo.pCode =
reinterpret_cast<
const
uint32_t*
>
(
m_code
.data());
32
m_module
=
m_ctx
->getDevice().createShaderModule(createInfo);
33
}
34
35
void
VK_PixelShader::createPipelineStage
()
36
{
37
m_stageInfo
.stage = vk::ShaderStageFlagBits::eFragment;
38
m_stageInfo
.module =
m_module
;
39
m_stageInfo
.pName =
"FCTEntry"
;
40
}
41
}
42
}
ThirdParty.h
VK_Context.h
VK_PixelShader.h
FCT::RHI::PixelShader::m_code
std::vector< char > m_code
定义
PixelShader.h:27
FCT::RHI::VK_PixelShader::m_module
vk::ShaderModule m_module
定义
VK_PixelShader.h:27
FCT::RHI::VK_PixelShader::m_stageInfo
vk::PipelineShaderStageCreateInfo m_stageInfo
定义
VK_PixelShader.h:28
FCT::RHI::VK_PixelShader::VK_PixelShader
VK_PixelShader(VK_Context *ctx)
定义
VK_PixelShader.cpp:8
FCT::RHI::VK_PixelShader::create
void create() override
定义
VK_PixelShader.cpp:21
FCT::RHI::VK_PixelShader::m_ctx
VK_Context * m_ctx
定义
VK_PixelShader.h:26
FCT::RHI::VK_PixelShader::createShaderModule
void createShaderModule()
定义
VK_PixelShader.cpp:27
FCT::RHI::VK_PixelShader::~VK_PixelShader
~VK_PixelShader() override
定义
VK_PixelShader.cpp:14
FCT::RHI::VK_PixelShader::createPipelineStage
void createPipelineStage()
定义
VK_PixelShader.cpp:35
FCT::VK_Context
定义
VK_Context.h:11
FCT::RHI
定义
CommandBufferGraph.h:14
FCT
定义
Enums.h:8
src
RHI
VK_PixelShader.cpp
制作者
1.14.0