|
Blender V5.0
|
#include <iomanip>#include "BKE_appdir.hh"#include "BKE_global.hh"#include "BLI_fileops.h"#include "BLI_path_utils.hh"#include "BLI_string.h"#include "BLI_time.h"#include "BLI_vector.hh"#include "BLI_system.h"#include "GPU_capabilities.hh"#include "GPU_debug.hh"#include "GPU_platform.hh"#include "gpu_capabilities_private.hh"#include "gpu_shader_dependency_private.hh"#include "gl_debug.hh"#include "gl_vertex_buffer.hh"#include "gl_compilation_subprocess.hh"#include "gl_shader.hh"#include "gl_shader_interface.hh"#include <sstream>#include <stdio.h>#include <fmt/format.h>#include <fstream>#include <iostream>#include <string>Go to the source code of this file.
Functions | |
Create Info | |
| static const char * | to_string (const Interpolation &interp) |
| static const char * | to_string (const Type &type) |
| static Type UNUSED_FUNCTION | to_component_type (const Type &type) |
| static const char * | to_string (const TextureFormat &type) |
| static const char * | to_string (const PrimitiveIn &layout) |
| static const char * | to_string (const PrimitiveOut &layout) |
| static const char * | to_string (const DepthWrite &value) |
| static void | print_image_type (std::ostream &os, const ImageType &type, const ShaderCreateInfo::Resource::BindType bind_type) |
| static std::ostream & | print_qualifier (std::ostream &os, const Qualifier &qualifiers) |
| static void | print_resource (std::ostream &os, const ShaderCreateInfo::Resource &res, bool auto_resource_location) |
| static void | print_resource_alias (std::ostream &os, const ShaderCreateInfo::Resource &res) |
| static void | print_interface (std::ostream &os, const StringRefNull &prefix, const StageInterfaceInfo &iface, const StringRefNull &suffix="") |
| static std::string | main_function_wrapper (std::string &pre_main, std::string &post_main) |
| static StageInterfaceInfo * | find_interface_by_name (const Span< StageInterfaceInfo * > ifaces, const StringRefNull &name) |
Shader stage creation | |
| static StringRefNull | glsl_patch_vertex_get () |
| static StringRefNull | glsl_patch_geometry_get () |
| static StringRefNull | glsl_patch_fragment_get () |
| static StringRefNull | glsl_patch_compute_get () |
|
static |
Definition at line 929 of file gl_shader.cc.
References name.
Referenced by blender::gpu::VKShader::geometry_layout_declare().
|
static |
Used for shader patching. Init once.
Definition at line 1179 of file gl_shader.cc.
References blender::gpu::shader::gpu_shader_dependency_get_resolved_source().
|
static |
Used for shader patching. Init once.
Definition at line 1142 of file gl_shader.cc.
References blender::gpu::GLContext::framebuffer_fetch_support, blender::gpu::shader::gpu_shader_dependency_get_resolved_source(), GPU_stencil_export_support(), blender::gpu::GLContext::layered_rendering_support, and blender::gpu::GLContext::native_barycentric_support.
|
static |
Used for shader patching. Init once.
Definition at line 1112 of file gl_shader.cc.
References blender::gpu::shader::gpu_shader_dependency_get_resolved_source(), blender::gpu::GLContext::layered_rendering_support, and blender::gpu::GLContext::native_barycentric_support.
|
static |
Used for shader patching. Init once.
Definition at line 1071 of file gl_shader.cc.
References blender::gpu::shader::gpu_shader_dependency_get_resolved_source(), blender::gpu::GLContext::layered_rendering_support, and blender::gpu::GLContext::native_barycentric_support.
|
static |
Definition at line 701 of file gl_shader.cc.
|
static |
Definition at line 347 of file gl_shader.cc.
References blender::gpu::shader::ShaderCreateInfo::Resource::IMAGE.
|
static |
Definition at line 573 of file gl_shader.cc.
References inout, blender::gpu::shader::StageInterfaceInfo::inouts, blender::gpu::shader::StageInterfaceInfo::instance_name, blender::StringRefBase::is_empty(), blender::gpu::shader::StageInterfaceInfo::name, and blender::gpu::to_string().
Referenced by blender::gpu::VKShader::geometry_layout_declare().
|
static |
Definition at line 476 of file gl_shader.cc.
References blender::gpu::shader::no_restrict, blender::gpu::shader::read, and blender::gpu::shader::write.
|
static |
Definition at line 490 of file gl_shader.cc.
References ShaderCreateInfo::Resource::bind_type, blender::gpu::GLContext::explicit_location_support, ShaderCreateInfo::Image::format, blender::gpu::shader::ShaderCreateInfo::Resource::IMAGE, ShaderCreateInfo::Resource::image, ShaderCreateInfo::Image::name, ShaderCreateInfo::Sampler::name, blender::gpu::print_image_type(), blender::gpu::print_qualifier(), ShaderCreateInfo::Image::qualifiers, blender::gpu::shader::ShaderCreateInfo::Resource::SAMPLER, ShaderCreateInfo::Resource::sampler, ShaderCreateInfo::Resource::slot, blender::gpu::shader::ShaderCreateInfo::Resource::STORAGE_BUFFER, ShaderCreateInfo::Resource::storagebuf, blender::gpu::to_string(), ShaderCreateInfo::Image::type, ShaderCreateInfo::Sampler::type, blender::gpu::shader::ShaderCreateInfo::Resource::UNIFORM_BUFFER, and ShaderCreateInfo::Resource::uniformbuf.
|
static |
Definition at line 550 of file gl_shader.cc.
References ShaderCreateInfo::Resource::bind_type, blender::gpu::shader::ShaderCreateInfo::Resource::STORAGE_BUFFER, ShaderCreateInfo::Resource::storagebuf, blender::gpu::shader::ShaderCreateInfo::Resource::UNIFORM_BUFFER, and ShaderCreateInfo::Resource::uniformbuf.
Referenced by blender::gpu::GLShader::resources_declare().
|
static |
Definition at line 182 of file gl_shader.cc.
References BLI_assert_unreachable, blender::gpu::shader::bool_t, blender::gpu::shader::char2_t, blender::gpu::shader::char3_t, blender::gpu::shader::char4_t, blender::gpu::shader::char_t, blender::gpu::shader::float2_t, blender::gpu::shader::float3_10_10_10_2_t, blender::gpu::shader::float3_t, blender::gpu::shader::float3x3_t, blender::gpu::shader::float4_t, blender::gpu::shader::float4x4_t, blender::gpu::shader::float_t, blender::gpu::shader::int2_t, blender::gpu::shader::int3_t, blender::gpu::shader::int4_t, blender::gpu::shader::int_t, blender::gpu::shader::short2_t, blender::gpu::shader::short3_t, blender::gpu::shader::short4_t, blender::gpu::shader::short_t, to_component_type(), blender::gpu::shader::uchar2_t, blender::gpu::shader::uchar3_t, blender::gpu::shader::uchar4_t, blender::gpu::shader::uchar_t, blender::gpu::shader::uint2_t, blender::gpu::shader::uint3_t, blender::gpu::shader::uint4_t, blender::gpu::shader::uint_t, blender::gpu::shader::ushort2_t, blender::gpu::shader::ushort3_t, blender::gpu::shader::ushort4_t, and blender::gpu::shader::ushort_t.
Referenced by to_component_type().
|
static |
Definition at line 333 of file gl_shader.cc.
References blender::gpu::shader::ANY, blender::gpu::shader::GREATER, and blender::gpu::shader::LESS.
|
static |
Definition at line 103 of file gl_shader.cc.
References blender::gpu::shader::FLAT, interp(), blender::gpu::shader::NO_PERSPECTIVE, and blender::gpu::shader::SMOOTH.
Referenced by draw_horizontal_scale_indicators(), draw_vertical_scale_indicators(), blender::ed::spreadsheet::estimate_max_column_width(), full_device_info_description(), RenderScheduler::full_report(), blender::gpu::VKShader::geometry_interface_declare(), MANTA::getFrame(), MANTA::getTimestep(), merge_channels_metadata(), TileManager::open_tile_output(), blender::gpu::debug::VKDebuggingTools::print_labels(), BlenderSession::stamp_view_layer_metadata(), TileManager::TileManager(), MANTA::updatePointers(), and OctreeNode::visualize().
|
static |
Definition at line 301 of file gl_shader.cc.
References blender::gpu::shader::LINES, blender::gpu::shader::LINES_ADJACENCY, blender::gpu::shader::POINTS, blender::gpu::shader::TRIANGLES, and blender::gpu::shader::TRIANGLES_ADJACENCY.
|
static |
Definition at line 319 of file gl_shader.cc.
References blender::gpu::shader::LINE_STRIP, blender::gpu::shader::POINTS, and blender::gpu::shader::TRIANGLE_STRIP.
|
static |
Definition at line 229 of file gl_shader.cc.
Definition at line 117 of file gl_shader.cc.
References BLI_assert_unreachable, blender::gpu::shader::bool_t, blender::gpu::shader::char2_t, blender::gpu::shader::char3_t, blender::gpu::shader::char4_t, blender::gpu::shader::char_t, blender::gpu::shader::float2_t, blender::gpu::shader::float3_10_10_10_2_t, blender::gpu::shader::float3_t, blender::gpu::shader::float3x3_t, blender::gpu::shader::float4_t, blender::gpu::shader::float4x4_t, blender::gpu::shader::float_t, blender::gpu::shader::int2_t, blender::gpu::shader::int3_t, blender::gpu::shader::int4_t, blender::gpu::shader::int_t, blender::gpu::shader::short2_t, blender::gpu::shader::short3_t, blender::gpu::shader::short4_t, blender::gpu::shader::short_t, blender::gpu::shader::uchar2_t, blender::gpu::shader::uchar3_t, blender::gpu::shader::uchar4_t, blender::gpu::shader::uchar_t, blender::gpu::shader::uint2_t, blender::gpu::shader::uint3_t, blender::gpu::shader::uint4_t, blender::gpu::shader::uint_t, blender::gpu::shader::ushort2_t, blender::gpu::shader::ushort3_t, blender::gpu::shader::ushort4_t, and blender::gpu::shader::ushort_t.