Pumpkin/pumpkin-world/benches/noise_router.rs
Alexander Medvedev d41e5b9b98 fix: structures
2026-03-06 22:01:39 +01:00

35 lines
1.1 KiB
Rust

use criterion::{Criterion, criterion_group, criterion_main};
use pumpkin_data::noise_router::OVERWORLD_BASE_NOISE_ROUTER;
use pumpkin_world::generation::{
GlobalRandomConfig,
noise::router::{
chunk_density_function::ChunkNoiseFunctionBuilderOptions,
chunk_noise_router::ChunkNoiseRouter, proto_noise_router::ProtoNoiseRouters,
},
};
use std::hint::black_box;
fn bench_noise_router_creation(c: &mut Criterion) {
let base_routers = &OVERWORLD_BASE_NOISE_ROUTER;
let random_config = GlobalRandomConfig::new(0);
let proto_routers = ProtoNoiseRouters::generate(base_routers, &random_config);
let proto_noise_router = proto_routers.noise;
let builder_options = ChunkNoiseFunctionBuilderOptions::new(4, 8, 4, 4, 0, 0, 3);
// Benchmarking
c.bench_function("noise_router_creation_with_pooling", |b| {
b.iter(|| {
let router = ChunkNoiseRouter::generate(
black_box(&proto_noise_router),
black_box(&builder_options),
);
black_box(router);
});
});
}
criterion_group!(benches, bench_noise_router_creation);
criterion_main!(benches);