ubo working

This commit is contained in:
2019-08-18 23:28:17 +02:00
parent 1deb7c7e47
commit af7be04615
3 changed files with 9 additions and 8 deletions

View File

@@ -5,8 +5,8 @@ layout(location = 0) in vec2 tex_coords;
layout(location = 0) out vec4 out_color; layout(location = 0) out vec4 out_color;
layout(binding = 1) uniform sampler2D tex; //layout(binding = 1) uniform sampler2D tex;
void main() { void main() {
out_color = texture(tex, tex_coords); out_color = vec4(1.0, 0.0, 0.0, 1.0);// texture(tex, tex_coords);
} }

View File

@@ -44,9 +44,9 @@ impl TestGame {
fn update(self: &mut Self, renderer: &mut VulkanRenderer) { fn update(self: &mut Self, renderer: &mut VulkanRenderer) {
self.input.frame_start(); self.input.frame_start();
// let new_time = (renderer.game_data.start_time.elapsed().unwrap().as_micros() as f64 / 1000000.0) as f32; let new_time = (renderer.game_data.start_time.elapsed().unwrap().as_micros() as f64 / 1000000.0) as f32;
// let frame_time = new_time - renderer.game_data.uniform_buffers.iter().map(|ubo| ubo.time).max_by(|a,b| if a > b {Ordering::Greater} else {Ordering::Less} ).unwrap(); // let frame_time = new_time - renderer.game_data.uniform_buffers.iter().map(|ubo| ubo.time).max_by(|a,b| if a > b {Ordering::Greater} else {Ordering::Less} ).unwrap();
// renderer.game_data.uniform_buffers.iter_mut().for_each(|ubo| ubo.time = new_time); // renderer.uniform_buffers.iter_mut().for_each(|ubo| ubo.time = new_time);
// User interaction // User interaction
if self.input.button_just_released("quit") { if self.input.button_just_released("quit") {
@@ -87,8 +87,8 @@ impl TestGame {
renderer.game_data.push_constants.view = view.into(); renderer.game_data.push_constants.view = view.into();
renderer.game_data.push_constants.projection = proj.into(); renderer.game_data.push_constants.projection = proj.into();
// renderer.game_data.uniform_buffers.iter_mut().for_each(|ubo| ubo.view = view.into()); // renderer.uniform_buffers.iter_mut().for_each(|ubo| ubo.view = view.into());
// renderer.game_data.uniform_buffers.iter_mut().for_each(|ubo| ubo.projection = proj.into()); // renderer.uniform_buffers.iter_mut().for_each(|ubo| ubo.projection = proj.into());
renderer.game_data.line_push_constants.view = view.into(); renderer.game_data.line_push_constants.view = view.into();
renderer.game_data.line_push_constants.projection = proj.into(); renderer.game_data.line_push_constants.projection = proj.into();

View File

@@ -76,7 +76,8 @@ pub struct GameObject {
pub(crate) type GameObjectHandle = usize; pub(crate) type GameObjectHandle = usize;
pub(crate) type MeshHandle = usize; pub(crate) type MeshHandle = usize;
type FixedGraphicsDescriptorSet = Arc<FixedSizeDescriptorSet<Arc<dyn GraphicsPipelineAbstract + Send + Sync>, ((((), PersistentDescriptorSetBuf<Arc<CpuAccessibleBuffer<vs::ty::UniformBufferObject>>>), PersistentDescriptorSetImg<Arc<ImmutableImage<Format>>>), PersistentDescriptorSetSampler)>>; type FixedGraphicsDescriptorSet = Arc<FixedSizeDescriptorSet<Arc<dyn GraphicsPipelineAbstract + Send + Sync>, ((), PersistentDescriptorSetBuf<Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<vs::ty::UniformBufferObject>>>)>>;
//type FixedGraphicsDescriptorSet = Arc<FixedSizeDescriptorSet<Arc<dyn GraphicsPipelineAbstract + Send + Sync>, ((((), PersistentDescriptorSetBuf<Arc<CpuAccessibleBuffer<vs::ty::UniformBufferObject>>>), PersistentDescriptorSetImg<Arc<ImmutableImage<Format>>>), PersistentDescriptorSetSampler)>>;
pub struct GameData { pub struct GameData {
pub start_time: SystemTime, pub start_time: SystemTime,
@@ -312,7 +313,7 @@ impl VulkanRenderer {
descriptor_set_pool descriptor_set_pool
.lock().unwrap().next() .lock().unwrap().next()
.add_buffer(uniform_buffer.clone()).unwrap() .add_buffer(uniform_buffer.clone()).unwrap()
.add_sampled_image(default_tex.clone(), sampler.clone()).unwrap() // .add_sampled_image(default_tex.clone(), sampler.clone()).unwrap()
.build().unwrap()) .build().unwrap())
}) })
.collect(); .collect();