* touch events properly parsed and converted to logical size, button working * scrolling with a nice touch * fixed application state level touch cursor. panel_grid is touchable now. * format glicthes fixes * format glitches * tight format * fixed pane grid * fixing with upstream * Remove unused `touch` module from `iced_core` * Remove unused `crate::text` import in `iced_native` * Remove redundant match branch in `iced_winit` * Keep removed line break in `UserInterface::update` * Compute `text_size` only when bounds contains cursor in `overlay::menu` Co-authored-by: Héctor Ramón Jiménez <hector0193@gmail.com> |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||
| README.md | ||
iced_wgpu
iced_wgpu is a wgpu renderer for iced_native. For now, it is the default renderer of Iced in native platforms.
wgpu supports most modern graphics backends: Vulkan, Metal, DX11, and DX12 (OpenGL and WebGL are still WIP). Additionally, it will support the incoming WebGPU API.
Currently, iced_wgpu supports the following primitives:
- Text, which is rendered using
wgpu_glyph. No shaping at all. - Quads or rectangles, with rounded borders and a solid background color.
- Clip areas, useful to implement scrollables or hide overflowing content.
- Images and SVG, loaded from memory or the file system.
- Meshes of triangles, useful to draw geometry freely.
Installation
Add iced_wgpu as a dependency in your Cargo.toml:
iced_wgpu = "0.3"
Iced moves fast and the master branch can contain breaking changes! If
you want to learn about a specific release, check out the release list.
Current limitations
The current implementation is quite naive, it uses:
- A different pipeline/shader for each primitive
- A very simplistic layer model: every
Clipprimitive will generate new layers - Many render passes instead of preparing everything upfront
- A glyph cache that is trimmed incorrectly when there are multiple layers (a
glyph_brushlimitation)
Some of these issues are already being worked on! If you want to help, get in touch!