1
1
use crate :: prelude:: * ;
2
2
3
3
pub fn setup_world_system (
4
- mut chunk_manager : ResMut < ChunkManager > ,
4
+ chunk_manager : ResMut < ChunkManager > ,
5
5
generator : Res < terrain_resources:: Generator > ,
6
6
) {
7
7
let render_distance = Vec3 :: new ( 12.0 , 2.0 , 12.0 ) ;
@@ -25,19 +25,15 @@ pub use visualizer::*;
25
25
mod visualizer {
26
26
27
27
use bevy:: {
28
- asset:: RenderAssetUsages ,
29
- image:: Image ,
30
- log:: info,
31
28
math:: { Vec2 , Vec3 } ,
32
- prelude:: { EventReader , EventWriter , Res , ResMut } ,
33
- render:: render_resource:: { Extent3d , TextureDimension , TextureFormat } ,
29
+ prelude:: { EventReader , EventWriter , ResMut } ,
34
30
} ;
35
31
use bevy_inspector_egui:: {
36
32
bevy_egui:: EguiContexts ,
37
- egui:: { self , load :: SizedTexture , Color32 , ColorImage , ImageData , TextureOptions } ,
33
+ egui:: { self , Color32 , ColorImage , ImageData , TextureOptions } ,
38
34
} ;
39
35
40
- use super :: { chat_resources , player_resources , terrain_events, terrain_resources} ;
36
+ use super :: { terrain_events, terrain_resources} ;
41
37
42
38
fn generate_terrain_heightmap (
43
39
generator : & terrain_resources:: Generator ,
@@ -59,7 +55,7 @@ mod visualizer {
59
55
) ;
60
56
let value = value * size. y as f64 ;
61
57
let value = value as u8 ;
62
- data[ ( x + z * width) as usize ] = value;
58
+ data[ x + z * width] = value;
63
59
}
64
60
}
65
61
@@ -82,7 +78,6 @@ mod visualizer {
82
78
mut noise_texture : ResMut < terrain_resources:: NoiseTexture > ,
83
79
mut contexts : EguiContexts ,
84
80
) {
85
-
86
81
for _ in events. read ( ) {
87
82
let width = 1024 ;
88
83
let height = 1024 ;
@@ -95,9 +90,9 @@ mod visualizer {
95
90
) ;
96
91
97
92
noise_texture. texture = Some ( contexts. ctx_mut ( ) . load_texture (
98
- "terrain-texture" ,
99
- image_data,
100
- TextureOptions :: default ( ) ,
93
+ "terrain-texture" ,
94
+ image_data,
95
+ TextureOptions :: default ( ) ,
101
96
) ) ;
102
97
noise_texture. size = Vec2 :: new ( width as f32 , height as f32 ) ;
103
98
}
@@ -115,47 +110,44 @@ mod visualizer {
115
110
mut generator : ResMut < terrain_resources:: Generator > ,
116
111
mut event_writer : EventWriter < terrain_events:: RegenerateHeightMapEvent > ,
117
112
) {
118
- match & noise_texture. texture {
119
- Some ( texture_handle) => {
120
- egui:: Window :: new ( "Hello" ) . show ( contexts. ctx_mut ( ) , |ui| {
121
- ui. label ( "world" ) ;
122
-
123
- ui. add ( egui:: widgets:: Slider :: new (
124
- & mut generator. params . height_params . octaves ,
125
- 1 ..=8 ,
126
- ) ) ;
127
- ui. add ( egui:: widgets:: Slider :: new (
128
- & mut generator. params . height_params . height ,
129
- 0.0 ..=10.0 ,
130
- ) ) ;
131
- ui. add ( egui:: widgets:: Slider :: new (
132
- & mut generator. params . height_params . lacuranity ,
133
- 0.0 ..=4.0 ,
134
- ) ) ;
135
- ui. add ( egui:: widgets:: Slider :: new (
136
- & mut generator. params . height_params . frequency ,
137
- 0.0 ..=1.0 ,
138
- ) ) ;
139
- ui. add ( egui:: widgets:: Slider :: new (
140
- & mut generator. params . height_params . amplitude ,
141
- 0.0 ..=20.0 ,
142
- ) ) ;
143
- ui. add ( egui:: widgets:: Slider :: new (
144
- & mut generator. params . height_params . persistence ,
145
- 0.0 ..=1.0 ,
146
- ) ) ;
147
-
148
- if ui. button ( "Regenerate" ) . clicked ( ) {
149
- event_writer. send ( terrain_events:: RegenerateHeightMapEvent ) ;
150
- } ;
151
-
152
- ui. add ( egui:: widgets:: Image :: new ( egui:: load:: SizedTexture :: new (
153
- texture_handle. id ( ) ,
154
- texture_handle. size_vec2 ( ) ,
155
- ) ) ) ;
156
- } ) ;
157
- }
158
- None => { }
113
+ if let Some ( texture_handle) = & noise_texture. texture {
114
+ egui:: Window :: new ( "Hello" ) . show ( contexts. ctx_mut ( ) , |ui| {
115
+ ui. label ( "world" ) ;
116
+
117
+ ui. add ( egui:: widgets:: Slider :: new (
118
+ & mut generator. params . height_params . octaves ,
119
+ 1 ..=8 ,
120
+ ) ) ;
121
+ ui. add ( egui:: widgets:: Slider :: new (
122
+ & mut generator. params . height_params . height ,
123
+ 0.0 ..=10.0 ,
124
+ ) ) ;
125
+ ui. add ( egui:: widgets:: Slider :: new (
126
+ & mut generator. params . height_params . lacuranity ,
127
+ 0.0 ..=4.0 ,
128
+ ) ) ;
129
+ ui. add ( egui:: widgets:: Slider :: new (
130
+ & mut generator. params . height_params . frequency ,
131
+ 0.0 ..=1.0 ,
132
+ ) ) ;
133
+ ui. add ( egui:: widgets:: Slider :: new (
134
+ & mut generator. params . height_params . amplitude ,
135
+ 0.0 ..=20.0 ,
136
+ ) ) ;
137
+ ui. add ( egui:: widgets:: Slider :: new (
138
+ & mut generator. params . height_params . persistence ,
139
+ 0.0 ..=1.0 ,
140
+ ) ) ;
141
+
142
+ if ui. button ( "Regenerate" ) . clicked ( ) {
143
+ event_writer. send ( terrain_events:: RegenerateHeightMapEvent ) ;
144
+ } ;
145
+
146
+ ui. add ( egui:: widgets:: Image :: new ( egui:: load:: SizedTexture :: new (
147
+ texture_handle. id ( ) ,
148
+ texture_handle. size_vec2 ( ) ,
149
+ ) ) ) ;
150
+ } ) ;
159
151
}
160
152
}
161
153
}
0 commit comments