!wAvQtPZgqUpkbHgXaM:matrix.org

Vulkano

23 Members
https://github.com/vulkano-rs/1 Servers

Load older messages


Timestamp Message
23 Mar 2020
04:52:47@gitter_austinj235:matrix.orgAustin Johnson (Gitter) you are taking the last frames future previous_frame_end.take().unwrap() joining the future where you acquire the image you are presenting to .join(acquire_future). This is the one that can limit frame rate. Then you are saying with .then_execute(queue.clone(), command_buffer).unwrap() after the acquire excute the command that you built. .then_swapchain_present(queue.clone(), swapchain.clone(), image_num) after the command you built finishes present it to the image. note the swapchain and image_num are from the acquire. The present I think also can limit frame rate. Finally the .then_signal_fence_and_flush(); is saying that with the combination of all previous futures wait for all them to complete before doing anything else.
04:55:00@gitter_austinj235:matrix.orgAustin Johnson (Gitter) When you break everything down vulkano's code will follow the general flow of other vulkan how to's, just that ours will have more saftey and simify some of the operations.
26 Mar 2020
01:51:16@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)yeah I made a lot of progress, thank you.
01:52:40@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) Right now I'm trying to figure out how to then_execute (in the future = previous_frame_end.take()[...] multiple command buffers. I have a terrain mesh I want routed to one vertex shader, and my aircraft model routed to another shader.
02:09:13@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) When I write two .then_executes in the same previous_frame_end chain, the final one overrides the initial.
04:40:44@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)I see I need to use a secondary cb, what I was trying is using two primary cbs.
04:54:44@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) I need to pass a RenderPassAbstract, so how to get that? how to invoke this secondary command buffer ?
05:15:39@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) Okay I think I figured all that out, using execute_commands and render_pass.clone() for previous questions. Now I'm getting the compiler complaints about non-safety, so I guess I should try wrapping a bunch of this code in an unsafe block, right? How much of it...?
05:17:43@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) Everything solved... except the RenderPassAbstract reference for the secondary command buffer definition.
05:37:33@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) I'm trying to use Subpass and give it like framebuffers[image_num] stuff like that...
05:37:58@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) That's for the secondary_graphics
05:43:57@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)My framerates are pretty good btw.
05:44:29@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)I was just wondering if there was a default or something.
06:28:17@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)Solved the Subpass reference issue. Full steam ahead and all that...
06:28:31@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)I have no more questions or comments at this time...
27 Mar 2020
23:29:12@gitter_pac85_gitlab:matrix.organtonino (Gitter) Hi, I'm rendering a scene twice and the second time i render it I use Equal for depth testing. It works until I put a compute dispatch in between the two, the depth gets all corrupted so I guess the layout isn't being transitioned. For the second pass on the scene I'm binding it to the frame buffer but not writing to it. Any ideas?
29 Mar 2020
01:03:40@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) I'd be interested if the design of the API assumed people would be doing graphics or compute applications. I hadn't considered doing both in the same application. Interesting.
10:31:01@gitter_austinj235:matrix.orgAustin Johnson (Gitter) @pac85_gitlab dispatches don't automatically insert any pipeline barriers atm. I don't think anyways. You may have to split the command up and put a fence in there.
17:31:00@gitter_kulicuu:matrix.orgWylie Кулик (Gitter) I'm working with the example "runtime-shader" in order to set up a live reload development studio. I've gotten my source compiled to spirv with shaderc but can't figure out how to write this to file. &[u32] doesn't write... Was using fs::write then switched to File object let mut f = File::create(...) and f.write_all(binary_result.as_binary());
17:32:15@gitter_austinj235:matrix.orgAustin Johnson (Gitter) f.write_all(binary_result.as_binary().to_vec())
17:32:22@gitter_austinj235:matrix.orgAustin Johnson (Gitter)hmm
17:32:23@gitter_austinj235:matrix.orgAustin Johnson (Gitter)nvm
17:32:26@gitter_austinj235:matrix.orgAustin Johnson (Gitter)still a u32
17:33:44@gitter_austinj235:matrix.orgAustin Johnson (Gitter) f.write_all(binary_result.as_binary_u8()).unwrap()
17:35:56@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)ah thanks !
17:38:18@gitter_kulicuu:matrix.orgWylie Кулик (Gitter)Works Thankyou!!!
19:46:13@gitter_pac85_gitlab:matrix.organtonino (Gitter) @AustinJ235 this seems very strange to me, the various passes that i described are all on different command buffers and there are fences between their submissions. Your are telling me that disoatches don't involve layout transtion and yet wether i execute that particular compute shader that only reads the depth buffer it screws up.
19:47:29@gitter_pac85_gitlab:matrix.organtonino (Gitter) (edited) ... that disoatches don't involve layout transtion and yet wether i execute that particular compute shader that only reads the depth buffer it ... => ... that dispatches don't involve layout transtion and yet wether i execute that particular compute shader that only reads the depth buffer makes a difference on wether the depth buffers it ...
19:47:44@gitter_pac85_gitlab:matrix.organtonino (Gitter) (edited) ... buffers itscrews ... => ... buffers screws ...
19:47:58@gitter_austinj235:matrix.orgAustin Johnson (Gitter) I haven't really looked to deeply into the command code, only enough to fix the one bug. More eyes would be helpful.

There are no newer messages yet.


Back to Room List