MCPcopy Create free account
hub / github.com/IppClub/Dora-SSR / findShaderFile

Function findShaderFile

Source/Node/EffekNode.cpp:262–311  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

260/* EffekManager */
261
262static const char* findShaderFile(const char* name, const char* type) {
263#define CHECK_SHADER(_SHADERNAME, _VS, _FS) \
264 if (strcmp(name, _SHADERNAME) == 0) { \
265 if (strcmp(type, "vs") == 0) { \
266 return _VS; \
267 } \
268 assert(strcmp(type, "fs") == 0); \
269 return _FS; \
270 }
271 CHECK_SHADER("sprite_unlit",
272 "sprite_unlit_vs",
273 "model_unlit_ps");
274 CHECK_SHADER("sprite_lit",
275 "sprite_lit_vs",
276 "model_lit_ps");
277 CHECK_SHADER("sprite_distortion",
278 "sprite_distortion_vs",
279 "model_distortion_ps");
280 CHECK_SHADER("sprite_adv_unlit",
281 "ad_sprite_unlit_vs",
282 "ad_model_unlit_ps");
283 CHECK_SHADER("sprite_adv_lit",
284 "ad_sprite_lit_vs",
285 "ad_model_lit_ps");
286 CHECK_SHADER("sprite_adv_distortion",
287 "ad_sprite_distortion_vs",
288 "ad_model_distortion_ps");
289
290 CHECK_SHADER("model_unlit",
291 "model_unlit_vs",
292 "model_unlit_ps");
293 CHECK_SHADER("model_lit",
294 "model_lit_vs",
295 "model_lit_ps");
296 CHECK_SHADER("model_distortion",
297 "model_distortion_vs",
298 "model_distortion_ps");
299 CHECK_SHADER("model_adv_unlit",
300 "ad_model_unlit_vs",
301 "ad_model_unlit_ps");
302 CHECK_SHADER("model_adv_lit",
303 "ad_model_lit_vs",
304 "ad_model_lit_ps");
305 CHECK_SHADER("model_adv_distortion",
306 "ad_model_distortion_vs",
307 "ad_model_distortion_ps");
308
309 Issue("invalid shader name and type name");
310 return nullptr;
311}
312
313static bgfx_shader_handle_t shaderLoad(const char* mat, const char* name, const char* type, void* ud) {
314 AssertIf(mat, "Effekseer shader loading with user defined material \"{}\" is unsupported", mat);

Callers 1

shaderLoadFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected