overflow: hidden/scroll scissor support, remove depth

This commit is contained in:
Aleksander
2025-09-25 23:21:11 +02:00
parent 8f75d451e4
commit eb12a6a319
28 changed files with 299 additions and 182 deletions

View File

@@ -9,7 +9,7 @@ use std::{
},
};
use wgui::gfx::{WGfx, pass::WGfxPass, pipeline::WGfxPipeline};
use wgui::gfx::{WGfx, cmd::WGfxClearMode, pass::WGfxPass, pipeline::WGfxPipeline};
use crate::{
backend::openxr::helpers,
@@ -71,6 +71,7 @@ impl LinePool {
0..4,
0..1,
vec![set0],
&Default::default(),
)?;
Ok(Self {
@@ -161,7 +162,7 @@ impl LinePool {
let mut cmd_buffer = app
.gfx
.create_gfx_command_buffer(CommandBufferUsage::OneTimeSubmit)?;
cmd_buffer.begin_rendering(tgt)?;
cmd_buffer.begin_rendering(tgt, WGfxClearMode::DontCare)?;
cmd_buffer.run_ref(&self.pass)?;
cmd_buffer.end_rendering()?;

View File

@@ -11,6 +11,7 @@ use vulkano::{
image::view::ImageView,
pipeline::graphics::{color_blend::AttachmentBlend, input_assembly::PrimitiveTopology},
};
use wgui::gfx::cmd::WGfxClearMode;
use crate::{
backend::openxr::{helpers::translation_rotation_to_posef, swapchain::SwapchainOpts},
@@ -112,12 +113,13 @@ impl Skybox {
0..4,
0..1,
vec![set0, set1],
&Default::default(),
)?;
let mut cmd_buffer = app
.gfx
.create_gfx_command_buffer(CommandBufferUsage::OneTimeSubmit)?;
cmd_buffer.begin_rendering(tgt)?;
cmd_buffer.begin_rendering(tgt, WGfxClearMode::DontCare)?;
cmd_buffer.run_ref(&pass)?;
cmd_buffer.end_rendering()?;
@@ -160,12 +162,13 @@ impl Skybox {
0..4,
0..1,
vec![],
&Default::default(),
)?;
let mut cmd_buffer = app
.gfx
.create_gfx_command_buffer(CommandBufferUsage::OneTimeSubmit)?;
cmd_buffer.begin_rendering(tgt)?;
cmd_buffer.begin_rendering(tgt, WGfxClearMode::Clear([0.0, 0.0, 0.0, 0.0]))?;
cmd_buffer.run_ref(&pass)?;
cmd_buffer.end_rendering()?;

View File

@@ -308,7 +308,7 @@ impl Display {
}
pub fn tick_render(&mut self, renderer: &mut GlesRenderer, time_ms: u64) -> anyhow::Result<()> {
renderer.bind(self.gles_texture.clone())?;
renderer.bind(&mut self.gles_texture)?;
let size = Size::from((i32::from(self.width), i32::from(self.height)));
let damage: Rectangle<i32, smithay::utils::Physical> = Rectangle::from_size(size);