
Exploring the Tech and Design of Noita
About this video
In this 2019 GDC session, Petri Purho of Nolla Games explains the technical side of Noita's physics engine, including scaling a falling-sand simulation to large continuous worlds and adding destructible rigid bodies. It also shows how the emergent physics drives the gameplay.
Why it appears in the archive
It is the go-to talk for anyone building falling-sand or pixel-physics simulations, and several commenters say they modeled their own engines on it.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
Nice work, Jason. I enjoyed a lot a talk [1] at GDC by Petri Purho (Nolla Games and before that Kloonigames) that explains the "Falling Everything Engine" used in their game Noita (that I would love to play on my mac...). Highly recommended if you want to dive deeper into the topic. [1]: [VIDEO] "Exploring the Tech and Design of Noita"
Read original comment ↗Thank you! If you haven't played Noita it's basically a "falling sand" or powder physics game where every pixel is simulated. You need a special cellular automata that is not your typical game physics engine, so I don't think Babylon.js would be a good choice but I may be wrong. I've modeled my architecture after this fantastic GDC talk by the Noita devs: [VIDEO] ("Exploring the Tech and Design of Noita")
Read original comment ↗Thank you! It's funny because I really wanted to introduce more things like that, but the very simple things I've added so far have received a bit of pushback ("I want to play a factory game, not solve puzzles!"). So now I'm reconsidering it, but I think there's a lot of room for really interesting Noita-style secrets when combined with the automation and processing tools. Overall it's a much simpler and more controlled experience than Noita though, so don't expect anything like it. By the way, this talk by the Noita devs has been instrumental when building my engine: [VIDEO] Highly recommended!
Read original comment ↗Noita does interesting things with terrain deformation, and this is a good GDC talk about how it does so: [VIDEO]
Read original comment ↗I owe Basic a lot. It got me into programming on our first family pc, a Compaq Presario around '94. QBasic was accessible on every windows installation from the command prompt. You could read the programming guide built into the editor and have your first running code shortly after. That was its true power. One of my first programs was teaching me french words, asking me to translate them in a random order until I got them all right. It was truly magical. I also made pixels move, trying to write games, but I quickly ran into limitations and problems organizing my code. If you like a small challenge, watch a few minutes of this video about a game called Noita, where in the beginning Q-Basic was used to create some simple physic simulations [1]. It was hacky yes, but I think if you're starting out, it's much more important to get something running quickly than learning how to do it the right way. When people speak of basic, they always seem to have the impression that you're spoiled for life after touching it, but I think that's wrong. You can always learn more and improve. It's breaking down barriers of entry, which is key. A simple editor, with an inbuilt help page and a run button is all you need. [1] [VIDEO]
Read original comment ↗The Noita team explored some game ideas along those lines and had challenges. If you haven't seen the GDC 2019 talk about tech and design of Noita I recommend checking it out. They show some early prototypes focused on building [VIDEO]
Read original comment ↗Here's a talk from the creator of Noita about the underlying tech. From 9:20 he talks about their multithreading implementation. [VIDEO]
Read original comment ↗this doesn't answer any questions about this game, but I found this GDC talk about Noita pretty interesting: [VIDEO]
Read original comment ↗