JangaFX Insights

jangafx.com · Company blog · on HN since 2020

JangaFX, a maker of real-time volumetric effects software like EmberGen, writes about simulation, file formats, and Linux binary compatibility.

What HN saysHN commenters mention it in discussions of the Odin language, noting that JangaFX uses Odin for products such as EmberGen.
20HN people shared it
15linked it in comments
8stories submitted
253story points
4 months agolast shared
2020people per year2026

Most-shared posts

  1. 1
  2. 2
  3. 3
  4. 4
    VDB (Volumetric Data Blocks) – A Deep Dive
    1 people · 6 points · first shared 2022 · discussion on HN
  5. 5
    OpenVDB Format: A Deep Dive
    1 people · 3 points · first shared 2024 · discussion on HN
  6. 6
    End user license agreement
    1 people · first shared 2026
  7. 7
    Geogen
    1 people · first shared 2025

What HN people wrote when they linked it

hresvelgr · 2026-06-22
Another language that is in a similar space to Zig that I think deserves more attention, particularly for funding is Odin. While I think Zig is a great language, there is a consistency of design and simplicity to Odin that makes low-level programming more ergonomic and enjoyable to me. While Zig boasts a lot of impressive projects, Odin was used to build the JangaFX suite[1]. [1] https://jangafx.com/
thegeekpirate · 2024-07-21
Odin makes them (and more!) absolutely lovely to work with: complex32/64/128, quaternion64/128/256 https://odin-lang.org/docs/overview/#array-programming https://odin-lang.org/docs/overview/#matrix-type Probably helps it's the language JangaFX uses for their products used by essentially every major video game, movie, and TV show out there (https://jangafx.com/#headline-603-384)
bsrkf · 2025-05-09
Seems needlessly harsh and also misplaced in some way. Zig is super non-ergonomic to any C-developer, and its explicitness at all costs is also non-C-like (meaning a rather big shift for someone actually liking C). Rust is a completely different beast altogether. Odin is a rather simple, performant, pragmatic, procedural language, fixing especially things in C with regards to its type system and infrastructure (such as packages), adding niceties such as `defer` while being at it. I, as a C programmer, have it far higher up my list of languages to try than Zig or Rust by a rather large margin. btw: "C alternative means a language that will last for 50 years" seems a snide that could be applied to any language less than 20 years old? I'm not sure what that's concretely meant to criticize here? Is Zig more a 50-year language than Odin, if so how? Odin is used for rather serious commercial products at JangaFX btw: https://jangafx.com/ and is quite beloved by some people using it.
pjmlp · 2026-07-07
Game development. Go really only took off thanks to Docker and Kubernetes, and even if it would be capable, there is hardly an ecosystem there. Rust could be there, but there is really only Bevy, and several companies have tried it and pivoted to something else due to compile times hindering fast prototyping workflows. Odin was created at a games company, JangaFX, and has already a few products using it. https://jangafx.com Also Odin batteries include what you need to start coding a game right away, https://pkg.odin-lang.org/vendor
stock_toaster · 2025-12-21
I'm no fan of Odin, but JangaFX[1] apparently uses it quite a bit. I believe EmberGen[2] is written[3] in Odin. [1]: https://jangafx.com [2]: https://jangafx.com/software/embergen [3]: https://odin-lang.org/showcase/embergen/
dismalaf · 2025-07-04
> Odin might have "shipped" but are there are any projects with significant usage built on it? JangaFX stuff is written in Odin and has some pretty big users. https://jangafx.com/ https://odin-lang.org/showcase/
torginus · 2026-07-04
> Also, how are we supposed to know that JangaFX is a real company, and its CEO a real person? From the page: https://jangafx.com/legal/end-user-license-agreement JangaFX, LLC, a North Carolina Limited Liability Company located at PO BOX 27...
forrestthewoods · 2025-09-28
Nah. Docker was created to solve the "works on my machine" problem. Because Linux made the wrong choice of having a global pool of shared libraries. So Docker hacked around this by containerizing a full copy of the desired environment. What Docker has done is kinda right. Programs should include all of their dependencies! But it sucks that you have to fight really hard and go out of your way to work around Linux's original choices. Now you may be thinking wait a second Linux was right! It's better to have a single copy of shared libraries so they can be securely updated just once instead of forcing every program to release a new update! Theoretically sure. But since everyone uses Docker you have to (slowly and painfully) rebuild the image and so that supposed benefit is moot. Womp womp. Additional reading if you are so inclined: https://jangafx.com/insights/linux-binary-compatibility
hermitcrab · 2025-03-08
Nice writeup. If you are interested in this sort of thing, you might be interested in: https://jangafx.com/software/geogen (Haven't used it myself, but I understand their EmberGen tool is well thought of in visual fx)
lylejantzi3rd · 2024-10-26
Would a 3d animation software like EmberGen[0] qualify? Because they already have it[1]. I think it's going to take something bigger, like a massively popular indie or AAA game that programmed their game in odin using an open source engine. Quite the needle to thread. [0]: https://jangafx.com/software/embergen [1]: https://odin-lang.org/showcase/embergen/
el_oni · 2024-01-02
The creator, gingerbill, uses it to build real time flame and smoke rendering [0]. AFAIK they have vectors and matrices built into the stdlib as well as various graphics apis[1]. So I'd say from what I know the niche is "batteries included high performance code that can target the gpu" [0]https://jangafx.com/software/embergen/ [1]https://odin-lang.org/news/major-graphics-apis/
CaptainOfCoit · 2023-12-19
EmberGen is absolutely crazy software that does simulation of fire and smoke in real-time on consumer GPUs, and supports a node-based workflow which makes it so easy to create new effects. Seriously, my workflow probably went from spending hours on making something that now takes minutes to get right. https://jangafx.com/software/embergen/ I was sure that this submission would be about EmberGen and I'm gonna be honest, I'm a bit sad EmberGen never really got traction on HN (https://hn.algolia.com/?dateRange=all&page=0&prefix=true&q… (Not affiliated with EmberGen/JangaFX, just a happy customer)
zubspace · 2022-02-19
I'm intruiged by the vendor libraries [1] and EmberGen is definitely a nice showcase they have [2]. It's a nicer C with similarities to Zig. I'll definitely take a look. But I'm hesitant to fully dive in. I'm a bit overwhelmed by all the new "niche" languages coming out lately. Usually they have very valid use cases but mostly fall flat regarding tooling (debugging..), available libraries and documentation. It takes so much time to really grok a new language and then the next new shiny thing comes out... [1] https://github.com/odin-lang/Odin/tree/master/vendor [2] https://jangafx.com/software/embergen/
gingerBill · 2020-01-31
One of the big users of Odin at the moment is JangaFX's EmberGen, which does real-time volumetric fluid simulations for games and film. https://jangafx.com/software/embergen/ Odin has aided them with a huge amount of productivity and sanity of life which other languages such as C or C++ cannot offer, such as a strong and comprehensive type system, parametric polymorphism which is a pleasure to use, the implicit context system, extensive support for custom allocators, the `using` statement, the `defer` statement, and much much more.
westurner · 2025-04-02
How should a microkernel run (WASI) WASM runtimes? Docker can run WASM runtimes, but I don't think podman or nerdctl can yet. From https://news.ycombinator.com/item?id=38779803 : docker run \ --runtime=io.containerd.wasmedge.v1 \ --platform=wasi/wasm \ secondstate/rust-example-hello From https://news.ycombinator.com/item?id=41306658 : > ostree native containers are bootable host images that can also be built and signed with a SLSA provenance attestation; https://coreos.github.io/rpm-ostree/container/ : rpm-ostree rebase ostree-image-signed:registry:<oci image> rpm-ostree rebase ostree-image-signed:docker://<oci image> Native containers run on the host and can host normal containers if a container engine is installed. Compared to an electron runtime, IDK how minimal a native container with systemd and podman, and WASM runtimes, and portable GUI rendering libraries could be. CoreOS - which was for creating minimal host images that host containers - is now Fedora Atomic is now Fedora Atomic Desktops and rpm-ostree. Silverblue, Kinoite, Sericea; and Bazzite and Secure Blue. Secureblue has a hardened_malloc implementation. From https://jangafx.com/insights/linux-binary-compatibility : > To handle this correctly, each libc version would need a way to enumerate files across all other libc instances, including dynamically loaded ones, ensuring that every file is visited exactly once without forming cycles. This enumeration must also be thread-safe.…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close