Changes since version 0.10.4
Major update
- switch to Venus protocol version 1.0.0
- drop experimental tag from Venus configuration flag and update API
- Improve win32 support
- Support passing fences from guest to host for waiting
and inter-context fence sharing/syncing
New features
Venus
add support for
- VK_EXT_border_color_swizzle
- VK_EXT_color_write_enable
- VK_EXT_dynamic_rendering_unused_attachments
- VK_EXT_fragment_shader_interlock
- VK_EXT_image_2d_view_of_3d
- VK_EXT_memory_budget
- VK_EXT_mutable_descriptor_type
- VK_EXT_non_seamless_cube_map
- VK_EXT_pci_bus_info
- VK_EXT_shader_subgroup_ballot
- VK_EXT_vertex_input_dynamic_state
- VK_KHR_push_descriptor
- VK_KHR_shader_clock
- VK_KHR_synchronization2
- VK_EXT_border_color_swizzle
Enable render server by default for Venus
Virgl
On hosts supporting OpenGL 4.6 the guest can now also support OpenGL 4.6.
- Add support for
- EXT_texture_shadow_lod
- EXT_texture_sRGB_rg8
- AMD_vertex_shader_viewport_index
- ARB_draw_parameters
- ARB_shader_group_vote
- EXT_texture_shadow_lod
- Enable noperspective interpolation on GLES if the host supports it
- Emit GL_BUFFER_UPDATE_BARRIER_BIT and GL_TEXTURE_UPDATE_BARRIER_BIT when needed
- Fix handling of images when used in various shader stages
Video
- Add support for H.264, H.265 encoding
- Add support for AV1, hevc10bit, vc1, jpeg, and mpeg2 decoding
Further changes
- lots of security fixes that were unearthed by fuzzing
- Improve code quality based on Coverity testing
For detailed changes please take a look at the git log.