| 149 | event: WindowEvent, |
| 150 | ) { |
| 151 | if matches!(event, WindowEvent::CloseRequested) { |
| 152 | event_loop.exit(); |
| 153 | } |
| 154 | } |
| 155 | } |
| 156 | |
| 157 | fn main() { |
| 158 | let event_loop = EventLoop::new().expect("event loop"); |
| 159 | let mut app = App { |
| 160 | window: None, |
| 161 | cases: vec![ |
| 162 | BenchCase { |
| 163 | name: "stream2d_1_512_sprites1k", |
| 164 | setup: |w| setup_stream_2d(w, 1, 512, 1_000), |
| 165 | redraw: redraw_2d, |
| 166 | }, |
| 167 | BenchCase { |
| 168 | name: "stream2d_4_512_sprites1k", |
| 169 | setup: |w| setup_stream_2d(w, 4, 512, 1_000), |
| 170 | redraw: redraw_2d, |
| 171 | }, |
| 172 | BenchCase { |
| 173 | name: "stream2d_1_1024_sprites10k", |
| 174 | setup: |w| setup_stream_2d(w, 1, 1024, 10_000), |
| 175 | redraw: redraw_2d, |
| 176 | }, |
| 177 | BenchCase { |
| 178 | name: "stream3d_1_512_meshes1k", |
| 179 | setup: |w| setup_stream_3d(w, 1, 512, 1_000), |
| 180 | redraw: redraw_3d, |
| 181 | }, |
| 182 | BenchCase { |
| 183 | name: "stream3d_4_512_meshes1k", |
| 184 | setup: |w| setup_stream_3d(w, 4, 512, 1_000), |
| 185 | redraw: redraw_3d, |
| 186 | }, |
| 187 | BenchCase { |
| 188 | name: "stream3d_1_1024_meshes10k", |
| 189 | setup: |w| setup_stream_3d(w, 1, 1024, 10_000), |
| 190 | redraw: redraw_3d, |
| 191 | }, |
| 192 | // webcam CPU-upload path: per-frame WriteTextureRgba to a displayed |