blob: 9fe6c1b1c6ed39f0c9a6e1638b8a5833def33f8e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include "material_impl.h"
#include "memory.h"
static void material_make(Material* material, const MaterialDesc* desc) {
assert(material);
assert(desc);
assert(desc->num_uniforms < GFX_MAX_UNIFORMS_PER_MATERIAL);
material->alpha_mode = desc->alpha_mode;
material->alpha_cutoff = desc->alpha_cutoff;
material->num_uniforms = (int8_t)desc->num_uniforms;
for (int i = 0; i < desc->num_uniforms; ++i) {
material->uniforms[i] = desc->uniforms[i];
}
}
Material* gfx_make_material(const MaterialDesc* desc) {
assert(desc);
Material* material = mem_alloc_material();
material_make(material, desc);
return material;
}
void gfx_destroy_material(Material** material) { mem_free_material(material); }
|