Fixed a particularly nasty typo bug. Added more moving sprites. Will need to examine order of draw commands. Need to fix the size/8 for misaligned data.

This commit is contained in:
2019-09-09 23:27:49 -07:00
parent 709a617cd1
commit e8507f9dfc
8 changed files with 67 additions and 29 deletions

View File

@@ -285,6 +285,7 @@ impl CanvasState {
/// Takes physical and capabilities as we don't store that in Canvas
pub fn load_shader(&mut self,
filename: String,
shader_type: ShaderType,
physical: PhysicalDevice,
capabilities: Capabilities) -> Option<Arc<CanvasShaderHandle>> {
@@ -292,15 +293,30 @@ impl CanvasState {
handle: self.shader_buffers.len() as u32
});
let shader = Arc::new(CanvasShader::new_colored(
filename.clone(),
capabilities.clone(),
self.queue.clone(),
physical.clone(),
self.device.clone(),
handle.clone(),
self.render_pass.clone())
);
let shader = match shader_type {
ShaderType::SOLID => {
Arc::new(CanvasShader::new_colored(
filename.clone(),
capabilities.clone(),
self.queue.clone(),
physical.clone(),
self.device.clone(),
handle.clone(),
self.render_pass.clone())
)
}
ShaderType::IMAGE | ShaderType::TEXTURED => {
Arc::new(CanvasShader::new_textured(
filename.clone(),
capabilities.clone(),
self.queue.clone(),
physical.clone(),
self.device.clone(),
handle.clone(),
self.render_pass.clone())
)
}
};
self.shader_buffers.push(shader.clone());