|
Blender V4.5
|
#include <algorithm>#include <iomanip>#include <iostream>#include <regex>#include <string>#include "BLI_ghash.h"#include "BLI_map.hh"#include "BLI_string_ref.hh"#include "gpu_capabilities_private.hh"#include "gpu_material_library.hh"#include "gpu_shader_create_info.hh"#include "gpu_shader_dependency_private.hh"#include "../glsl_preprocess/glsl_preprocess.hh"#include "glsl_compositor_source_list.h"#include "glsl_draw_source_list.h"#include "glsl_gpu_source_list.h"#include "glsl_ocio_source_list.h"#include "glsl_compositor_metadata_list.hh"#include "glsl_draw_metadata_list.hh"#include "glsl_gpu_metadata_list.hh"#include "glsl_ocio_metadata_list.hh"Go to the source code of this file.
Classes | |
| struct | blender::gpu::GPUSource |
Namespaces | |
| namespace | blender |
| namespace | blender::gpu |
| namespace | blender::gpu::shader |
Macros | |
| #define | SHADER_SOURCE(filename_underscore, filename, filepath) |
| #define | SHADER_SOURCE(filename_underscore, filename, filepath) |
Typedefs | |
| using | blender::gpu::GPUPrintFormatMap = Map<uint32_t, shader::PrintfFormat> |
| using | blender::gpu::GPUSourceDictionnary = Map<StringRef, struct GPUSource *> |
| using | blender::gpu::GPUFunctionDictionnary = Map<StringRef, GPUFunction *> |
Functions | |
| void | gpu_shader_dependency_init () |
| void | gpu_shader_dependency_exit () |
| GPUFunction * | gpu_material_library_use_function (GSet *used_libraries, const char *name) |
| bool | blender::gpu::shader::gpu_shader_dependency_force_gpu_print_injection () |
| bool | blender::gpu::shader::gpu_shader_dependency_has_printf () |
| const PrintfFormat & | blender::gpu::shader::gpu_shader_dependency_get_printf_format (uint32_t format_hash) |
| BuiltinBits | blender::gpu::shader::gpu_shader_dependency_get_builtins (const StringRefNull shader_source_name) |
| Vector< StringRefNull > | blender::gpu::shader::gpu_shader_dependency_get_resolved_source (const StringRefNull shader_source_name) |
| StringRefNull | blender::gpu::shader::gpu_shader_dependency_get_source (const StringRefNull shader_source_name) |
| StringRefNull | blender::gpu::shader::gpu_shader_dependency_get_filename_from_source_string (StringRef source_string) |
| Find the name of the file from which the given string was generated. | |
Variables | |
| static GPUPrintFormatMap * | g_formats = nullptr |
| static GPUSourceDictionnary * | g_sources = nullptr |
| static GPUFunctionDictionnary * | g_functions = nullptr |
| static bool | force_printf_injection = false |
Shader source dependency builder that make possible to support #include directive inside the shader files.
Definition in file gpu_shader_dependency.cc.
| #define SHADER_SOURCE | ( | filename_underscore, | |
| filename, | |||
| filepath ) |
Definition at line 35 of file gpu_shader_dependency.cc.
| #define SHADER_SOURCE | ( | filename_underscore, | |
| filename, | |||
| filepath ) |
Definition at line 35 of file gpu_shader_dependency.cc.
| GPUFunction * gpu_material_library_use_function | ( | GSet * | used_libraries, |
| const char * | name ) |
Definition at line 474 of file gpu_shader_dependency.cc.
References BLI_assert_msg, BLI_gset_add(), blender::StringRefNull::c_str(), blender::gpu::GPUSource::filename, g_functions, and GPUFunction::source.
Referenced by GPU_link(), and gpu_stack_link_v().
| void gpu_shader_dependency_exit | ( | ) |
Definition at line 458 of file gpu_shader_dependency.cc.
References g_formats, g_functions, and g_sources.
Referenced by GPU_exit().
| void gpu_shader_dependency_init | ( | ) |
Definition at line 388 of file gpu_shader_dependency.cc.
References BLI_assert_msg, blender::StringRefNull::c_str(), force_printf_injection, g_formats, g_functions, g_sources, blender::gpu::GCaps, openSubdiv_getGLSLPatchBasisSource(), UNUSED_VARS_NDEBUG, and blender::gpu::shader::USE_PRINTF.
Referenced by GPU_init().
|
static |
Definition at line 386 of file gpu_shader_dependency.cc.
Referenced by blender::gpu::shader::gpu_shader_dependency_force_gpu_print_injection(), and gpu_shader_dependency_init().
|
static |
|
static |
|
static |
Definition at line 384 of file gpu_shader_dependency.cc.
Referenced by gpu_shader_dependency_exit(), blender::gpu::shader::gpu_shader_dependency_get_builtins(), blender::gpu::shader::gpu_shader_dependency_get_filename_from_source_string(), blender::gpu::shader::gpu_shader_dependency_get_resolved_source(), blender::gpu::shader::gpu_shader_dependency_get_source(), and gpu_shader_dependency_init().