|
Blender
V2.93
|
#include <stdio.h>#include <string.h>#include "MEM_guardedalloc.h"#include "BLI_dynstr.h"#include "BLI_ghash.h"#include "BLI_string.h"#include "BLI_utildefines.h"#include "gpu_material_library.h"Go to the source code of this file.
Functions | |
| char * | gpu_str_skip_token (char *str, char *token, int max) |
| const char * | gpu_data_type_to_string (const eGPUType type) |
| static void | gpu_parse_material_library (GHash *hash, GPUMaterialLibrary *library) |
| void | gpu_material_library_init (void) |
| void | gpu_material_library_exit (void) |
| static void | gpu_material_use_library_with_dependencies (GSet *used_libraries, GPUMaterialLibrary *library) |
| GPUFunction * | gpu_material_library_use_function (GSet *used_libraries, const char *name) |
| char * | gpu_material_library_generate_code (GSet *used_libraries, const char *frag_lib) |
GPU material library parsing and code generation.
Definition in file gpu_material_library.c.
| const char* gpu_data_type_to_string | ( | const eGPUType | type | ) |
Definition at line 737 of file gpu_material_library.c.
References GPU_DATATYPE_STR, and type.
Referenced by code_generate_interface(), code_generate_vertex(), codegen_declare_tmps(), codegen_print_datatype(), and codegen_process_uniforms_functions().
| void gpu_material_library_exit | ( | void | ) |
Definition at line 846 of file gpu_material_library.c.
References BLI_ghash_free(), FUNCTION_HASH, MEM_freeN, and NULL.
Referenced by GPU_exit().
| char* gpu_material_library_generate_code | ( | GSet * | used_libraries, |
| const char * | frag_lib | ||
| ) |
Definition at line 875 of file gpu_material_library.c.
References BLI_dynstr_append(), BLI_dynstr_free(), BLI_dynstr_get_cstring(), BLI_dynstr_new(), BLI_gset_haskey(), gpu_material_libraries, gpu_material_use_library_with_dependencies(), gpu_shader_material_world_normals_library, library, and result.
Referenced by GPU_generate_pass().
| void gpu_material_library_init | ( | void | ) |
Definition at line 833 of file gpu_material_library.c.
References BLI_ghash_str_new(), FUNCTION_HASH, gpu_material_libraries, and gpu_parse_material_library().
Referenced by GPU_init().
| GPUFunction* gpu_material_library_use_function | ( | GSet * | used_libraries, |
| const char * | name | ||
| ) |
Definition at line 866 of file gpu_material_library.c.
References BLI_ghash_lookup(), FUNCTION_HASH, and gpu_material_use_library_with_dependencies().
Referenced by GPU_link(), and GPU_stack_link().
|
static |
Definition at line 856 of file gpu_material_library.c.
References BLI_gset_add(), and library.
Referenced by gpu_material_library_generate_code(), and gpu_material_library_use_function().
|
static |
Definition at line 742 of file gpu_material_library.c.
References ARRAY_SIZE, BLI_ghash_insert(), BLI_str_startswith(), FUNCTION_QUAL_IN, FUNCTION_QUAL_INOUT, FUNCTION_QUAL_OUT, GPU_CLOSURE, GPU_DATATYPE_STR, GPU_NONE, GPU_SHADOW2D, gpu_str_skip_token(), GPU_TEX1D_ARRAY, GPU_TEX2D, GPU_TEX2D_ARRAY, GPU_TEX3D, GPU_TEXCUBE, hash, library, MAX_FUNCTION_NAME, MEM_callocN, MEM_freeN, NULL, and type.
Referenced by gpu_material_library_init().
| char* gpu_str_skip_token | ( | char * | str, |
| char * | token, | ||
| int | max | ||
| ) |
Definition at line 680 of file gpu_material_library.c.
References ELEM, len, max, and str.
Referenced by count_active_texture_sampler(), and gpu_parse_material_library().
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
Definition at line 678 of file gpu_material_library.c.
Referenced by gpu_material_library_exit(), gpu_material_library_init(), and gpu_material_library_use_function().
|
static |
Definition at line 717 of file gpu_material_library.c.
Referenced by gpu_data_type_to_string(), and gpu_parse_material_library().
|
static |
Definition at line 583 of file gpu_material_library.c.
Referenced by gpu_material_library_generate_code(), and gpu_material_library_init().
|
static |
Definition at line 159 of file gpu_material_library.c.
|
static |
Definition at line 164 of file gpu_material_library.c.
|
static |
Definition at line 174 of file gpu_material_library.c.
|
static |
Definition at line 179 of file gpu_material_library.c.
|
static |
Definition at line 184 of file gpu_material_library.c.
|
static |
Definition at line 189 of file gpu_material_library.c.
|
static |
Definition at line 194 of file gpu_material_library.c.
|
static |
Definition at line 199 of file gpu_material_library.c.
|
static |
Definition at line 204 of file gpu_material_library.c.
|
static |
Definition at line 209 of file gpu_material_library.c.
|
static |
Definition at line 214 of file gpu_material_library.c.
|
static |
Definition at line 219 of file gpu_material_library.c.
|
static |
Definition at line 139 of file gpu_material_library.c.
|
static |
Definition at line 224 of file gpu_material_library.c.
|
static |
Definition at line 229 of file gpu_material_library.c.
|
static |
Definition at line 234 of file gpu_material_library.c.
|
static |
Definition at line 239 of file gpu_material_library.c.
|
static |
Definition at line 244 of file gpu_material_library.c.
|
static |
Definition at line 249 of file gpu_material_library.c.
|
static |
Definition at line 254 of file gpu_material_library.c.
|
static |
Definition at line 154 of file gpu_material_library.c.
|
static |
Definition at line 259 of file gpu_material_library.c.
|
static |
Definition at line 264 of file gpu_material_library.c.
|
static |
Definition at line 274 of file gpu_material_library.c.
|
static |
Definition at line 279 of file gpu_material_library.c.
|
static |
Definition at line 169 of file gpu_material_library.c.
|
static |
Definition at line 284 of file gpu_material_library.c.
|
static |
Definition at line 144 of file gpu_material_library.c.
|
static |
Definition at line 289 of file gpu_material_library.c.
|
static |
Definition at line 294 of file gpu_material_library.c.
|
static |
Definition at line 299 of file gpu_material_library.c.
|
static |
Definition at line 304 of file gpu_material_library.c.
|
static |
Definition at line 309 of file gpu_material_library.c.
|
static |
Definition at line 314 of file gpu_material_library.c.
|
static |
Definition at line 324 of file gpu_material_library.c.
|
static |
Definition at line 319 of file gpu_material_library.c.
|
static |
Definition at line 329 of file gpu_material_library.c.
|
static |
Definition at line 134 of file gpu_material_library.c.
|
static |
Definition at line 334 of file gpu_material_library.c.
|
static |
Definition at line 339 of file gpu_material_library.c.
|
static |
Definition at line 149 of file gpu_material_library.c.
|
static |
Definition at line 344 of file gpu_material_library.c.
|
static |
Definition at line 349 of file gpu_material_library.c.
|
static |
Definition at line 354 of file gpu_material_library.c.
|
static |
Definition at line 359 of file gpu_material_library.c.
|
static |
Definition at line 364 of file gpu_material_library.c.
|
static |
Definition at line 369 of file gpu_material_library.c.
|
static |
Definition at line 374 of file gpu_material_library.c.
|
static |
Definition at line 379 of file gpu_material_library.c.
|
static |
Definition at line 384 of file gpu_material_library.c.
|
static |
Definition at line 389 of file gpu_material_library.c.
|
static |
Definition at line 394 of file gpu_material_library.c.
|
static |
Definition at line 399 of file gpu_material_library.c.
|
static |
Definition at line 404 of file gpu_material_library.c.
|
static |
Definition at line 409 of file gpu_material_library.c.
|
static |
Definition at line 414 of file gpu_material_library.c.
|
static |
Definition at line 419 of file gpu_material_library.c.
|
static |
Definition at line 424 of file gpu_material_library.c.
|
static |
Definition at line 429 of file gpu_material_library.c.
|
static |
Definition at line 269 of file gpu_material_library.c.
|
static |
Definition at line 434 of file gpu_material_library.c.
|
static |
Definition at line 441 of file gpu_material_library.c.
|
static |
Definition at line 446 of file gpu_material_library.c.
|
static |
Definition at line 451 of file gpu_material_library.c.
|
static |
Definition at line 456 of file gpu_material_library.c.
|
static |
Definition at line 461 of file gpu_material_library.c.
|
static |
Definition at line 466 of file gpu_material_library.c.
|
static |
Definition at line 471 of file gpu_material_library.c.
|
static |
Definition at line 476 of file gpu_material_library.c.
|
static |
Definition at line 486 of file gpu_material_library.c.
|
static |
Definition at line 493 of file gpu_material_library.c.
|
static |
Definition at line 498 of file gpu_material_library.c.
|
static |
Definition at line 481 of file gpu_material_library.c.
|
static |
Definition at line 503 of file gpu_material_library.c.
|
static |
Definition at line 508 of file gpu_material_library.c.
|
static |
Definition at line 513 of file gpu_material_library.c.
|
static |
Definition at line 518 of file gpu_material_library.c.
|
static |
Definition at line 523 of file gpu_material_library.c.
|
static |
Definition at line 528 of file gpu_material_library.c.
|
static |
Definition at line 533 of file gpu_material_library.c.
|
static |
Definition at line 538 of file gpu_material_library.c.
|
static |
Definition at line 543 of file gpu_material_library.c.
|
static |
Definition at line 548 of file gpu_material_library.c.
|
static |
Definition at line 553 of file gpu_material_library.c.
|
static |
Definition at line 558 of file gpu_material_library.c.
|
static |
Definition at line 563 of file gpu_material_library.c.
|
static |
Definition at line 568 of file gpu_material_library.c.
|
static |
Definition at line 573 of file gpu_material_library.c.
|
static |
Definition at line 578 of file gpu_material_library.c.
Referenced by gpu_material_library_generate_code().