abrasion/engine/src/main.rs

41 lines
1.1 KiB
Rust
Raw Normal View History

2019-05-05 14:52:27 +00:00
use log;
use env_logger;
2020-01-26 19:59:55 +00:00
use std::rc::Rc;
2020-01-26 00:57:15 +00:00
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
2020-03-14 15:55:03 +00:00
let mut renderables = Vec::new();
for i in 1..1000 {
let elapsed = 0.0;
let transform = cgm::Matrix4::from_angle_z(cgm::Rad::from(cgm::Deg(elapsed as f32 * 0.180))) *
cgm::Matrix4::from_translation(cgm::Vector3::new(0.0, 0.0, (i as f32)/1000.0));
let vertices = Rc::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 = Rc::new(vec![
0, 1, 2, 2, 3, 0,
]);
let demo = render::renderable::Mesh {
transform, vertices, indices
};
renderables.push(demo.data().unwrap());
}
2020-01-26 00:57:15 +00:00
2019-05-05 14:52:27 +00:00
let mut renderer = render::Renderer::initialize();
2020-03-14 15:55:03 +00:00
renderer.set_render_data(renderables);
2019-05-05 14:52:27 +00:00
renderer.main_loop();
}