inox2d
manim
inox2d | manim | |
---|---|---|
9 | 152 | |
180 | 19,101 | |
3.9% | 5.8% | |
8.9 | 9.1 | |
20 days ago | 6 days ago | |
Rust | Python | |
GNU General Public License v3.0 or later | MIT 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.
manim
- A Rigorous Derivation of the Bubble Sort Curve
-
3Blue1Brown: Visualizing Attention, a Transformer's Heart
Also check out community edition: https://www.manim.community
-
This Week In Python
manim – A community-maintained Python framework for creating mathematical animations
- I'm new to try manim and it met some questions TypeError: __init__() got an unexpected keyword argument 'line_join'
-
Old blog of Matt Henderson, beautiful math animations
I recently wanted to make something similar and I completely fell in love with https://www.manim.community/ created by 3B1B.
- Animated AI
-
Text-to-CAD: Risks and Opportunities
https://github.com/gumyr/build123d :
> Build123d is a python-based, parametric, boundary representation (BREP) modeling framework for 2D and 3D CAD. It's built on the Open Cascade geometric kernel and allows for the creation of complex models using a simple and intuitive python syntax. Build123d can be used to create models for 3D printing, CNC machining, laser cutting, and other manufacturing processes. Models can be exported to a wide variety of popular CAD tools such as FreeCAD and SolidWorks.
> Build123d could be considered as an evolution of CadQuery where the somewhat restrictive Fluent API (method chaining) is replaced with stateful context managers* - e.g. with blocks - thus enabling the full python toolbox: for loops, references to objects, object sorting and filtering, etc.*
"Build123d: A Python CAD programming library" (2023) https://news.ycombinator.com/item?id=37576296
BREP: Boundary representation: https://en.wikipedia.org/wiki/Boundary_representation
Manim, Blender, PhysX, o3de, [FEM, CFD, [thermal, fluidic,] engineering]: https://github.com/ManimCommunity/manim/issues/3362
NURBS: Non-Uniform Rational B-Splines: https://en.wikipedia.org/wiki/Non-uniform_rational_B-spline
NURBS for COMPAS: https://github.com/gramaziokohler/compas_nurbs :
> This package is inspired by the NURBS-Python package, however uses a NumPy-based backend for better performance.
> Curve, and Surface are non-uniform non-rational B-Spline geometries (NUBS), RationalCurve, and RationalSurface are non-uniform rational B-Spline Geometries (NURBS). They all built upon the class BSpline. Coordinates have to be in 3D space (x, y, z)
test_curve.py, test_surface.py
https://github.com/compas-dev
compas_rhino, compas_blender
Blender docs > Modeling Surfaces; NURBs implementation, limits, challenges:
-
Ask HN: What would you show an interviewer if they asked you for code samples?
A template language that I wrote for generating HTML. Meant to be included as a C++ library. https://github.com/Ghoti-io/Tang
Plenty of other C++ code of mine is on Github (such as a bunch of utility stuff, a thread pool, and a HTTP server that I'm writing from scratch), even though I would only call myself an intermediate C++ programmer. I just happen to like the language.
Or, if I had to throw other stuff into the mix, a fairly recent patch to Manim (Python) that got accepted (https://github.com/ManimCommunity/manim/pull/3155).
If I were really pressed, I would dig up a lot of my Drupal (PHP) stuff that I did years ago.
-
What are you rewriting in rust?
I would love to have this https://github.com/manimCommunity/manim written in Rust. There have been previous attempts (bevy_manim and another one using nannou) but all of them are outdated
- Ask HN: What packages can be used to create interactive mathematics simulations?
What are some alternatives?
inochi2d - Inochi2D reference implementation aimed at rendering 2D puppets that can be animated in real-time (using eg. facial capture).
Javis.jl - Julia Animations and Visualizations
halloy - IRC application written in Rust
processing - Source code for the Processing Core and Development Environment (PDE)
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.
cheatsheets - Official Matplotlib cheat sheets
signrs
python_turtle_art - Using Python Turtle module to draw this masterpiece - a combination of 2D geometry, Pop Art and Coding
tensorken - A fun, hackable, GPU-accelerated, neural network library in Rust, written by an idiot
p5.js - p5.js is a client-side JS platform that empowers artists, designers, students, and anyone to learn to code and express themselves creatively on the web. It is based on the core principles of Processing. http://twitter.com/p5xjs —
dotfiles
geogebra - GeoGebra apps (mirror)