ACMX 2.139.0
Dual-Backend Real-Time GPU Video Synthesis
Loading...
Searching...
No Matches
shader_library.hpp
Go to the documentation of this file.
1#ifndef ACMXVK_APP_SHADER_LIBRARY_HPP
2#define ACMXVK_APP_SHADER_LIBRARY_HPP
3
4#include "options.hpp"
5
6#include <cstddef>
7#include <string>
8#include <vector>
9
10namespace acmxvk {
13 std::string name;
14 std::size_t slot = 0;
15 double minimum = 0.0;
16 double maximum = 1.0;
17 double step = 0.01;
18 double value = 0.0;
19 };
20
21 fs::path path;
22 std::vector<std::string> entries;
23 std::vector<CustomUniform> custom_uniforms;
24 };
25
26 [[nodiscard]] bool isValidCustomUniformName(const std::string &name);
27 [[nodiscard]] ShaderManifest loadShaderManifest(const fs::path &directory);
28 [[nodiscard]] fs::path resolveShaderManifestEntry(const fs::path &directory, std::string entry);
29 [[nodiscard]] int buildShaderLibrary(const Options &options);
30
31} // namespace acmxvk
32
33#endif
fs::path resolveShaderManifestEntry(const fs::path &directory, std::string entry)
ShaderManifest loadShaderManifest(const fs::path &directory)
int buildShaderLibrary(const Options &options)
bool isValidCustomUniformName(const std::string &name)
std::vector< std::string > entries
std::vector< CustomUniform > custom_uniforms