inox2d
tiny-skia
inox2d | tiny-skia | |
---|---|---|
9 | 17 | |
180 | 1,016 | |
3.9% | - | |
8.9 | 6.6 | |
20 days ago | 19 days ago | |
Rust | Rust | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
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.
inox2d
-
What are you rewriting in rust?
I'm writing Inox2D, which is kind of a rewrite of Inochi2D in Rust. The aim is to reach more use-cases such as web with WASM and even potentially embedded development, but at the very least an implementation in a low-level non-garbage-collected language.
-
What's everyone working on this week (27/2023)?
Inox2D, an experimental native Rust implementation of Inochi2D.
-
What type of projects do you use Rust for?
inox2d - official experimental reimplementation of Inochi2D, an open-source alternative of Live2D for animating 2D puppets in various contexts such as games or vtubing. inox2d isn't really meant to be a replacement over the current implementation, but more of a complementary one that extends it's use-cases, for example embedded devices and web integration with WASM.
-
OpenGL crates: gl vs glow vs glium
Hey, I'm working on inox2d which uses glow.
-
Splitting a big struct impl into multiple files?
For example, I wouldn't want to separate this into multiple files, would make it harder to see where all the deserialization logic is.
-
More on OOP: Polymorphism this time
For example, I'm working on Inox2D, a reimplementation of Inochi2D in Rust.
-
"My Reaction to Dr. Stroustrup’s Recent Memory Safety Comments"
I absolutely get that. It was actually very clear in a project of mine. I work on inox2d which is a native implementation of Inochi2D in Rust (Inochi2D being a FOSS puppet animation system, like Live2D which is used by vtubers and light novel engines notably).
-
Is coding in Rust as bad as in C++? A practical comparison
For example, on my Inox2D project, I was using serde to deserialize some JSON payload. But that came with some hacks I had to do, like have a temporary struct that gets converted to the final one because it wasn't possible to serialize it by itself, and add extra-dependencies to make the system extensible while also supporting external structures I used like Arena from the indextree crate.
-
Help getting started with open source
You can find it at https://github.com/Inochi2D/inox2d. If you know stuff about OpenGL and low-level rendering in general I'd really appreciate some help as I myself am very new to this stuff.
tiny-skia
-
A simple 2d graphic library
You can even check https://github.com/linebender/piet and https://github.com/RazrFalcon/tiny-skia. They are pure rust libraries. Skia as a whole is a big binary to add.
-
Typst, a modern alternative to LaTeX, is now open source
Looking through the source code. It looks like it's using tiny-skia for rendering.
-
Recommended UI framework to draw many 2D lines?
Tiny Skia (https://github.com/RazrFalcon/tiny-skia) which is a slower Rust port of Skia and does all software rendering.
-
Announcing piet-glow, a GL-based implementation of Piet for 2D rendering
https://github.com/RazrFalcon/tiny-skia is pretty great.
-
Is coding in Rust as bad as in C++? A practical comparison
I understand that this may sound harsh, but I also ported two (far bigger) codebases from C++ to Rust: rustybuzz and tiny-skia. Both of which are production -ready and not just prototypes. And mine not only do not use pointers, but also barely use unsafe in general.
-
Is there a way to avoid call overhead?
Here is a real world implementation in tiny-skia: https://github.com/RazrFalcon/tiny-skia/blob/master/src/pipeline/highp.rs
-
I want to draw 2d shapes directly to a u8 buffer without needing a window and without having to write drawing code from scratch.
How about tiny-skia?
-
Good example of high performance Rust project without unsafe code?
How about tiny-skia? Almost the same performance as C, no unsafe, a lot of explicit SIMD.
-
Announcing lyon 1.0.0
Now I would love to see a universal Bezier path crate, storage + common utilities like length, point at offset, some low-level stuff, etc. So it could be used as a foundation for other crates. Currently, there is a lot of friction because each crate has its own implementation.
-
I wrote a GUI library.
Nice to see tiny-skia in use.
What are some alternatives?
inochi2d - Inochi2D reference implementation aimed at rendering 2D puppets that can be animated in real-time (using eg. facial capture).
PixiJS - The HTML5 Creation Engine: Create beautiful digital content with the fastest, most flexible 2D WebGL renderer.
halloy - IRC application written in Rust
fontdue - The fastest font renderer in the world, written in pure rust.
prima - PRIMA is a package for solving general nonlinear optimization problems without using derivatives. It provides the reference implementation for Powell's derivative-free optimization methods, i.e., COBYLA, UOBYQA, NEWUOA, BOBYQA, and LINCOA. PRIMA means Reference Implementation for Powell's methods with Modernization and Amelioration, P for Powell.
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
signrs
vouch-proxy - an SSO and OAuth / OIDC login solution for Nginx using the auth_request module
tensorken - A fun, hackable, GPU-accelerated, neural network library in Rust, written by an idiot
canvas - Cairo in Go: vector to raster, SVG, PDF, EPS, WASM, OpenGL, Gio, etc.
dotfiles
pixie - Full-featured 2d graphics library for Nim.