Most of the compute side is mocked up and compiling.
This commit is contained in:
17
src/main.rs
17
src/main.rs
@@ -21,6 +21,7 @@ use vulkano_win::VkSurfaceBuild;
|
||||
use sprite::Sprite;
|
||||
use crate::canvas::CanvasFrame;
|
||||
use crate::compu_wip::{CompuSprite, ComputeFrame, CompuBuffers, CompuState};
|
||||
use crate::util::compute_image::ComputeImage;
|
||||
|
||||
mod util;
|
||||
mod slider;
|
||||
@@ -221,9 +222,14 @@ fn main() {
|
||||
I will also need to get the texture id
|
||||
*/
|
||||
|
||||
let compu_sprite1 = CompuSprite::new((-1.,-0.5), (0.1,0.1));
|
||||
|
||||
|
||||
let compu_sprite1 = CompuSprite::new((-1.,-0.5), (0.1,0.1), processor.new_swap_image((300, 300)));
|
||||
|
||||
let image_data = ComputeImage::load_raw(String::from("funky-bird.jpg"));
|
||||
let compute_buffer = processor.new_compute_buffer(image_data.0, image_data.1, 4);
|
||||
let compute_kernel = processor.get_kernel_handle(String::from("simple-edge.compute"))
|
||||
.expect("Can't find that kernel");
|
||||
|
||||
while let Some(p) = window.get_position() {
|
||||
|
||||
@@ -273,13 +279,18 @@ fn main() {
|
||||
return;
|
||||
}
|
||||
|
||||
let mut compu_frame = ComputeFrame::new();
|
||||
compu_frame.add(compute_buffer.clone(), compute_kernel.clone());
|
||||
compu_frame.add_with_image_swap(compute_buffer.clone(), compute_kernel.clone(), &compu_sprite1);
|
||||
|
||||
let mut canvas = CanvasFrame::new();
|
||||
canvas.draw(&sprite);
|
||||
canvas.draw(&sprite2);
|
||||
canvas.draw(&compu_sprite1);
|
||||
|
||||
|
||||
(frame_future) = processor.run(&surface, frame_future, canvas);
|
||||
(frame_future) = processor.run(&surface, frame_future,
|
||||
canvas,
|
||||
compu_frame);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user