Skip to content

Commit ce2f95f

Browse files
Remove compiled shaders. Remove redundant clones. Update render preparation system with asset index.
1 parent 8eef201 commit ce2f95f

File tree

5 files changed

+7
-13
lines changed

5 files changed

+7
-13
lines changed

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
/target
22
**/*.rs.bk
3-
*.spv
3+
**/*.spv

assets/shaders/shader.frag.spv

-688 Bytes
Binary file not shown.

assets/shaders/shader.vert.spv

-1.83 KB
Binary file not shown.

src/render/system/prepare_renderer.rs

+4-10
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@ impl<'a> System<'a> for PrepareRendererSystem {
2626
renderer.texture_samplers.push(texture_image_sampler);
2727

2828
// TODO: Batch assets into a large vertex buffer
29-
for mesh in meshes.join() {
29+
for (asset_index, mesh) in meshes.join().enumerate() {
3030
let asset = GltfAsset::from_file(&mesh.mesh_name);
3131
let number_of_meshes = meshes.join().count() as u32;
3232
let number_of_materials = asset.textures.len() as u32;
3333
Self::setup_descriptor_pool(renderer, number_of_meshes, number_of_materials);
34-
Self::load_mesh(renderer, &asset);
34+
Self::load_mesh(renderer, &asset, asset_index);
3535
}
3636

3737
let number_of_framebuffers = renderer.framebuffers.len();
@@ -45,7 +45,7 @@ impl<'a> System<'a> for PrepareRendererSystem {
4545
}
4646

4747
impl PrepareRendererSystem {
48-
fn load_mesh(renderer: &mut Renderer, asset: &GltfAsset) {
48+
fn load_mesh(renderer: &mut Renderer, asset: &GltfAsset, asset_index: usize) {
4949
let uniform_buffer_size = mem::size_of::<UniformBufferObject>() as vk::DeviceSize;
5050
let number_of_swapchain_images = renderer.swapchain.images().len();
5151

@@ -60,8 +60,6 @@ impl PrepareRendererSystem {
6060
// Start at the root of the node graph
6161
let mut dfs = Dfs::new(&graph, NodeIndex::new(0));
6262

63-
let mut asset_index = 0;
64-
6563
// Walk the scene graph
6664
while let Some(node_index) = dfs.next(&graph) {
6765
// If there is a mesh, handle its primitives
@@ -118,7 +116,6 @@ impl PrepareRendererSystem {
118116

119117
renderer.models.push(model_data);
120118
}
121-
asset_index += 1;
122119
}
123120
}
124121
}
@@ -139,17 +136,14 @@ impl PrepareRendererSystem {
139136
let max_number_of_pools =
140137
(2 + number_of_materials + number_of_meshes) * number_of_swapchain_images;
141138

142-
println!("ubo pool size: {}", ubo_pool_size);
143-
println!("sampler pool size: {}", sampler_pool_size);
144-
println!("max number of pools: {}", max_number_of_pools);
145-
146139
// TODO: Push this after all model data has been created
147140
let descriptor_pool = DescriptorPool::new(
148141
renderer.context.clone(),
149142
ubo_pool_size,
150143
sampler_pool_size,
151144
max_number_of_pools,
152145
);
146+
println!("Pushed a descriptor pool!");
153147
renderer.descriptor_pools.push(descriptor_pool);
154148
}
155149

src/resource/texture.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ impl Texture {
9696
pixels: image.into_raw(),
9797
};
9898
Self::from_data(
99-
context.clone(),
99+
context,
100100
command_pool,
101101
graphics_queue,
102102
description,
@@ -122,7 +122,7 @@ impl Texture {
122122
let texture = Self::new(context.clone(), create_info);
123123

124124
let buffer = Buffer::new(
125-
context.clone(),
125+
context,
126126
image_size,
127127
vk::BufferUsageFlags::TRANSFER_SRC,
128128
vk::MemoryPropertyFlags::HOST_VISIBLE,

0 commit comments

Comments
 (0)