mirror of
https://github.com/eliasstepanik/voxel-simulation.git
synced 2026-01-10 21:38:29 +00:00
Change generation settings
This commit is contained in:
parent
d24606594d
commit
a8408dae38
@ -1,3 +1,4 @@
|
|||||||
|
use std::path::Path;
|
||||||
use crate::plugins::environment::systems::voxels::debug::{draw_grid, visualize_octree_system};
|
use crate::plugins::environment::systems::voxels::debug::{draw_grid, visualize_octree_system};
|
||||||
use crate::plugins::environment::systems::voxels::lod::update_chunk_lods;
|
use crate::plugins::environment::systems::voxels::lod::update_chunk_lods;
|
||||||
use crate::plugins::environment::systems::voxels::meshing_gpu::{
|
use crate::plugins::environment::systems::voxels::meshing_gpu::{
|
||||||
|
|||||||
@ -8,6 +8,9 @@ use rayon::prelude::*;
|
|||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
use std::thread;
|
use std::thread;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pub fn setup(mut commands: Commands, root: Res<RootGrid>) {
|
pub fn setup(mut commands: Commands, root: Res<RootGrid>) {
|
||||||
let builder = thread::Builder::new()
|
let builder = thread::Builder::new()
|
||||||
.name("octree-build".into())
|
.name("octree-build".into())
|
||||||
@ -35,17 +38,17 @@ pub fn setup(mut commands: Commands, root: Res<RootGrid>) {
|
|||||||
let mut tree =
|
let mut tree =
|
||||||
SparseVoxelOctree::new(octree_depth, octree_base_size, false, false, false);
|
SparseVoxelOctree::new(octree_depth, octree_base_size, false, false, false);
|
||||||
// How many random spheres?
|
// How many random spheres?
|
||||||
const NUM_SPHERES: usize = 5;
|
const NUM_SPHERES: usize = 15;
|
||||||
let mut rng = thread_rng();
|
let mut rng = thread_rng();
|
||||||
|
|
||||||
for _ in 0..NUM_SPHERES {
|
for _ in 0..NUM_SPHERES {
|
||||||
let center = Vec3::new(
|
let center = Vec3::new(
|
||||||
rng.gen_range(-1000.0..1000.0),
|
rng.gen_range(-500.0..500.0),
|
||||||
rng.gen_range(-1000.0..1000.0),
|
rng.gen_range(-500.0..500.0),
|
||||||
rng.gen_range(-1000.0..1000.0),
|
rng.gen_range(-500.0..500.0),
|
||||||
);
|
);
|
||||||
|
|
||||||
let radius = rng.gen_range(20..=150); // voxels
|
let radius = rng.gen_range(20..=200); // voxels
|
||||||
|
|
||||||
generate_voxel_sphere_parallel(&mut tree, center, radius);
|
generate_voxel_sphere_parallel(&mut tree, center, radius);
|
||||||
}
|
}
|
||||||
@ -67,6 +70,7 @@ pub fn setup(mut commands: Commands, root: Res<RootGrid>) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
pub fn generate_voxel_sphere_parallel(octree: &mut SparseVoxelOctree, center: Vec3, radius: i32) {
|
pub fn generate_voxel_sphere_parallel(octree: &mut SparseVoxelOctree, center: Vec3, radius: i32) {
|
||||||
let step = octree.get_spacing_at_depth(octree.max_depth);
|
let step = octree.get_spacing_at_depth(octree.max_depth);
|
||||||
let radius_sq = radius * radius;
|
let radius_sq = radius * radius;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user