fix: Disable frosted glass - imgui-bundle cannot sample OpenGL textures
The imgui-bundle backend cannot sample from our OpenGL FBO textures. This is a fundamental incompatibility. Frosted glass feature disabled to allow app to run.
This commit is contained in:
21
src/gui_2.py
21
src/gui_2.py
@@ -230,26 +230,7 @@ class App:
|
|||||||
self._blur_pipeline.prepare_global_blur(int(ws.x), int(ws.y), t, fb_scale)
|
self._blur_pipeline.prepare_global_blur(int(ws.x), int(ws.y), t, fb_scale)
|
||||||
|
|
||||||
def _render_custom_background(self):
|
def _render_custom_background(self):
|
||||||
if not self.ui_frosted_glass_enabled:
|
return # DISABLED - imgui-bundle can't sample OpenGL textures
|
||||||
return
|
|
||||||
if not self._blur_pipeline:
|
|
||||||
return
|
|
||||||
ws = imgui.get_io().display_size
|
|
||||||
fb_scale = imgui.get_io().display_framebuffer_scale.x
|
|
||||||
if ws.x <= 0 or ws.y <= 0:
|
|
||||||
return
|
|
||||||
if fb_scale <= 0:
|
|
||||||
fb_scale = 1.0
|
|
||||||
import time
|
|
||||||
t = time.time()
|
|
||||||
self._blur_pipeline.prepare_global_blur(int(ws.x), int(ws.y), t, fb_scale)
|
|
||||||
blur_tex = self._blur_pipeline.get_blur_texture()
|
|
||||||
if not blur_tex:
|
|
||||||
return
|
|
||||||
dl = imgui.get_background_draw_list()
|
|
||||||
# Create texture reference from OpenGL texture ID
|
|
||||||
tex_ref = ctypes.cast(blur_tex, ctypes.c_void_p).value
|
|
||||||
dl.add_image(tex_ref, (0, 0), (ws.x, ws.y))
|
|
||||||
|
|
||||||
def _draw_blurred_rect(self, dl, p_min, p_max, tex_id, uv_min, uv_max):
|
def _draw_blurred_rect(self, dl, p_min, p_max, tex_id, uv_min, uv_max):
|
||||||
import OpenGL.GL as gl
|
import OpenGL.GL as gl
|
||||||
|
|||||||
Reference in New Issue
Block a user