Added dynamic size for max particles in particle systems, added fallback texture

This commit is contained in:
2025-06-15 15:07:16 +02:00
parent 69bafff6e9
commit 0692e0c8b7
2 changed files with 18 additions and 6 deletions

View File

@@ -630,6 +630,10 @@ Renderer :: struct {
clamp : Sampler_Handle;
}
default_textures : struct {
fallback : Texture_Handle;
}
watcher: File_Watcher(string);
vsync: bool = true;
@@ -684,6 +688,11 @@ create_renderer :: (window: *Window) -> *Renderer {
engine.renderer.render_graph = new_render_graph();
data := u8.[255];
engine.renderer.default_textures.fallback = create_texture(engine.renderer, data.data, 1, 1, 1, "engine/fallback", generate_mips=false, .R8_UNORM);
return engine.renderer;
}
@@ -972,11 +981,14 @@ create_texture :: (using renderer: *Renderer, path: string, generate_mips: bool
data : [32] u8;
stbi_load_from_memory(data.data, 32, *image_width, *image_height, *image_channels, image_desired_channels);
assert(image_data != null);
if image_data {
defer stbi_image_free(image_data);
defer stbi_image_free(image_data);
return create_texture(renderer, image_data, xx image_width, xx image_height, xx image_desired_channels, path, generate_mips=generate_mips, format);
return create_texture(renderer, image_data, xx image_width, xx image_height, xx image_desired_channels, path, generate_mips=generate_mips, format);
} else {
log_error("Unable to load texture '%'\n", path);
return renderer.default_textures.fallback;
}
}
create_texture :: (using renderer: *Renderer, data: *void, width: u32, height: u32, channels: u32, path: string = "", generate_mips: bool = true, format: Format = .R8G8B8A8_UNORM_SRGB) -> Texture_Handle {