Replies: 2 comments 2 replies
-
I think that perhaps we'd want to tackle this the other way around: Provided that you've set up a Vulkan surface, command buffers, queues, etc., we may want to provide a low-level API to render Slint into a texture that you can then integrate into your own rendering. This is basically tracked by #704. In practice right now this means it would only be possible with the Skia renderer, once #1546 is implemented. But I'm not entirely sure if we can safely share data structures with the application, or if it would be better to use indirect rendering first (at the expense of performance, yes). |
Beta Was this translation helpful? Give feedback.
-
Regarding #1546, from what I can tell, the change is from femtovg as the sole primitive renderer to Skia as well, right? And that will allow the primitives to be rendered onto a Vulkan surface at which point we'd take over? I could see that working but I think I am a bit wary of taking control of everything from the GUI framework. I see that working if we were doing a single visualization what would make up most of the GUI, but we'd really want to have dynamic creation/re-sizing of the Vk/wgpu surface widgets, and multiple instances of them, and all them being handled by slint. Also I assume in this situation we'd be dealing with winit in addition to slint, since we'd also be responsible for handling the event loop? This will still be your typical "large commercial application" with several menus, buttons and multiple windows. So we'd rather create our own widgets based on Vulkan/wgpu surface as child widgets, and we need them to behave like a typical widgets we can share for maximum flexibility in multiple development efforts. I will check out that option in more detail though, thank you for the direction! |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
We're in the early stages of evaluating possible Rust use for a GUI application that needs to render lots of signals in real-time. For this we'd need the GUI framework we choose to provide access to something akin to a Vulkan Surface or wgpu Surface. In essence, an equivalent to QVulkanWindow.
I saw #940 which asks about slint being overlaid on top of a wgpu context, but I guess this would be (kind of) the other way around.
Beta Was this translation helpful? Give feedback.
All reactions