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

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
Wybrane dla Ciebie
Komentarze (50)