Bevy's WindowPlugin allows passing a present_mode flag to control wgpu's presentation or flip mode for the display surface. This is originally read and applied in the internals of bevy's own renderer.
We should respect this flag and apply it when creating the Pixels instance (which does the wgpu handling internally). This is achieved by using the PixelsBuilder instead of the Pixels::new() function and setting the requested present_mode with the PixelsBuilder::present_mode() function.
Ideally, we would detect changes to this field as well and then request pixels to update the present_mode. This is currently not possible with version 0.13, but https://github.com/parasyte/pixels/pull/373 added a new setter on the Pixels instance that would allow exactly this. I expect this to land in the next release of pixels.
Bevy's WindowPlugin allows passing a
present_mode
flag to control wgpu's presentation or flip mode for the display surface. This is originally read and applied in the internals of bevy's own renderer.We should respect this flag and apply it when creating the
Pixels
instance (which does the wgpu handling internally). This is achieved by using thePixelsBuilder
instead of thePixels::new()
function and setting the requestedpresent_mode
with thePixelsBuilder::present_mode()
function.Ideally, we would detect changes to this field as well and then request pixels to update the present_mode. This is currently not possible with version
0.13
, but https://github.com/parasyte/pixels/pull/373 added a new setter on thePixels
instance that would allow exactly this. I expect this to land in the next release of pixels.