https://www.youtube.com/watch?v=prXuyMCgbTc
Petri Purho делится техническими деталями своей игры Noita. Рассказывает про кастомный движок, симуляцию жидкости и газа, а также интеграцию с физическим движком Box2d.
#GDC #физика #Box2d #симуляция
Petri Purho делится техническими деталями своей игры Noita. Рассказывает про кастомный движок, симуляцию жидкости и газа, а также интеграцию с физическим движком Box2d.
#GDC #физика #Box2d #симуляция
YouTube
Exploring the Tech and Design of Noita
In this 2019 GDC session, Nolla Games' Petri Purho talks about the technical details of Noita's physics engine, including scaling up the falling sand simulation to support large continuous worlds and integrating destructible rigid body physics, while demonstrating…
Эрин Катто, создатель Box2d, рассказал про Solver2d. по сути, урезанную версию Box2D v3.0 для более быстрых экспериментов с различными солверами.
В статье кратко рассказал про 8 из них, включая Projected Gauss-Seidel, Temporal Gauss-Seidel и другие. Можно посмотреть как это всё работает в отдельном видео.
#box2d
В статье кратко рассказал про 8 из них, включая Projected Gauss-Seidel, Temporal Gauss-Seidel и другие. Можно посмотреть как это всё работает в отдельном видео.
#box2d
А тем временем Эрин Катто релизнул Box2D 3.0. Много чего переписал в обработке коллизий, что позволило и буллеты завести, и упростить параллельные вычисления (он вообще сильно по многопоточке и SIMD упоролся, судя по всему). И самое главное...весь код переписан с C++ на чистом C, без классов, только структуры, функции и енамчики.
Бенчмарки показывают, что новая версия движка отлично скаллируется с ростом числа CPU. Но! Даже в однопоточке v3 более чем в два раза быстрее v2.4 🤯
Смотрим демку.
#box2d
Бенчмарки показывают, что новая версия движка отлично скаллируется с ростом числа CPU. Но! Даже в однопоточке v3 более чем в два раза быстрее v2.4 🤯
Смотрим демку.
#box2d
Совсем недавно была новость про релиз Box2d v3, сейчас же автор рассказал немного про использование SIMD в новой версии, в частности, про Graph coloring для обработки контактов объектов.
TL;DR: повозиться придётся, но если правильно реализовать, то прирост по производительности может быть весьма существенный.
#box2d
TL;DR: повозиться придётся, но если правильно реализовать, то прирост по производительности может быть весьма существенный.
#box2d