MCPcopy Create free account
hub / github.com/dfranx/ShaderDebugger / Library

Function Library

src/HLSLLibrary.cpp:480–614  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

478 }
479
480 bv_library* Library()
481 {
482 bv_library* lib = bv_library_create();
483
484 // vector types
485 Common::lib_add_vec(lib, "float4", 4);
486 Common::lib_add_vec(lib, "int4", 4);
487 Common::lib_add_vec(lib, "bool4", 4, 1);
488 Common::lib_add_vec(lib, "half4", 4);
489 Common::lib_add_vec(lib, "uint4", 4);
490 Common::lib_add_vec(lib, "float3", 3);
491 Common::lib_add_vec(lib, "int3", 3);
492 Common::lib_add_vec(lib, "bool3", 3, 1);
493 Common::lib_add_vec(lib, "half3", 3);
494 Common::lib_add_vec(lib, "uint3", 3);
495 Common::lib_add_vec(lib, "float2", 2);
496 Common::lib_add_vec(lib, "int2", 2);
497 Common::lib_add_vec(lib, "bool2", 2, 1);
498 Common::lib_add_vec(lib, "half2", 2);
499 Common::lib_add_vec(lib, "uint2", 2);
500
501 // matrix types
502 Common::lib_add_mat(lib, "float2x2");
503 Common::lib_add_mat(lib, "float3x2");
504 Common::lib_add_mat(lib, "float4x2");
505 Common::lib_add_mat(lib, "float2x3");
506 Common::lib_add_mat(lib, "float3x3");
507 Common::lib_add_mat(lib, "float4x3");
508 Common::lib_add_mat(lib, "float2x4");
509 Common::lib_add_mat(lib, "float3x4");
510 Common::lib_add_mat(lib, "float4x4");
511
512 // trigonometry
513 bv_library_add_function(lib, "acos", Common::lib_common_acos);
514 bv_library_add_function(lib, "asin", Common::lib_common_asin);
515 bv_library_add_function(lib, "atan", Common::lib_common_atan);
516 bv_library_add_function(lib, "atan2", Common::lib_common_atan);
517 bv_library_add_function(lib, "cos", Common::lib_common_cos);
518 bv_library_add_function(lib, "cosh", Common::lib_common_cosh);
519 bv_library_add_function(lib, "sin", Common::lib_common_sin);
520 bv_library_add_function(lib, "sincos", lib_hlsl_sincos);
521 bv_library_add_function(lib, "sinh", Common::lib_common_sinh);
522 bv_library_add_function(lib, "tan", Common::lib_common_tan);
523 bv_library_add_function(lib, "tanh", Common::lib_common_tanh);
524 bv_library_add_function(lib, "degrees", Common::lib_common_degrees);
525 bv_library_add_function(lib, "radians", Common::lib_common_radians);
526
527 // mathematics
528 bv_library_add_function(lib, "abs", Common::lib_common_abs);
529 bv_library_add_function(lib, "ceil", Common::lib_common_ceil);
530 bv_library_add_function(lib, "clamp", Common::lib_common_clamp);
531 bv_library_add_function(lib, "ddx", Common::lib_common_dFdx);
532 bv_library_add_function(lib, "ddy", Common::lib_common_dFdy);
533 bv_library_add_function(lib, "ddx_coarse", Common::lib_common_dFdxCoarse);
534 bv_library_add_function(lib, "ddy_coarse", Common::lib_common_dFdyCoarse);
535 bv_library_add_function(lib, "ddx_fine", Common::lib_common_dFdxFine);
536 bv_library_add_function(lib, "ddy_fine", Common::lib_common_dFdyFine);
537 bv_library_add_function(lib, "exp", Common::lib_common_exp);

Callers

nothing calls this directly

Calls 2

lib_add_vecFunction · 0.85
lib_add_matFunction · 0.85

Tested by

no test coverage detected