FCT
载入中...
搜索中...
未找到
RenderGraph_PassDesc.h
浏览该文件的文档.
1//
2// Created by Administrator on 2025/8/10.
3//
4
5#ifndef RENDERGRAPH_PASSDESC_H
6#define RENDERGRAPH_PASSDESC_H
7namespace FCT
8{
9
10 struct PassDesc
11 {
12 std::string name;
14 std::vector<Texture> textures;
15 std::vector<Target> targets;
16 std::vector<DepthStencil> depthStencils;
17 PassDesc(std::string name) : name(name)
18 {
19 }
20 template<typename... Rest>
21 void processArgs(const EnablePassClear& other, Rest&&... rest)
22 {
23 clear = other;
24 processArgs(std::forward<Rest>(rest)...);
25 }
26 template<typename... Rest>
27 void processArgs(const Texture& other, Rest&&... rest)
28 {
29 textures.push_back(other);
30 processArgs(std::forward<Rest>(rest)...);
31 }
32
33 template<typename... Rest>
34 void processArgs(const Target& other, Rest&&... rest)
35 {
36 targets.push_back(other);
37 processArgs(std::forward<Rest>(rest)...);
38 }
39
40 template<typename... Rest>
41 void processArgs(const DepthStencil& other, Rest&&... rest)
42 {
43 depthStencils.push_back(other);
44 processArgs(std::forward<Rest>(rest)...);
45 }
46
47
48 void processArgs() noexcept {}
49 };
50}
51#endif //RENDERGRAPH_PASSDESC_H
void processArgs() noexcept
std::vector< Texture > textures
void processArgs(const Target &other, Rest &&... rest)
void processArgs(const Texture &other, Rest &&... rest)
void processArgs(const EnablePassClear &other, Rest &&... rest)
std::vector< Target > targets
void processArgs(const DepthStencil &other, Rest &&... rest)
PassDesc(std::string name)
std::vector< DepthStencil > depthStencils