summaryrefslogtreecommitdiff
path: root/alligator_render/examples
diff options
context:
space:
mode:
authorMicha White <botahamec@outlook.com>2023-02-04 13:25:45 -0500
committerMicha White <botahamec@outlook.com>2023-02-04 13:25:45 -0500
commit9fd7d6689d5d90679e4b0c12e463ef4e2f8bf515 (patch)
treea0b127f1094b72d0966c2edea3d171e74001c875 /alligator_render/examples
parent518a87ddb2e6ce908affce2773fc7f92beb52c73 (diff)
Have the renderer take the texture manager
Diffstat (limited to 'alligator_render/examples')
-rw-r--r--alligator_render/examples/black.rs13
-rw-r--r--alligator_render/examples/bmp.rs13
-rw-r--r--alligator_render/examples/bunnymark.rs13
3 files changed, 33 insertions, 6 deletions
diff --git a/alligator_render/examples/black.rs b/alligator_render/examples/black.rs
index 106e0f0..198eef2 100644
--- a/alligator_render/examples/black.rs
+++ b/alligator_render/examples/black.rs
@@ -1,6 +1,7 @@
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
use alligator_render::{RenderWindowConfig, Renderer};
+use alligator_resources::texture::{TextureManager, TextureManagerConfig};
fn update(_renderer: &mut Renderer) {}
@@ -8,14 +9,22 @@ fn main() {
let start = std::time::Instant::now();
// configure the render window
- let config = RenderWindowConfig {
+ let render_config = RenderWindowConfig {
//vsync: false,
//mode: alligator_render::config::WindowMode::BorderlessFullscreen,
title: "Black Screen.exe",
..Default::default()
};
- let renderer = Renderer::new(&config).unwrap();
+ let texture_config = TextureManagerConfig {
+ initial_capacity: 0,
+ max_size: 0,
+ atlas_width: 1,
+ atlas_height: 1,
+ };
+
+ let texture_manager = TextureManager::new(&texture_config);
+ let renderer = Renderer::new(&render_config, texture_manager).unwrap();
println!("Startup time: {:?}", start.elapsed());
renderer.run(update);
diff --git a/alligator_render/examples/bmp.rs b/alligator_render/examples/bmp.rs
index b8ce00c..0bad037 100644
--- a/alligator_render/examples/bmp.rs
+++ b/alligator_render/examples/bmp.rs
@@ -3,6 +3,7 @@
use std::num::NonZeroU32;
use alligator_render::{ImageFormat, Instance, RenderWindowConfig, Renderer};
+use alligator_resources::texture::{TextureManager, TextureManagerConfig};
#[profiling::function]
fn update(renderer: &mut Renderer) {
@@ -12,7 +13,7 @@ fn update(renderer: &mut Renderer) {
fn main() {
// configure the render window
- let config = RenderWindowConfig {
+ let render_config = RenderWindowConfig {
title: "Bumper Stickers",
instance_capacity: 2,
default_width: NonZeroU32::new(1280).unwrap(),
@@ -22,7 +23,15 @@ fn main() {
..Default::default()
};
- let mut renderer = Renderer::new(&config).unwrap();
+ let texture_config = TextureManagerConfig {
+ initial_capacity: 3,
+ max_size: 3_000_000,
+ atlas_height: 150,
+ atlas_width: 150,
+ };
+
+ let texture_manager = TextureManager::new(&texture_config);
+ let mut renderer = Renderer::new(&render_config, texture_manager).unwrap();
// render the alligator
let gator = include_bytes!("res/gator.ff");
diff --git a/alligator_render/examples/bunnymark.rs b/alligator_render/examples/bunnymark.rs
index 5530ef3..ab38b5e 100644
--- a/alligator_render/examples/bunnymark.rs
+++ b/alligator_render/examples/bunnymark.rs
@@ -3,6 +3,7 @@ use std::{num::NonZeroU32, time::Instant};
use alligator_render::{
ImageFormat, Instance, InstanceId, RenderWindowConfig, Renderer, TextureId,
};
+use alligator_resources::texture::{TextureManager, TextureManagerConfig};
fn xorshift_plus(seed: &mut [u64; 2]) -> u64 {
let mut t = seed[0];
@@ -123,7 +124,7 @@ fn main() {
profiling::register_thread!("main");
// configure the render window
- let config = RenderWindowConfig {
+ let render_config = RenderWindowConfig {
title: "BunnyMark",
instance_capacity: 5_000_000,
default_width: NonZeroU32::new(1280).unwrap(),
@@ -133,8 +134,16 @@ fn main() {
..Default::default()
};
+ let texture_config = TextureManagerConfig {
+ initial_capacity: 1,
+ max_size: 10_000,
+ atlas_width: 100,
+ atlas_height: 100,
+ };
+
let bunny = include_bytes!("res/bunny.ff");
- let mut renderer = Renderer::new(&config).unwrap();
+ let texture_manager = TextureManager::new(&texture_config);
+ let mut renderer = Renderer::new(&render_config, texture_manager).unwrap();
let texture_id = renderer
.textures_mut()
.load_from_memory(bunny, ImageFormat::Farbfeld)