better lighting

This commit is contained in:
2020-06-28 22:11:43 +02:00
parent f868a8e45a
commit 002db530be
5 changed files with 57 additions and 35 deletions

View File

@@ -1,7 +1,7 @@
use std::sync::Arc;
use std::time::SystemTime;
use cgmath::{Matrix4, SquareMatrix, vec3};
use cgmath::{Matrix4, SquareMatrix};
use image::{ImageBuffer, ImageFormat, Rgb, Rgba};
use image::buffer::ConvertBuffer;
use vulkano::buffer::{BufferUsage, CpuAccessibleBuffer};
@@ -280,8 +280,10 @@ impl VulkanRenderer {
view: Matrix4::identity().into(),
projection: Matrix4::identity().into(),
time: 0.0,
light_position: vec3(0.0, 0.0, 0.0).into(),
light_position: [0.0, 0.0, 0.0],
camera_position: [0.0, 0.0, 0.0],
_dummy0: [0; 12],
_dummy1: [0; 4],
};
for _ in 0..swapchain.num_images() {
@@ -434,7 +436,7 @@ impl VulkanRenderer {
};
}
pub fn upload_mesh(self: &mut Self, mesh: CPUMesh) -> usize {
pub fn upload_mesh(self: &mut Self, mesh: CPUMesh) -> MeshHandle {
let vertex_buffer = CpuAccessibleBuffer::from_iter(self.device.clone(), BufferUsage::vertex_buffer(), false, mesh.vertices.into_iter()).unwrap();
let index_buffer = CpuAccessibleBuffer::from_iter(self.device.clone(), BufferUsage::index_buffer(), false, mesh.indices.into_iter()).unwrap();
self.game_data.meshes.push(Mesh { vertex_buffer, index_buffer });