rust-skia
femtovg
rust-skia | femtovg | |
---|---|---|
7 | 32 | |
1,326 | 745 | |
2.5% | 0.9% | |
9.4 | 7.8 | |
5 days ago | 20 days ago | |
Rust | Rust | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust-skia
-
Integrate with Skia GL
The only example that shedded some light on the integration was gtk4 + femtovg. So I mimicked the example, using gtk4-rs and Skia's rust bindings. I had some code similar to the following inside a subclass of GLArea to setup Skia's DirectContext, but it failed:
-
A simple 2d graphic library
Checkout rust-skia.
-
Recommended UI framework to draw many 2D lines?
Skia (https://github.com/rust-skia/rust-skia) which I think does a mix of software and gpu rendering
-
Dioxus: User interfaces that run anywhere
I‘d probably look into Skia first, it also drives Flutter. https://github.com/rust-skia/rust-skia
- Add WebAssembly support to skia-rust
-
Most effective way to be ready for 2D graphics?
I have been looking around for a suitable vector graphics library to use. My short list is: skia-safe, skulpin, nannou, and cairo.
-
Question: Rust as centralized place for platfor and framework agnostic business logic. Is this possible?
Flutter uses skia which implements a common API for all these GPU rendering backends. Maybe rust-skia is a good fit for your needs, but be prepared to lose lot of the time you saved by using a single codebase into coding your common UI framework :P
femtovg
-
Recommended UI framework to draw many 2D lines?
Femtovg (https://github.com/femtovg/femtovg) which uses OpenGL to render
-
tinydraw 0.1.1
Congrats! I don't want to diminish the accomplishment, but have you seen femtovg? It seems like it's probably well-aligned with your needs.
-
Bevy vector graphics library?
I'm currently using femtovg for vector graphics in my games, and I would like to get into bevy by porting one of my game prototypes using it to bevy.
-
Decision paralysis: ggez or macroquad
I use femtovg It's a simple vector graphics engine having all the important features you probably want from a 2D rendering engine: simple shapes, images, text
-
femtovg VS lyon - a user suggested alternative
2 projects | 21 May 2022
-
Keeping POWER relevant in the open source world
https://github.com/femtovg/femtovg/pull/5
Before Power10 was done, IBM actually asked us Raptor users about proposals for useful machine code instructions to add to it. I replied that I’d like to have hardware UTF-8 de-/encoding but they wanted a more detailed proposal and I never got around to write it. I’m not even sure that this would be worthwhile, but I see UTF-8 de-/encoding everywhere in the code I write and would like it to approach memory read/write speeds.
I was very disappointed to learn that they had gone more proprietary with Power10 so I would not have been able to use those instructions anyway. What a pity!
-
How to use a Rust WebAssembly module in Svelte with Web Workers
In my actual code, I'm using a library called femtovg that is a Rust port of a C library for 2D rendering. But In the blog post I kept the example simple to keep it relevant for people who might want to use Web Workers + WASM for other things; didn't want to get hung up on femtovg for someone who had never heard of it. As you say, if you all you need to do is basic 2D manipulations of a canvas that are supported by the native API, then you likely don't need WASM.
-
Iced: A cross-platform GUI library for Rust, inspired by Elm
You guys should also check out the femtovg project, a 2D rendering API that sixty fps relies on.
https://github.com/femtovg/femtovg
It's a decent starting point for trying to build your own toolkit.
I have recently added a wgpu backend but for now it lives in my fork https://github.com/adamnemecek/femtovg
run the demo with `cargo run --example wgpu_demo --release`.
Also join the femtovg discord https://discord.gg/V69VdVu
-
Any recommended resources for beginning graphics with Rust
I'm involved with the femtovg project. We are definitely looking for contributors. Join the discord channel.
-
Good GUI toolkit/library recommendations needed
It's not a GUI framework but I'm involved with this project called femtovg, it's a Rust nanovg port. I've recently added a wgpu backend. Run the demo with cargo run --example wgpu_demo --release. Some people have been using it for their own UIs, e.g. tuix. I think that you should consider rolling your own GUI toolkit, it's not that bad and you'll appreciate the control.
What are some alternatives?
nannou - A Creative Coding Framework for Rust.
glium - Safe OpenGL wrapper for the Rust language.
filament - Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2
Typesense - Open Source alternative to Algolia + Pinecone and an Easier-to-Use alternative to ElasticSearch ⚡ 🔍 ✨ Fast, typo tolerant, in-memory fuzzy Search Engine for building delightful search experiences
vulkan-tutorial-rs - Vulkan tutorial written in Rust using Ash
gdnative - Rust bindings for Godot 3
Skity - A light weight 2D Vector Graphic renderer library writing in c++ for OpenGL3.3+ / OpenGLES3.0+ / Vulkan 1.1+/ WebGL2 with WASM
Slint - Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript. [Moved to: https://github.com/slint-ui/slint]
canvas - High performance skia binding to Node.js. Zero system dependencies and pure npm packages without any postinstall scripts nor node-gyp.
NanoGUI - Minimalistic GUI library for OpenGL
skulpin - Skia + Vulkan = Skulpin
nuklear - A single-header ANSI C immediate mode cross-platform GUI library