PORTFOLIO / Mobile game prototype
Great Graffiti.
Surface painting with CustomRenderTexture, asynchronous mask readback, and coverage calculation using Jobs and Burst.

Project illustration. Gameplay screenshots and video follow below.
Surface painting
In Great Graffiti, a mechanical brush paints an image while the game measures the painted area. The prototype has one demonstration level. The next level remains unfinished.
From contact to a paint mask
A virtual joystick moves a brush mounted on a jointed arm. A raycast finds the surface contact coordinates, and a CustomRenderTexture updates the painted area. The color comes from a prepared texture at the contact point.
Measuring coverage
AsyncGPUReadback reads the mask texture. A Burst job counts the unpainted pixels, then the game updates the progress bar and awards coins for added coverage. Reaching the target percentage completes the level.
Game loop
Painting consumes fuel. Between attempts, players can upgrade fuel capacity, brush size, paint strength, and arm length. The length upgrade adds segments to the jointed arm and extends its reach. Upgrade levels and the coin balance are saved locally.
Videos.
01Screenshots.
06Looking for a gameplay developer?
I would be glad to discuss your team’s work and talk through these projects.





