Hi, I'm Davide Garavaso, a research fellow and master's student in Computer Game Development from Verona.
I am passionate about physics simulation, programming, and video games, and I aspire to build my career in the video game industry.
My research focuses on cloth segmentation using deep learning and the development of a cloth simulator in C++ and OpenGL, implementing both physically-based and position-based techniques. Alongside research, I am expanding my skills through a masterβs program, where I develop projects in Unreal Engine, Unity, and C++ exploring areas such as physics programming, gameplay programming and graphic programming.
Driven by curiosity and passion, I am motivated by the opportunity to grow professionally, learn new technologies, and contribute to new projects in the video game industry.
Point Cloud Segmentation for 3D Clothed Human Layering. [Published on Computers & Graphics Journal in 2025]
Point Cloud Segmentation for 3D Clothed Human Layering introduces a new paradigm for 3D point cloud segmentation of clothed humans, where each point can belong to multiple clothing layers (body + several garments).
This enables reasoning not only on visible garment surfaces, but also on occluded regions, opening new opportunities for realistic human digitization and applications in computer vision, graphics, and virtual try-on.
We also introduce a new synthetic dataset with multi-layer ground truth and benchmark different architectures for both fine- and coarse-grained clothing segmentation.
This video showcases different physically-based and position-based cloth simulation algorithms, including Symplectic Euler, Explicit Euler, Position-Based Dynamics (PBD), and Extended Position-Based Dynamics (XPBD). Each method highlights trade-offs in stability, realism, and computational performance.
This video showcases cloth simulation with collision handling. The garment interacts with different types of colliders, including sphere, capsule, swept-sphere line, and swept-sphere triangle. These collision primitives enable robust and efficient detection for realistic cloth dynamics in different scenarios.
This video showcases Short demo of a cloth simulator that handles cloth interactions with different rigid objects, as well as interactive transformations with active colliders. In the final part, there is also a more playful example: an animated character kicks a ball that physically interacts with the scene and goes through the hoop, deforming the net in real time. This demonstrates how the same system can be used both for technical simulations and for gameplay-oriented interactions.
CoinBot is a 3D platform game developed in Unreal Engine 5. The player controls the main character across three challenging levels, with increasing difficulty, collecting coins to restore lives (up to a maximum of five) while defeating enemies and progressing toward the final boss.
MomentumRally is a physics-based racing game developed in Unreal Engine 5 where the player controls a small drifting vehicle along a track. During gameplay, all forces acting on the car, such as traction, suspension, and balance, are visualized, providing insight into the underlying physics that drive motion and stability.
Arkanoid is a modern reinterpretation of the classic brick-breaker, developed in C++ with OpenGL. It features five levels, smooth physics, particle effects, responsive controls, various power-ups, and updated visual effects for a fresh gameplay experience.
A C++ wrapper for the FMOD Core API, designed to simplify audio integration in games and interactive applications. It provides an easier interface for handling events, channels, and basic sound management, making FMOD more accessible.
This project implements a custom memory manager optimized for small object allocation, providing C and C++ APIs (mm_malloc, mm_free, mm_new, mm_delete, mm_new_a, mm_delete_a) and an STL-compatible allocator. It also tracks allocation statistics and detects memory leaks. The small object allocator is based on Alexandrescuβs implementation from Modern C++ Design (2001).
Space Pang is a modern reinterpretation of the classic Pang arcade game, developed as a 2D platform game in Unity 6. Set in outer space, the player battles bouncing asteroids with precision and timing across three distinct levels, combining fast-paced arcade action with updated visual effects and mechanics for a fresh gameplay experience.
This project, developed in Unity 2018 with C#, implements a custom football AI capable of playing in 2v2 and 3v3 modes. The AI handles decision-making, movement, and teamwork strategies, and was successfully integrated into an already released commercial game.
Β·
Networked Physics Cube is a Unity 6 project built with Photon to show network synchronization of a cube, implementing basic concepts of networked physics. This work is inspired by the article βIntroduction to Networked Physicsβ from Gaffer on Games.
Mixed reality project developed in Unity, integrates a scanned 3D model of a real building into gameplay. By linking real-world imagery to the virtual model, the application allows players to shoot cannon balls at targets placed on the building, enabling dynamic interaction between the environment and game objects.
Feel free to reach out for collaborations or interviews.