22 releases (14 breaking)

0.15.0 Dec 2, 2024
0.14.1 Dec 12, 2023
0.14.0-alpha Sep 8, 2023
0.13.0 Feb 28, 2023
0.1.0 Dec 22, 2019

#124 in GUI

Download history 82/week @ 2024-09-23 3/week @ 2024-10-14 142/week @ 2024-12-02

142 downloads per month
Used in 2 crates

Apache-2.0

1MB
19K SLoC

KAS WGPU

KAS graphics backend over wgpu.

Compiling shaders

This library uses GLSL shaders. Pre-compiled SPIR-V modules are distributed so that users do not need a shader compiler.

For working on GLSL shaders, a compiler such as glslc (part of the shaderc project) is required. glslc can be installed from Fedora packages, but on other platforms manual installation may be required. Alternatively a web-based tool such as glslang.js may be used.

Automatic re-compilation may be enabled by setting e.g. SHADERC=glslc. See build.rs for details.

Optional features

This crate has the following feature flags:

  • raster (enabled by default): use [kas-text]'s default backend for glyph rastering (alternatively, specify kas-text/ab_glyph or kas-text/fontdue)
  • shaping (enabled by default): use [kas-text]'s default backend (Rustybuzz) for text shaping (alternatively, specify kas-text/harfbuzz or do not use shaping)

Note: at least one of ab_glyph, fontdue is required. If both are enabled, the choice of raster engine is controlled at run-time via theme configuration:

  • mode = 0: use ab_glyph
  • mode = 1: use ab_glyph and align glyphs to side-bearing
  • mode = 2: use fontdue

The COPYRIGHT file includes a list of contributors who claim copyright on this project. This list may be incomplete; new contributors may optionally add themselves to this list.

The KAS library is published under the terms of the Apache License, Version 2.0. You may obtain a copy of this licence from the LICENSE file or on the following webpage: https://www.apache.org/licenses/LICENSE-2.0

Dependencies

~17–47MB
~775K SLoC