1
0
Fork 0
forked from wry/wry

wayland: implement alpha_modifier_v1

This commit is contained in:
Julian Orth 2024-03-18 19:18:30 +01:00
parent 131f0481e8
commit ff54a8ab96
37 changed files with 655 additions and 89 deletions

View file

@ -9,6 +9,10 @@ pub const FILL_VERT: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/fill.vert
pub const FILL_FRAG: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/fill.frag.spv"));
pub const TEX_VERT: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/tex.vert.spv"));
pub const TEX_FRAG: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/tex.frag.spv"));
pub const TEX_FRAG_MULT_OPAQUE: &[u8] =
include_bytes!(concat!(env!("OUT_DIR"), "/tex.frag.mult+opaque.spv"));
pub const TEX_FRAG_MULT_ALPHA: &[u8] =
include_bytes!(concat!(env!("OUT_DIR"), "/tex.frag.mult+alpha.spv"));
pub struct VulkanShader {
pub(super) device: Rc<VulkanDevice>,
@ -38,7 +42,14 @@ pub struct TexVertPushConstants {
pub tex_pos: [[f32; 2]; 4],
}
#[derive(Copy, Clone, Debug)]
#[repr(C)]
pub struct TexFragPushConstants {
pub alpha: f32,
}
unsafe impl Packed for TexVertPushConstants {}
unsafe impl Packed for TexFragPushConstants {}
impl VulkanDevice {
pub(super) fn create_shader(