Introduce Program and State
This commit is contained in:
parent
d77492c0c3
commit
ae5e2c6c73
14 changed files with 643 additions and 777 deletions
|
|
@ -18,8 +18,8 @@ impl iced_graphics::window::Compositor for Compositor {
|
|||
type Surface = wgpu::Surface;
|
||||
type SwapChain = wgpu::SwapChain;
|
||||
|
||||
fn new(settings: Self::Settings) -> Self {
|
||||
let (device, queue) = futures::executor::block_on(async {
|
||||
fn new(settings: Self::Settings) -> (Self, Renderer) {
|
||||
let (mut device, queue) = futures::executor::block_on(async {
|
||||
let adapter = wgpu::Adapter::request(
|
||||
&wgpu::RequestAdapterOptions {
|
||||
power_preference: if settings.antialiasing.is_none() {
|
||||
|
|
@ -44,15 +44,17 @@ impl iced_graphics::window::Compositor for Compositor {
|
|||
.await
|
||||
});
|
||||
|
||||
Self {
|
||||
device,
|
||||
queue,
|
||||
format: settings.format,
|
||||
}
|
||||
}
|
||||
let renderer =
|
||||
Renderer::new(crate::Backend::new(&mut device, settings));
|
||||
|
||||
fn create_renderer(&mut self, settings: Settings) -> Renderer {
|
||||
Renderer::new(crate::Backend::new(&mut self.device, settings))
|
||||
(
|
||||
Self {
|
||||
device,
|
||||
queue,
|
||||
format: settings.format,
|
||||
},
|
||||
renderer,
|
||||
)
|
||||
}
|
||||
|
||||
fn create_surface<W: HasRawWindowHandle>(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue