Fluid simulation in computer graphics is a well-researched field used to simulate water in different ways. Although computer graphics techniques in this area usually aim towards creating realistic representations, they can also deviate to create stylized animations of water that adopt different aesthetics whilst maintaining certain aspects of realism. Recently, voxel-style graphics have emerged as a popular style in video games and movies. One example of this style is the voxel-style water that appears in the The LEGO Movie(2014),where moving masses of water are composed of LEGO bricks. Voxel-style water simulations usually rely on simple mathematical models, which leave room to explore the possibility of using dynamic fluid simulations to produce voxel-style graphics animations like this one. This work adapts a PIC/FLIP, a dynamic fluid simulation method, to produce a LEGO-stylized animation of water, rendering the result using Blender. The LEGO bricks are colored in gradients of blue and white with a method that emulates ’whitewater’, which occurs when turbulent water traps air bubbles inside and creates. A section of the fluid simulation was computed on the GPU as a method of improving performance. The performance of the implementation is measured in terms of time taken to simulate the fluid and render the animation. This is tested for a combination of fluid simulation parameters. How these parameters affect the visuals of the resulting LEGO fluid and performance is evaluated. The results show that the GPU optimisation yields modest improvements in performance for the simulation and rendering process and that PIC/FLIP parameters can be used to manipulate the visuals of the LEGO fluid in different ways. Varying the parameters also significantly change the amount of time required for the rendering and simulation process.
Vätskesimulering inom datorgrafik är ett väl undersökt område som används för att simulera vatten på olika sätt. Även om tekniker inom detta område brukar användas för att skapa realistiska representationer av vatten kan de också avvika från detta för att skapa animationer av vatten som har olika estetik samt bibehåller vissa aspekter av realism. Nyligen har voxel grafikframträtt som en populär estetik inom videospel och filmer. Ett exempel på detta förekommer i The Lego Movie(2014), där vattenmassor består av LEGO-klossar. Voxeliserade vattensimuleringar brukar oftast använda sig av enkla matematiska modeller. Detta ger utrymme att utforska möjligheten att använda dynamiska vätskesimuleringar för att producera LEGO voxeliserade vattenanimationer i samma stil. Detta examensarbete anpassar PIC/FLIP, en dynamisk vätskesimuleringsmetodför att producera en voxel ’LEGO’ animation av vatten. Animationen renderas i Blender. LEGO-klossarna är färgade i blått och vitt med en metod som emulerar åhitewater", vilket uppstår när turbulent vatten fångar up luftbubblor i sig. En del av vätskesimuleringen beräknades på GPU:n för att förbättraprestanda. Implementeringens prestanda mäts i form av tid som krävs för att simulera vattnet och rendera animationen. Detta testas för en kombination av olika vätskesimuleringsparametrar. Hur dessa parametrar påverkar själva animationen och prestandan utvärderas. Resultaten visar att GPU optimeringen ger blygsamma förbättringar av prestandaför simulerings- och renderingsprocessen. PIC/FLIP-parametrar kan också användas för att manipulera LEGO-vätskans animation på olika sätt. Val av parametrar påverkade också den tid som krävdes för simulerings- och renderingsprocessen.