I'm trying to complete the guide on the vulkano website --- the windowed part that's incomplete.
I managed to figure out how to get vulkan to render to a winit window, but the performance is pretty poor on resizing. Is someone willing to take a look at my code and tell me what I'm doing wrong? :D
I'm trying to put together a basic render pipeline but there's one thing (at least) that is still really tripping me up. I can't figure out how to handle my graphics pipelines. Sorry for message length.
I've looked through all the examples now and took a lot of inspiration from them (especially the deferred rendering one). But I want to be able to draw multiple meshes and I can't figure out how to organize the pipelines.
If I understand correctly, generally, each rendered mesh needs its own graphics pipeline as they may use different shaders. The pipeline may also need to be recreated if the window size changes. The teapot example says as much, but then uses
.viewports_dynamic_scissors_irrelevant(1) which I think implies a dynamic viewport?
@pac85_gitlab I think this function might be helpful: https://docs.rs/vulkano/0.19.0/vulkano/command_buffer/struct.AutoCommandBufferBuilder.html#method.copy_image_to_buffer_dimensions
that only allows me to copy one mip level as I said, that won't do beacuse after that I can't write to the image any more
I've noticed that commits suddently stoppeted on the 12th of June, is everything alright with the project?
@pac85_gitlab Well, I'm not a maintainer of the project, just an active user and a minor contributor. @AustinJ235 has disappeared, unfortunately. I didn't see any activity in his own projects too for the past time. Hopefully, he will get back, but in worst case I think we can ask Tomaka to assign another one maintainer, or maybe even do our own fork. But in this moment there are no urgent PR pendings or bugs to be fixed urgently. The codebase is quite stable.
vulkano::swapchain::acquire_next_image(), my entire desktop freezes for a few seconds and then it errors with "no image is available for acquiring yet". Then I have to kill the process manually, which freezes my desktop for several seconds again, despite it being a panic. How should I go about troubleshooting this?
vkCreateSwapchainKHR(): pCreateInfo->surface is not known at this time to be supported for presentation by this device. The vkGetPhysicalDeviceSurfaceSupportKHR() must be called beforehand, and it must return VK_TRUE support with this surface for at least one queue family of this device.
after several hours of troubleshooting various compile errors i switched to linux where everything just worked immediately.
new problem: i'm getting this runtime error:
Device extension "khr_storage_buffer_storage_class" required
when running the compute example from the guide. what do ?
Hey I was wondering how to construct a type for a pipeline object I was storing on a struct? Is there an example of this somewhere I can study? I am currently using
pipeline: Arc<dyn GraphicsPipelineAbstract + Send + Sync>,
This looses the type of the vertex it was constructed with when stored to the struct causing errors when I go to pass in my vertex buffer to a draw call. If someone could point me in the right direction that would be awesome.