Text Renderer written in Rust using HarfBuzz for shaping, FreeType for rasterization and OpenGL for rendering.

Overview

Provok

Text Renderer written in Rust using HarfBuzz for shaping, FreeType for rasterization and OpenGL for rendering.

Input

Provok is fed with a JSON file that consists of an array of word alongside their display parameters (fg_color, boldness, italic, etc.):

{
    "font_size": 50,
    "words": [
        {
            "text": "\"PROVOK\"",
            "canvas_color": "#D8E3F0",
            "fg_color": "#D8E3F0",
            "bg_color": "#15203E",
            "bold": true
        },
...
}

How To Use

First, you need to have installed the Rust toolchain and HarfBuzz on your machine, then:

git clone https://github.com/o2sh/provok --depth=1
cd provok 
make install
provok

You can also provide your own custom input file with the --input CLI flag:

provok -i /path/to/input-file
You might also like...
Sdf 2d shape renderer for Bevy
Sdf 2d shape renderer for Bevy

bevy_smud Sdf 2d shape rendering for Bevy. Bevy smud is a way to conveniently construct and render sdf shapes with Bevy. Given a shape function/expres

Renderer-agnostic toolkit for Indie Game Developers

Indie Toolkit Renderer-agnostic toolkit for Indie Game Developers Features Not yet implemented: app_kit debug_kit input_kit asset_kit audio_kit Implem

grr and rust-gpu pbr rendering
grr and rust-gpu pbr rendering

grr-gltf Barebone gltf viewer using grr and rust-gpu. Currently only supports a single gltf model! Assets These files need to be downloaded and placed

Vulkan and Rust rendering~game engine which creation is covered with YouTube videos

Vulkan and Rust rendering~game engine which creation is covered with YouTube videos

A 3D modeling and rendering programming language utilizing SDFs.
A 3D modeling and rendering programming language utilizing SDFs.

ForgedThoughts is a modeling and rendering programming language utilizing SDFs and is in early development. For documentation and examples see the Web

Collection of rust crates providing rendering abstractions.

render-rs License Licensed under either of Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) MIT license (LIC

Cross platform rendering in Rust
Cross platform rendering in Rust

Miniquad Miniquad is a manifestation of a dream in a world where we do not need a deep dependencies tree and thousands lines of code to draw things wi

Vulkan rendering sandbox for raytracing
Vulkan rendering sandbox for raytracing

sol-rs ☀ sol-rs is a small rendering toolkit for Vulkan, with a focus on real-time raytracing (which is not currently available via other APIs such as

A tilemap rendering crate for bevy which is more ECS friendly.
A tilemap rendering crate for bevy which is more ECS friendly.

bevy_ecs_tilemap A tilemap rendering plugin for bevy which is more ECS friendly by having an entity per tile. Features A tile per entity Fast renderin

Comments
  • Make install fail

    Make install fail

    Not sure if this has something to do with my Ubuntu install but here is the error message I am getting:

    [] ~/Programs/provok

    ✗ make install cargo build --release Compiling provok v0.1.0 (/home/goku/Programs/provok) error: linking with cc failed: exit code: 1 | = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-Wl,--eh-frame-hdr" "-L" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.0.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.1.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.10.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.11.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.12.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.13.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.14.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.15.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.2.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.3.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.4.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.5.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.6.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.7.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.8.rcgu.o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.9.rcgu.o" "-o" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c" "/home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.2i1tlap3n127qpe8.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs" "-L" "/home/goku/Programs/provok/target/release/deps" "-L" "/usr/lib/x86_64-linux-gnu" "-L" "/home/goku/Programs/provok/target/release/build/harfbuzz-sys-3f02194fa742d47a/out" "-L" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/goku/Programs/provok/target/release/deps/libserde_json-7b8db0c48a777e68.rlib" "/home/goku/Programs/provok/target/release/deps/libryu-8d3adba72655c18e.rlib" "/home/goku/Programs/provok/target/release/deps/libitoa-20dbd03a09e73985.rlib" "/home/goku/Programs/provok/target/release/deps/libttf_parser-b3675e36308bdb1f.rlib" "/home/goku/Programs/provok/target/release/deps/libeuclid-5b3bd763211c1d37.rlib" "/home/goku/Programs/provok/target/release/deps/libharfbuzz_sys-defac85b8605acf9.rlib" "/home/goku/Programs/provok/target/release/deps/libfreetype-700f43e775185dad.rlib" "/home/goku/Programs/provok/target/release/deps/libfreetype_sys-41348487f23312f6.rlib" "/home/goku/Programs/provok/target/release/deps/libserde-bed8adcfc49372ae.rlib" "/home/goku/Programs/provok/target/release/deps/libpalette-7bd53581ee1b150b.rlib" "/home/goku/Programs/provok/target/release/deps/libphf-7a6288ad1db4b8ce.rlib" "/home/goku/Programs/provok/target/release/deps/libphf_shared-9f4ea193894f7c58.rlib" "/home/goku/Programs/provok/target/release/deps/libsiphasher-fc9b34c771a5f939.rlib" "/home/goku/Programs/provok/target/release/deps/libapprox-6f21b4d27179d7d2.rlib" "/home/goku/Programs/provok/target/release/deps/libnum_traits-76497a4d2bc29446.rlib" "/home/goku/Programs/provok/target/release/deps/libclap-75ffc4e4161bdcd8.rlib" "/home/goku/Programs/provok/target/release/deps/libvec_map-7710e0aa1820f58b.rlib" "/home/goku/Programs/provok/target/release/deps/libtextwrap-af767440c987ca23.rlib" "/home/goku/Programs/provok/target/release/deps/libunicode_width-b8b37d5da2aa8f4a.rlib" "/home/goku/Programs/provok/target/release/deps/libstrsim-be518b8b7cca0422.rlib" "/home/goku/Programs/provok/target/release/deps/libatty-1dd903dbf50fd55b.rlib" "/home/goku/Programs/provok/target/release/deps/libansi_term-8403b5b7bcdb97e5.rlib" "/home/goku/Programs/provok/target/release/deps/libfailure-32ef14bc03e4ef86.rlib" "/home/goku/Programs/provok/target/release/deps/libglium-2d3d1b2ac08f3e63.rlib" "/home/goku/Programs/provok/target/release/deps/libbacktrace-8e20e6498ee14172.rlib" "/home/goku/Programs/provok/target/release/deps/libminiz_oxide-ae5f950f1808e1a2.rlib" "/home/goku/Programs/provok/target/release/deps/libadler-dd8d1d7a27bd42ae.rlib" "/home/goku/Programs/provok/target/release/deps/libobject-e8abed7a446e8066.rlib" "/home/goku/Programs/provok/target/release/deps/libaddr2line-5f7f466dee2da14b.rlib" "/home/goku/Programs/provok/target/release/deps/libgimli-d0db3d8fb158fc5a.rlib" "/home/goku/Programs/provok/target/release/deps/librustc_demangle-52c7d6c4fc90a912.rlib" "/home/goku/Programs/provok/target/release/deps/libmemoffset-011b24de92813b8a.rlib" "/home/goku/Programs/provok/target/release/deps/libtakeable_option-efa82f1f6dab3546.rlib" "/home/goku/Programs/provok/target/release/deps/libglutin-65ae796790eb6cae.rlib" "/home/goku/Programs/provok/target/release/deps/libwayland_egl-c092b41a3ede93a1.rlib" "/home/goku/Programs/provok/target/release/deps/libosmesa_sys-6d901980f1072195.rlib" "/home/goku/Programs/provok/target/release/deps/libshared_library-590e45c745d28542.rlib" "/home/goku/Programs/provok/target/release/deps/libwinit-266ca184e95815cd.rlib" "/home/goku/Programs/provok/target/release/deps/libmio_extras-8cdf33527bfaa748.rlib" "/home/goku/Programs/provok/target/release/deps/libmio-cae513901481b818.rlib" "/home/goku/Programs/provok/target/release/deps/libslab-7c378fecdd145a1f.rlib" "/home/goku/Programs/provok/target/release/deps/libiovec-00087cb6ac5f0e3d.rlib" "/home/goku/Programs/provok/target/release/deps/libnet2-3d6abda150f36f93.rlib" "/home/goku/Programs/provok/target/release/deps/liblazycell-9b9b292d449abec0.rlib" "/home/goku/Programs/provok/target/release/deps/libpercent_encoding-b156c77573f89cf5.rlib" "/home/goku/Programs/provok/target/release/deps/libsmithay_client_toolkit-d4c320ba081ebdac.rlib" "/home/goku/Programs/provok/target/release/deps/libandrew-9c6671f94655664f.rlib" "/home/goku/Programs/provok/target/release/deps/libxml-95ef26f620db547d.rlib" "/home/goku/Programs/provok/target/release/deps/libxdg-b8ff5ad2fb8fc313.rlib" "/home/goku/Programs/provok/target/release/deps/libwalkdir-41b4430d5b9d242b.rlib" "/home/goku/Programs/provok/target/release/deps/libsame_file-a07a72097e6c1124.rlib" "/home/goku/Programs/provok/target/release/deps/librusttype-0230aaf735eec52c.rlib" "/home/goku/Programs/provok/target/release/deps/libab_glyph_rasterizer-a8becb297cb6329f.rlib" "/home/goku/Programs/provok/target/release/deps/libowned_ttf_parser-d957499d1b39e9c4.rlib" "/home/goku/Programs/provok/target/release/deps/libttf_parser-7d160fd5742aeb24.rlib" "/home/goku/Programs/provok/target/release/deps/libwayland_cursor-c32f6838d060d276.rlib" "/home/goku/Programs/provok/target/release/deps/libxcursor-c7d2da2812b00dc9.rlib" "/home/goku/Programs/provok/target/release/deps/libnom-af011b6e6e7c2793.rlib" "/home/goku/Programs/provok/target/release/deps/libmemchr-6604bfb2160b8b24.rlib" "/home/goku/Programs/provok/target/release/deps/libmemmap2-5ac4d864528d130f.rlib" "/home/goku/Programs/provok/target/release/deps/libwayland_protocols-959e3f5ab5259d19.rlib" "/home/goku/Programs/provok/target/release/deps/libwayland_client-9ba37e5cf9d3e7ff.rlib" "/home/goku/Programs/provok/target/release/deps/libscoped_tls-325e20ef67f3a77e.rlib" "/home/goku/Programs/provok/target/release/deps/libwayland_commons-105d3605d2fc62b4.rlib" "/home/goku/Programs/provok/target/release/deps/libonce_cell-df7961e3e4cf3887.rlib" "/home/goku/Programs/provok/target/release/deps/libnix-9e8e2d5311dcca9a.rlib" "/home/goku/Programs/provok/target/release/deps/libwayland_sys-640c8c19939b7f9b.rlib" "/home/goku/Programs/provok/target/release/deps/libdlib-9b247eaa33d057f3.rlib" "/home/goku/Programs/provok/target/release/deps/liblibloading-6ce83f6c29d11a52.rlib" "/home/goku/Programs/provok/target/release/deps/libcalloop-ed4da5e032615079.rlib" "/home/goku/Programs/provok/target/release/deps/libnix-a852735c3093b7f6.rlib" "/home/goku/Programs/provok/target/release/deps/libcfg_if-6f3ad86205136786.rlib" "/home/goku/Programs/provok/target/release/deps/libdlib-45f2876b0eb63b19.rlib" "/home/goku/Programs/provok/target/release/deps/liblibloading-bd8d267b700561d4.rlib" "/home/goku/Programs/provok/target/release/deps/libraw_window_handle-996ead8d3f4d1122.rlib" "/home/goku/Programs/provok/target/release/deps/libparking_lot-ec8a45e1e6793e72.rlib" "/home/goku/Programs/provok/target/release/deps/libparking_lot_core-098d2eccfd774e43.rlib" "/home/goku/Programs/provok/target/release/deps/libsmallvec-dac38cb5d4c05e30.rlib" "/home/goku/Programs/provok/target/release/deps/liblock_api-15c92925ce66fe3f.rlib" "/home/goku/Programs/provok/target/release/deps/libscopeguard-e3010b47504e0224.rlib" "/home/goku/Programs/provok/target/release/deps/libinstant-41dd51f7c4e1661f.rlib" "/home/goku/Programs/provok/target/release/deps/libbitflags-5624065210ca120e.rlib" "/home/goku/Programs/provok/target/release/deps/libglutin_glx_sys-57c76da4fcfce488.rlib" "/home/goku/Programs/provok/target/release/deps/libx11_dl-4a4f5f4464d89ce7.rlib" "/home/goku/Programs/provok/target/release/deps/libmaybe_uninit-1700b8055919331a.rlib" "/home/goku/Programs/provok/target/release/deps/liblibc-393f1cefa144c9c3.rlib" "/home/goku/Programs/provok/target/release/deps/libglutin_egl_sys-6905be5ca2ebaf69.rlib" "/home/goku/Programs/provok/target/release/deps/liblog-26151b12ef260e13.rlib" "/home/goku/Programs/provok/target/release/deps/libcfg_if-0b1d0733c6ac953a.rlib" "/home/goku/Programs/provok/target/release/deps/libfnv-c8b023d9950bf602.rlib" "/home/goku/Programs/provok/target/release/deps/liblazy_static-1b6ec6226bff81a2.rlib" "-Wl,--start-group" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-b1047a2788193be4.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-e8e399e2092f3b2a.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-c6b02b522c91c060.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-eaad965909c4200f.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-dca728ac8ed54d87.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-4b4efaa8c4601753.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-d36e07ed2cc56ee4.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-3855d04b1bb40ceb.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-58a065cdff5508a2.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-82aeeedcc8d1450a.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-5c4d6c9d7595f844.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-2642d2bccc00517a.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-760e48b3f782e7f5.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-d4ef8bf89076ed01.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-36070e2029bb21ea.rlib" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-3aaf8f932781f33e.rlib" "-Wl,--end-group" "/home/goku/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-e2523c360f03ba10.rlib" "-Wl,-Bdynamic" "-lstdc++" "-lfreetype" "-ldl" "-ldl" "-ldl" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" = note: /usr/bin/ld: /home/goku/Programs/provok/target/release/deps/provok-5f4099590c69632c.provok.3i622bfx-cgu.15.rcgu.o: in function provok::font::FontConfiguration::get_font': provok.3i622bfx-cgu.15:(.text._ZN6provok4font17FontConfiguration8get_font17hc9f8f19eba00801bE+0x7e7): undefined reference tohb_ft_font_create_referenced' /usr/bin/ld: provok.3i622bfx-cgu.15:(.text._ZN6provok4font17FontConfiguration8get_font17hc9f8f19eba00801bE+0x7f5): undefined reference to `hb_ft_font_set_load_flags' collect2: error: ld returned 1 exit status

    error: aborting due to previous error

    error: could not compile provok

    To learn more, run the command again with --verbose. make: *** [Makefile:2: build] Error 101

    opened by mdatz 2
  • fix: filter out None values

    fix: filter out None values

    Loading fonts, which are JetBrains fonts in assets, would lead to panic. There are duplicate items with same name_id() return by face.names() which would cause find() to always find the first value which may resolved to None.

    thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src/font/loader/parser.rs:75:14
    

    Filter out all None names should be a solution.

    opened by tizee 0
  • cargo build occur error

    cargo build occur error

    when I run make install occur error:

    error: linking with `cc` failed: exit code: 1
      |
      = note: "cc" "-m64" "-arch" "x86_64" "-L" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib" 
    ......
    9225b8e469c32698.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-2fe2b8cd4fa63c34.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libobject-80083cf4ee7ee3ff.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libaddr2line-ddf3832e718029e6.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgimli-ba92c986e8ef2ca8.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/librustc_demangle-acd0bd456d8da820.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libhashbrown-55608c4156e4ecbb.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_alloc-4be618026614fdc7.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libunwind-fee25922260aa100.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcfg_if-38ba3c5cc408e14d.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liblibc-899852a009fbe35f.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-5687564a0ccea916.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_core-9ed2c58b16cff4ee.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-244bf5611f93ff45.rlib" "/Users/bytedance/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-70df686e6b4ebf5b.rlib" "-lc++" "-framework" "CoreText" "-framework" "CoreText" "-framework" "CoreText" "-framework" "CoreText" "-framework" "CoreText" "-lfreetype" "-framework" "AppKit" "-framework" "AppKit" "-framework" "QuartzCore" "-framework" "OpenGL" "-framework" "CoreGraphics" "-framework" "CoreFoundation" "-lSystem" "-framework" "CoreVideo" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreFoundation" "-framework" "AppKit" "-framework" "AppKit" "-framework" "QuartzCore" "-framework" "Foundation" "-framework" "Foundation" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreGraphics" "-framework" "CoreFoundation" "-lSystem" "-lobjc" "-liconv" "-lSystem" "-lresolv" "-lc" "-lm" "-liconv"
      = note: Undefined symbols for architecture x86_64:
                "_hb_ft_font_create_referenced", referenced from:
                    provok::font::hbwrap::Font::new::hf1dda8deaf9c36e6 in provok.provok.57my01qi-cgu.13.rcgu.o
              ld: symbol(s) not found for architecture x86_64
              clang: error: linker command failed with exit code 1 (use -v to see invocation)
              
    
    error: aborting due to previous error
    
    error: could not compile `provok`
    

    system_profiler:

    Hardware Overview:
    
          Model Name: MacBook Pro
          Model Identifier: MacBookPro16,1
          Processor Name: 6-Core Intel Core i7
          Processor Speed: 2.6 GHz
          Number of Processors: 1
          Total Number of Cores: 6
          L2 Cache (per Core): 256 KB
          L3 Cache: 12 MB
          Hyper-Threading Technology: Enabled
          Memory: 32 GB
          Boot ROM Version: 1037.147.4.0.0 (iBridge: 17.16.16610.0.0,0)
          Serial Number (system): C02D569KMD6R
          Activation Lock Status: Disabled
    
    opened by defpis 2
Releases(v0.1.0)
Owner
Ossama Hjaji
Ossama Hjaji
🦅🦁 Fast, simple 2D text renderer for wgpu

?? glyphon ?? Fast, simple 2D text rendering for wgpu What is this? This crate provides a simple way to render 2D text with wgpu by: rasterizing glyph

Josh Groves 60 Nov 5, 2022
A low-level library for OpenGL context creation, written in pure Rust.

glutin - OpenGL, UTilities and INput A low-level library for OpenGL context creation, written in pure Rust. [dependencies] glutin = "0.28.0" Documenta

Rust Windowing 1.8k Jan 5, 2023
A low-level library for OpenGL context creation, written in pure Rust.

glutin - OpenGL, UTilities and INput A low-level library for OpenGL context creation, written in pure Rust. [dependencies] glutin = "0.28.0" Documenta

Rust Windowing 1.8k Dec 25, 2022
Bindings to TinyGL, a Small, Free and Fast Subset of OpenGL

TinyGL is a very lightweight partial OpenGL implementation. Its small size makes it ideal for static linking.

null 12 Oct 13, 2022
Proof-of-concept of getting OpenXR rendering support for Bevy game engine using gfx-rs abstractions

Introduction Proof-of-concept of getting OpenXR rendering support for Bevy game engine using gfx-rs abstractions. (hand interaction with boxes missing

Mika 52 Nov 14, 2022
Self Study on developing a game engine using wgpu as the rendering API. Learning as I go.

Fabled Engine Any issues, enhancement, features, or bugs report are always welcome in Issues. The obj branch is where frequent development and up to d

Khalid 20 Jan 5, 2023
Pixel-Perfect, 2D Renderer for Bevy that Seamlessly Targets Desktop and Web

bevy_retro ( Screenshot of Bounty Bros. game made with Bevy Retro and Skip'n Go ) Bevy Retro is a 2D, pixel-perfect renderer for Bevy that can target

Katharos Technology 224 Dec 23, 2022
A high-performance renderer to render glTF models that use the `KHR_materials_transmission` and `KHR_materials_volume` extensions.

This is a high-performance renderer designed among other things to render glTF models that use the KHR_materials_transmission and KHR_materials_volume

Ashley 21 Dec 5, 2022
Rust-based replacement for the default Minecraft renderer

wgpu-mc ?? A blazing fast alternative renderer for Minecraft Intro WebGPU is a new web specification designed to provide modern graphics and compute c

Birb 1 Jun 28, 2022
A plugin to use the kajiya renderer with bevy

??️ ?? bevy-kajiya A plugin that enables use of the kajiya renderer in bevy WARNING: This plugin is barebones and supports a limited set of features.

Sebastian Hamel 79 Jan 5, 2023