2019-05-05 14:52:27 +00:00
|
|
|
use log;
|
|
|
|
use env_logger;
|
2020-01-26 00:57:15 +00:00
|
|
|
use std::sync::Arc;
|
|
|
|
|
|
|
|
use cgmath as cgm;
|
2019-05-05 14:52:27 +00:00
|
|
|
|
|
|
|
mod render;
|
2020-01-20 01:00:14 +00:00
|
|
|
mod util;
|
2019-05-05 14:52:27 +00:00
|
|
|
|
2020-01-26 00:57:15 +00:00
|
|
|
use render::vulkan::data;
|
|
|
|
use render::renderable::Renderable;
|
|
|
|
|
2019-05-05 14:52:27 +00:00
|
|
|
fn main() {
|
|
|
|
env_logger::init();
|
|
|
|
log::info!("Starting...");
|
2020-01-26 00:57:15 +00:00
|
|
|
|
|
|
|
let elapsed = 0.0;
|
|
|
|
let transform = cgm::Matrix4::from_angle_z(cgm::Rad::from(cgm::Deg(elapsed as f32 * 0.180)));
|
|
|
|
let vertices = Arc::new(vec![
|
|
|
|
data::Vertex::new([-0.5, -0.5, 0.0], [1.0, 0.0, 0.0]),
|
|
|
|
data::Vertex::new([0.5, -0.5, 0.0], [0.0, 1.0, 0.0]),
|
|
|
|
data::Vertex::new([0.5, 0.5, 0.0], [0.0, 0.0, 1.0]),
|
|
|
|
data::Vertex::new([-0.5, 0.5, 0.0], [1.0, 1.0, 1.0])
|
|
|
|
]);
|
|
|
|
let indices = Arc::new(vec![
|
|
|
|
0, 1, 2, 2, 3, 0,
|
|
|
|
]);
|
|
|
|
let demo = render::renderable::Mesh {
|
|
|
|
transform, vertices, indices
|
|
|
|
};
|
|
|
|
|
2019-05-05 14:52:27 +00:00
|
|
|
let mut renderer = render::Renderer::initialize();
|
2020-01-26 00:57:15 +00:00
|
|
|
renderer.set_render_data(vec![demo.data().unwrap()]);
|
2019-05-05 14:52:27 +00:00
|
|
|
renderer.main_loop();
|
|
|
|
}
|