-
Notifications
You must be signed in to change notification settings - Fork 298
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add a conrod_wgpu
backend crate
#1331
Merged
mitchmindtree
merged 11 commits into
PistonDevelopers:master
from
mitchmindtree:conrod_wgpu
Mar 2, 2020
Merged
Add a conrod_wgpu
backend crate
#1331
mitchmindtree
merged 11 commits into
PistonDevelopers:master
from
mitchmindtree:conrod_wgpu
Mar 2, 2020
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Just about everything should be implemented other than images, and perhaps a MSAA resolve in the example. Neither of these should be tricky to add, I'll do so soon before merging this PR. Everything went very smoothly, other than the alpha channel written by the fragment shader seemingly being ignored. At first I though something must be wrong with the way I was sampling alpha values from the glyph cache, however even if I manually set the alpha to 0.0 (and ignore the glyph cache texture sampling entirely) the text still renders as white rectangles. Will look into this further next time I get the chance if noone beats me to it. I'm sure I'm probably just missing a flag or bool somewhere. This also includes an update to `conrod_winit` to support winit 0.21 via a new `v021` module.
Thanks to the kind folks in the wgpu matrix channel for the help on this one!
This adds dynamic image support by maintaining a map of bind groups for each unique user image submitted via the image map. The next step will be to address the `panic!` that occurs and add some MSAA for polish.
Last step should be MSAA, then I think `conrod_wgpu` should be ready to land.
Defaults to 4 samples, but can be changed via the MSAA_SAMPLES constant.
The transparency bug has been fixed thanks to a hot tip from the folks in the wgpu matrix channel - I had failed to specify both the color blend and alpha blend descriptions correctly! Transparency now behaves as expected all round. I've also added the missing image support, fixed the resizing bug and enabled MSAA in the example. This PR should be ready to go! Edit: added some |
This was referenced Feb 13, 2020
mitchmindtree
added a commit
to mitchmindtree/conrod
that referenced
this pull request
Mar 3, 2020
This version adds two new backends! - `conrod_rendy` providing a custom graphics pipeline for rendering UIs. PistonDevelopers#1323. - `conrod_wgpu` for encoding UI rendering to a given command encoder. PistonDevelopers#1331. Also includes some other changes: - A `Display` trait has been added to `conrod_glium` to allow for non-`glutin` opengl context displays. PistonDevelopers#1332. - Adds a `ui.has_changed()` method, useful for indicating whether or not `ui.draw_if_changed()` would return `Some` or `None`. PistonDevelopers#1324. - Updates some dependencies across all backends PistonDevelopers#1321. This PR also fixes some warnings introduced on recent versions of rustc within the `conrod_derive` and `conrod_core` crates.
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Just about everything should be implemented other than images, resizing,
and perhaps a MSAA resolve in the example. These shouldn't be tricky to
add, I'll do so soon before merging this PR. Edit: This is all done now.
Everything went very smoothly, other than the alpha channel written by
the fragment shader seemingly being ignored. At first I though something
must be wrong with the way I was sampling alpha values from the glyph
cache, however even if I manually set the alpha to 0.0 (and ignore the
glyph cache texture sampling entirely) the text still renders as white
rectangles. Will look into this further next time I get the chance if
noone beats me to it. I'm sure I'm probably just missing a flag or bool
somewhere.
cc @DavidPartouche @freesig
This also includes an update to
conrod_winit
to support winit 0.21 via anew
v021
module.Transparency bug
Here's what the output looks like:
Here's what it should look like: