AMD FEMFX, czyli otwartoźródłowy konkurent dla Nvidia PhysX – dla każdego

Możliwość destrukcji i innych interakcji z otoczeniem to coś, co nadaje immersji każdej grze. Wie o tym AMD, które rozszerzyło właśnie stos GPUOpen o bibliotekę FEMFX, ułatwiającą programistom implementację fizyki oddziaływań. To coś jak Nvidia PhysX, ale w wydaniu open source.

fot. Shutterstock.com
fot. Shutterstock.com
Piotr Urbaniak

17.12.2019 08:56

Zalogowani mogą więcej

Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika

FEMFX wykorzystuje tzw. metodę elementu skończonego, czyli mówiąc najprostszymi możliwymi słowami, pozwala uzyskać przybliżone rozwiązania równań różniczkowych, które z kolei stanowią model matematyczny reprezentowanych powierzchni. Można to sobie wyobrazić w ten sposób, że każdy element staje się siatką malutkich czworościanów. Zdefiniowane w programie parametry materiałowe określają ich sztywność, sposób zmiany objętości wraz z deformacją czy granice naprężeń do trwałego zniekształcenia lub pęknięcia.

Model przygotowany przez AMD obsługuje szeroki zakres materiałów i interakcji między nimi. Producent, jak twierdzi, chce zastąpić w ten sposób tradycyjne, statyczne elementy w grach. Przygotował predefinicje dla kilku rodzajów materiałów, takich jak drewno, metal, plastik czy szkło, a także adekwatne ponoć efekty deformacji.

Żadnych statycznych elementów

Co warte odnotowania, biblioteka umożliwia zmianę materiału w locie, a więc ten sam obiekt może zachowywać się na kilka różnych sposobów, na przykład zmienić stan skupienia ze stałego na ciekły. A niezbędne obliczenia poprowadzi zarówno procesor, jak i karta graficzna.

AMD wylicza cały szereg funkcji, w tym m.in.: ciągłe wykrywanie kolizji dla szybko poruszających się obiektów, kontrola nad rozwiązywaniem i łączeniem elementów oraz dokładne trasowanie pęknięć.

Integrating an FEM Physics System into Unreal Engine | Unreal Fest Europe 2019 | Unreal Engine

Jak widać, AMD FEMFX pod wieloma względami przypomina Nvidia PhysX. Jest zestawem gotowych efektów materiałowych do implementacji w grze. Jednak akceleracja GPU odbywa się w modelu otwartym, nie poprzez zamknięty framework CUDA, a sama biblioteka jest open source. Kod źródłowy, garść próbek i wtyczkę do Houdini znajdziecie na oficjalnym profilu na GitHubie. Oprócz tego powstała także otwarta wtyczka dla silnika Unreal Engine 4.

Teraz pozostaje czekać na implementacje w grach. Niestety, w tej chwili nie ma żadnych konkretnych zapowiedzi tytułów wykorzystujących nowość. A szkoda, bo teoria brzmi intrygująco.

Programy

Zobacz więcej
Komentarze (50)