real time destruction

in chaos unreal engine

Published
maart 4, 2021

In deze blogpost stellen we het afstudeerproject van onze stagiair Elie voor. Elie onderzocht de mogelijkheden van de Chaos engine die in Unreal terug te vinden is.

Chaos Engine

In 2019 werd de Chaos Unreal Engine voor het eerst aan het grote publiek vertoond tijdens de jaarlijkse GDC conferentie. In het korte fragment toont men een robot die een stad aan diggelen schiet met een uiteenlopend arsenaal van wapens. Voor vele spelers gaf dit een enorme adrenaline stoot, maar voor developers betekende dit vier minuten lange clipje het begin van een revolutie. De getoonde beelden waren namelijk een realtime technische demonstratie van destructie en physics. Dankzij Choas zou iedereen in staat zijn in geen tijd een filmische kwaliteit van destructies en beelden te bereiken op een grotere schaal. 

 

In november 2020 werd de Chaos engine gereleased samen met enkele andere vernieuwende tools in Unreal 4.26. Developers en artisten overal konden voor het eerst zelf proberen om objecten en gebouwen te fragmenteren en vernietigen zonder de tussenkomst van andere programma’s. Een project waar traditionele simulatie programma’s zoals Houdini en Maya worden gebruikt, kan nu bereikt worden in Unreal. 

Afstudeerproject

In een case study bekijken we de limieten van het systeem met als onderwerp de botsing van historische schepen. Dit afstudeerproject had als doel om één of meerdere schepen op een zo realistisch mogelijke wijzen met elkaar of de omgeving te laten botsen. 

Hieronder laten we Elie aan het woord over het uitwerken van deze case study:

Vertrekkende van de Unreal documentatie werd elk element opgesteld en uitgetest om zo tot verschillende conclusies te komen. Er zijn veel mogelijkheden om dit aan te pakken binnen het systeem. De Chaos engine laat toe om meshes in engine te splitsen. Dit proces is nodig vooraleer je een object kan vernietigen. Aan de hand van ‘fields’ kan men de simulaties vervolgens op elke mogelijke manier gaan manipuleren. Van brokken wegschieten, tot gebouwen imploderen of zelfs stukken laten dansen volgens een patroon. Om alles af te maken kan men de info van de Chaos destructie gaan gebruiken in de onderbouwde blueprints of Niagara system om partikels toe te voegen of complexe interacties te maken met andere objecten.

De keerzijde van al deze mogelijkheden en beloftes is dat nog veel van de systemen in een pril stadium staan. Unreal’s documentatie is nog beperkt en veel van de opties en mogelijkheden blijven onduidelijk bij gebrek aan uitleg. De performantie van het systeem is nog niet voldoende robuust voor de gewone gebruiker en beperkt de mogelijkheden.

Unreal is hard aan het werk om hun huidige physics engine binnenkort volledig te vervangen door Chaos, maar we merken dat hier nog werk nodig is.

Elie kon het destructie proces in realtime toepassen op de case. Dit toont aan dat het systeem naast een rigide destructie van objecten en gebouwen in staat is om op een meer organische vorm te werken. Het geeft een sterke eerste indruk over de snelheid waarmee de Chaos engine de vernieling berekend en uitvoert in realtime en in combinatie met de water simulaties.

succes
twoships

In conclusie hebben we gemerkt dat de Chaos engine sterke basis heeft gelegd voor een tool voor game developers en zelf VFX artiesten. We vermoeden dat deze casus gedetailleerder en realistischer zal zijn indien we deze binnen 6 maanden opnieuw maken.