-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issues rendering to specific mip level #84
Comments
This is something I have not yet tested, but should work as you describe. I've added a basic example to #86 and will work on getting it to render properly this weekend. |
The new example ( Unfortunately, to get this to work without validation layers I had to disable render pass merging and break each Screen-13 should instead track access to any combination of subresources (image mip levels/layers/aspects, buffer regions) and calculate the correct state changes to bring a resource from the old access to the new. This will have to be a tree or vector of some kind and won't use the existing approach of atomic variables. I don't want to use a mutex, because only one thread should have owned access to modify an image at one time, but doing that might be a very large change to the API. There were a collection of other issues related to the way this example uses render areas, exposing the fact that scissor access is maybe simplified too much. |
Thanks for taking a look at this!! Your explanation regarding the subresource access makes sense and I think is probably related to some of the other issues I've been having. |
It seems that it's not currently possible to render to a specific texture mip level. (as an attachment)
It seems that at least render_area() and begin_render_pass() don't take into account the
base_mip_level
specified in theImageViewInfo
.This results in errors like:
I tried manually setting the render area with
set_render_area
, with this the device was not immediately lost but it still didn't render the mips and had the same errors.The text was updated successfully, but these errors were encountered: