Compare commits

..

1 commit

Author SHA1 Message Date
a5a3c63214 Update Rust crate rusqlite to 0.33.0 2025-03-01 18:02:38 +00:00

View file

@ -1,6 +1,6 @@
mod vertex;
use std::{path::PathBuf, sync::Arc, time::Duration};
use std::{path::PathBuf, sync::Arc};
use anyhow::Result;
use ecs::*;
@ -94,24 +94,8 @@ impl SkyBox {
.add_descriptor_set_layout(&descriptor_set_layout)
.build(context.device().clone())?;
let vertex_shader = ShaderModule::from_slice(
context.device().clone(),
include_bytes!("../shader/skybox.vert.spv"),
)?;
let fragment_shader = ShaderModule::from_slice(
context.device().clone(),
include_bytes!("../shader/skybox.frag.spv"),
)?;
let pipeline = Self::create_pipeline(
context,
sample_count,
&render_target,
&pipeline_layout,
&vertex_shader,
&fragment_shader,
)?;
let pipeline =
Self::create_pipeline(context, sample_count, &render_target, &pipeline_layout)?;
let descriptor_pool = DescriptorPool::builder()
.set_layout(descriptor_set_layout)
@ -140,32 +124,17 @@ impl SkyBox {
.map(|t| VertexPoint::new(t[0] as f32, t[1] as f32, t[2] as f32))
.collect::<Vec<_>>();
let command_buffer = CommandBuffer::new_primary()
.build(context.device().clone(), context.queue().clone())?;
let cube_buffer = SingleSubmit::builder(&command_buffer, context.queue(), |recorder| {
Buffer::builder()
.set_memory_usage(MemoryUsage::CpuToGpu)
.set_usage(VK_BUFFER_USAGE_TRANSFER_SRC_BIT)
.set_data(&cube_mesh)
.build(context.device().clone())?
.into_device_local(
recorder,
VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT,
VK_PIPELINE_STAGE_VERTEX_INPUT_BIT,
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,
)
})
.wait_for_timeout(Duration::from_secs(2))
.submit()?;
let cube_buffer = Buffer::builder()
.set_memory_usage(MemoryUsage::GpuOnly)
.set_sharing_mode(VK_SHARING_MODE_EXCLUSIVE)
.set_usage(VK_BUFFER_USAGE_VERTEX_BUFFER_BIT)
.set_data(&cube_mesh)
.build(context.device().clone())?;
let me = Self {
_cube_map: cube_map,
cube_buffer,
vertex_shader,
fragment_shader,
render_target,
pipeline,
descriptor_set,
@ -226,18 +195,11 @@ impl SkyBox {
sample_count: VkSampleCountFlags,
render_target: &TargetMode<RenderTarget>,
pipeline_layout: &Arc<PipelineLayout>,
vertex_shader: &Arc<ShaderModule<Vertex>>,
fragment_shader: &Arc<ShaderModule<Fragment>>,
) -> Result<TargetMode<Arc<Pipeline>>> {
render_target.execute(|render_target| {
Pipeline::new_graphics()
.set_vertex_shader::<VertexPoint>(vertex_shader.clone())
.set_fragment_shader(fragment_shader.clone())
.input_assembly(VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST, false)
.default_multisample(sample_count)
.default_color_blend(vec![VkPipelineColorBlendAttachmentState::default()])
.default_rasterization(VK_CULL_MODE_NONE, VK_FRONT_FACE_CLOCKWISE)
.whole_area(render_target.width(), render_target.height())
.build(
context.device().clone(),
pipeline_layout,
@ -283,6 +245,6 @@ impl TScene for SkyBox {
window_height: f32,
images: &TargetMode<Vec<Arc<Image>>>,
) -> Result<()> {
Ok(())
todo!()
}
}