Blender V5.0
gl_shader.cc File Reference
#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 StageInterfaceInfofind_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 ()

Function Documentation

◆ find_interface_by_name()

StageInterfaceInfo * find_interface_by_name ( const Span< StageInterfaceInfo * > ifaces,
const StringRefNull & name )
static

Definition at line 929 of file gl_shader.cc.

References name.

Referenced by blender::gpu::VKShader::geometry_layout_declare().

◆ glsl_patch_compute_get()

StringRefNull glsl_patch_compute_get ( )
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().

◆ glsl_patch_fragment_get()

◆ glsl_patch_geometry_get()

◆ glsl_patch_vertex_get()

◆ main_function_wrapper()

std::string main_function_wrapper ( std::string & pre_main,
std::string & post_main )
static

Definition at line 701 of file gl_shader.cc.

◆ print_image_type()

void print_image_type ( std::ostream & os,
const ImageType & type,
const ShaderCreateInfo::Resource::BindType bind_type )
static

◆ print_interface()

◆ print_qualifier()

std::ostream & print_qualifier ( std::ostream & os,
const Qualifier & qualifiers )
static

◆ print_resource()

◆ print_resource_alias()

◆ to_component_type()

◆ to_string() [1/6]

const char * to_string ( const DepthWrite & value)
static

◆ to_string() [2/6]

◆ to_string() [3/6]

◆ to_string() [4/6]

const char * to_string ( const PrimitiveOut & layout)
static

◆ to_string() [5/6]

const char * to_string ( const TextureFormat & type)
static

Definition at line 229 of file gl_shader.cc.

◆ to_string() [6/6]