kiba-engine
shader.c
1 #include <kiba/gpu/shader.h>
2 
3 #include <kiba/gpu/device.h>
4 
5 b8 gpu_shader_module_create(gpu_shader_module *shader, gpu_device device, struct gpu_shader_module_descriptor desc) {
6  if (!gpu_device_resource_shader_module_create(device, shader)) {
7  KB_ERROR("could not create device-tracked shader module");
8  return false;
9  }
10  struct gpu_shader_module *s = *shader;
11  s->type = desc.type;
12  return gpu_backend_shader_module_create(&s->bs, &device->bd, desc);
13 }
14 
15 void gpu_shader_module_destroy(gpu_shader_module shader) { gpu_device_resource_shader_module_enqueue_destroy(shader); }
16 
17 void gpu_shader_module_destroy_internal(gpu_shader_module shader) {
18  gpu_backend_shader_module_destroy(&shader->bs, &shader->device->bd);
19 }
#define KB_ERROR(...)
Log entry with error log level.
Definition: log.h:142