Solo development · C++20 / Vulkan
OVERSWEEP
A carrier-interceptor combat flight game. Custom rendering, flight dynamics, and live avionics, built on years of simulation work. A playable vertical slice, in development for Steam.
Graphics · Simulation · AI tools
Software engineer
I build real-time graphics engines, games, and developer tools. My work spans engine R&D at Square Enix, mobile games with over a million downloads, and current projects in flight simulation and AI.
Solo development · C++20 / Vulkan
A carrier-interceptor combat flight game. Custom rendering, flight dynamics, and live avionics, built on years of simulation work. A playable vertical slice, in development for Steam.
Developer tools · Go / MCP
The control center I built to work across repositories and coding agents. It brings sessions, worktrees, diffs, and runtimes together, and is now part of my daily development workflow.
Inside the tool
AI product · Web / PWA
An AI assistant I developed from interface to deployment: model routing, tools, editable memory, search, and payments, with a shared platform for different branded assistants.
Explore the product
Fractal Combat X · 1M+ downloads
Mobile flight combat on my own C++ engine, with continuous terrain LOD and OpenGL ES rendering. Sole developer apart from Android platform work; presented the graphics work with Intel at GDC 2015.
Final Freeway games · 1M+ downloads combined
First released on iOS in 2010, and still maintained and extended. A custom C++ engine and a deliberately compact sprite-based art pipeline made the original game practical to build solo.
Since 2010, I have been co-founder and CTO of NEWTYPE K.K. in Tokyo, developing and maintaining independent products through OYK Games, alongside contract work.
Square Enix · 2006–2010
Led runtime-engine development to reproduce production-rendering scenes in real time, working with Final Fantasy XIII cinematic assets, GPGPU, compression, and streaming.
The engine workArika · 2001–2006
Senior software engineer on console games, including Tetris: The Grand Master Ace for Xbox 360.
Tetris: TGM AceSquareSoft · 1999–2000
Built the PlayStation API and graphics abstraction layer for the PC port, allowing much of the original game code to compile unchanged.
The porting work| Period | Role | Company | Location |
|---|---|---|---|
| 2010/11–present | Co-founder and CTO | NEWTYPE K.K. | Tokyo, Japan |
| 2006/11–2010/4 | Senior Software Engineer | Square Enix Co., Ltd. | Tokyo, Japan |
| 2001/8–2006/9 | Senior Software Engineer | Arika Co., Ltd. | Tokyo, Japan |
| 2000/5–2000/12 | Senior Software Engineer | Gama Internet Tech. USA, Inc. | Costa Mesa, CA, USA |
| 1999/3–2000/3 | Software Engineer | SquareSoft, Inc. | Costa Mesa, CA, USA |
| 1995/9–1998/6 | Senior Programmer | Digital Dialect | West Hills, CA, USA |
| 1990/11–1995/8 | Programmer | Tabasoft, s.a.s. | Rome, Italy |
AI agents are part of my daily workflow. I use them for implementation, experiments, and tooling, while directing architecture, reviewing changes, and judging the result. OVERSWEEP and Little Control Room are where I explore this most directly, with reproducible tests and visual checks built into development.
Getting something to work is only part of it. How it feels, what to cut, and when something is nearly right still take experience and iteration. More on how my work has changed →
I speak Italian, English, and Japanese. I keep room for contract work in graphics, simulation, performance, and AI products. Get in touch.

OVERSWEEP is a carrier-interceptor combat flight game, written in C++20 with a native Vulkan renderer. I am the sole developer. It is a playable vertical slice with authored operations, free flight, guided tutorials, and deterministic demos, in development for a commercial release on Steam.
The project draws on the flight dynamics, guidance, autopilot, and avionics work I did on XPSVR. The implementation is largely new, but that earlier experience informs what to simulate, how to present it, and where detail helps the player.
OVERSWEEP is the heaviest user of Little Control Room, which I built to coordinate coding agents, worktrees, runtimes, and review across projects. I direct the architecture and product, use agents throughout implementation, and review the result through tests, captures, and hands-on flying.
The difficult part is choosing the right scope and knowing when something is correct. Flight simulation can absorb almost unlimited detail; keeping the game approachable takes judgment about what to model, what to simplify, and how it feels in motion.
AskMei.ai is a modern AI assistant built on the ChatNext3 platform. It combines multi-model LLM routing, live web search, image generation, memory, file and vision support, and a friendly skeuomorphic interface into a single web/PWA experience.
The system is designed as a multi-instance platform: the same codebase can ship different branded assistants with their own prompts, visual identity, model choices, pricing, rewards, and deployment settings.
AskMei was developed with modern AI coding tools as part of the everyday engineering workflow, including implementation, review, visual iteration, and release work.
I designed and implemented the product, front-end, backend, AI orchestration, deployment, and monetization systems. Major areas include:
Little Control Room is a terminal-first control center for my AI-heavy development workflow. It keeps work across many repositories, agent sessions, TODOs, diffs, and project runtimes in one place. It is now the main tool I use to develop and coordinate my other projects, including AskMei.ai, Fractal Strike, and RogueLLM. Its heaviest user is OVERSWEEP, where many concurrent worktrees, agent sessions, and runtimes run against one codebase at once.
One of my main lessons from using AI agents is to use them to build better tools for the way we work. Personal tools remove very specific friction and keep more of the workflow under my control when a vendor changes direction. LCR therefore works with Codex, Claude Code, and OpenCode rather than being designed around a single provider or harness.
Through the Model Context Protocol (MCP), LCR gives different agents a common interface to the same projects, worktrees, TODOs, sessions, browsers, and runtimes. That shared environment lets them discover what is already happening, coordinate resources, and hand work to one another, so the agent can change without taking the workflow with it.
Creating LCAgent, an experimental coding agent native to LCR, is an important next step. It is both research into where the model ends and the harness begins, and a practical move toward independence. It does not remove reliance on external models, but moves that reliance down a layer: from one complete coding-agent product to replaceable LLMs behind tools and policies I control.
That exposes the less visible challenges of agent engineering: choosing and compacting context without losing important state, resuming reliably, managing security through permissions and command vetting, preventing common destructive actions, and keeping enough trace and verification evidence to understand what happened.
I am the sole developer. The main areas of work include:

Fractal Strike is a mech combat game built with Phaser, TypeScript, Vite, Capacitor, and Electron. It targets web, mobile, and desktop, with arcade survival gameplay, adaptive controls, store-ready screenshots, and a sci-fi campaign structure.
This was an AI-first production: code, art direction, terrain and story assets, copy, localization checks, QA scripts, store capture pipelines, and release tooling were developed through iterative AI-assisted workflows under my direction.
I developed the project end to end. Major tasks include:

RogueLLM is an experimental roguelike that combines traditional dungeon crawling with LLM-generated worlds. The player can request almost any setting, from a one-word theme to a detailed premise, and the system generates locations, enemies, items, and narrative flavor around that theme.
The current gameplay focuses on exploration, combat, equipment, and inventory management, with generated world descriptions and events providing the texture around the mechanics.
I built the prototype and have continued updating it as an AI-gameplay experiment. Major tasks include:

This section summarizes the AI and machine-learning work that connects several of the newer projects listed above.
Below are the highlights of my involvement in AI and machine learning at various stages of my career.
My journey in machine learning started in 2017, when I began designing autopilot logic for the plane and missile airframes in my experimental flight simulator XPSVR.
Simulation is a key component of machine learning because it forms the basis for training at a much faster pace and a much reduced cost, especially when dealing with extremely expensive or dangerous tasks such as flight and weapon delivery.
In 2018 I started applying ML to financial market forecasting for the ENZO Trading System.
By early 2023, my focus shifted toward artificial neural networks, tackling increasingly complex tasks from autonomous driving experiments to sophisticated time-series prediction models deployed in live trading.
Since late 2023, my AI work has increasingly focused on LLM systems: model routing, tool use, memory, search, image generation, and agentic workflows.
That work is now represented most clearly by AskMei.ai, a production AI assistant and multi-instance platform, and by Little Control Room, a terminal-first AI development tool for coordinating Codex, OpenCode, Claude Code, and an experimental native agent called LCAgent.
I also use AI as a production multiplier for games and interactive projects. Fractal Strike is an example of an AI-first game production workflow, while RogueLLM explores LLM-generated worlds and game content inside a deterministic roguelike structure.
Building systems from simple cases was essential in grasping the core concepts involved.
In time-series prediction, Evolution Strategies (ES) proved effective, particularly with limited computational resources. While backpropagation is generally more efficient and likely a better long-term solution, the evolutionary approach provided a practical balance between exploration and exploitation. This balance is crucial in chaotic environments like financial markets, where the potential for useful predictions is debatable and top-tier research often remains undisclosed due to its financial significance.
In my opinion, time-series prediction can be especially challenging for backpropagation because of the chaotic nature of the task and the loss function, which must be carefully designed to avoid local minima and overfitting.
This research also highlighted the profound effects of training data, network architecture, hyperparameters, and loss function design. Crafting a loss function is particularly nuanced in trading, where there is no universal truth: many suitable outcomes exist, some more realistic than others, when it comes to training a model.
Technically, I honed my skills in using PyTorch both in Python and C++ (LibTorch), focusing on minimizing CPU-GPU data transfers, which is crucial for CPU-executed evolutionary strategies.
A key optimization was increasing tensor dimensionality, reducing the number of batches needed for each generation’s processing. Neuro-evolution’s explorative nature demands evaluating numerous models, a process that can be computationally intensive without efficient parallelization.
The more recent LLM work reinforced a different lesson: reliability comes less from a single clever prompt and more from architecture. Clear tool schemas, bounded agent loops, model tiering, memory hygiene, verification, and user control all matter.

A complete trading system for cryptocurrencies. See www.enzobot.com.
I developed most of the front-end and trading models in C++. Some of the major tasks are:

An image viewer capable of building composites of a stack of images with transparent regions. Source code at github.com/gugenstudio/xComp
This tool was built to visualize region updates of a render on top of previous renders, in real-time. Images found in a chosen folder to scan for, are quickly composited with alpha blending in a stack. OpenColorIO transformations are optionally added to the composite image, which can be saved out as a PNG.
I was the sole developer on this project. The main tasks were:

An experimental flight simulator built to mimic the F-35 Lighting II jet fighter. The project targeted VR for full-immersion.
Avionics display includes the famous 2-screen touch display of the F-35 and its windowing system that allows to configure the panels and to maximize and minimize various elements.
Rendering is performed with the OYK Game’s rendering engine which I originally wrote for mobile games, and that I later expanded for PC GPUs and OpenGL 4.5.
See more details on the XPSVR’s blog.
The flight dynamics, guidance, and avionics knowledge from this project is what OVERSWEEP is built on today.
I was the sole developer on this project. The main tasks were:

An arcade flight combat game with more than 1M downloads.
Fractal Combat X (successor of Fractal Combat), is an arcade flight combat game for mobile phones that has reached a wide distribution across multiple markets around the world.
It’s built with an in-house game engine which I developed in C++ on top of OpenGL ES. The game features a continuous terrain LOD capable of showing high detail at a very far distance with no perceptible far clipping.
See the joint technical presentation with Intel at GDC 2015, “Getting There First: OpenGL ES 3.1 and Intel Extensions in Fractal Combat X”
I was the sole developer on this project except for the Android platform. The main tasks were:

The Final Freeway games have reached over 1M downloads across multiple markets.
Final Freeway is an arcade racing game I first released for iOS in 2010, later followed by an Android version and Final Freeway 2R. I still maintain and extend the original game; the screenshot above is from the recent Paris Sonnet stage.
It runs on an in-house C++ engine built on OpenGL ES. Its sprite-scaled road and roadside scenery deliberately recall the arcade racers of the 1980s and early 1990s, but that style also grew from a very practical decision about what one person could finish.
The project’s oldest ancestor is JavaKazRace, a small browser applet I wrote around 2000–2001 while I was between jobs and living in Huntington Beach, California. It already contained the central idea: an OutRun-like road rendered with old-school sprite scaling. A later C++ port became the technical starting point for Final Freeway nearly a decade later.
Most of JavaKazRace’s scenery began as 640×480 photographs I took along the Pacific Coast Highway with a Ricoh RDC-300Z, one of the early consumer digital cameras. I roughly clipped buildings, palm trees, people, and other details out of those photos. The same resourceful approach carried into Final Freeway: some vehicles began as small model cars photographed from the angles needed for their sprites.
This was more than a way to make programmer art cheaply. Choosing 2D avoided the model formats, materials, textures, geometry, and tooling that a 3D production would have required. The retro appearance turned those constraints into a coherent visual identity. It remains a useful game-development lesson: build with what you have, make the first version reachable, and leave room to add more after it ships.
I was the sole developer of the original iOS game; the Android platform work involved another developer. My main work included:

RibTools is an experimental open-source implementation of the basic Pixar’s RenderMan REYES rendering architecture. The parser is able to parse simple RenderMan rib scene and shaders which run on a custom VM. Rendering of the micropolygons is performed via SIMD CPU instructions.
Parallelism is implemented at all levels:
See more details on: Implementing an experimental RenderMan compliant REYES renderer
I was the sole developer on this project. The main tasks were:

While employed at Square Enix, Japan, I led the development of a next generation 3D engine capable of optimizing production rendering scenes and reproducing them in real-time with Direct3D and many-core hardware.
The development was built around production-rendering graphics assets for the cut scenes of the Final Fantasy XIII. Those cut scenes were originally meant to be played only as movie clips. Our job was that of playing back those same scenes in a real-time 3D engine, regardless of the complexity of the original assets.
The engine supported very high resolution geometry and multi-gigabyte textures as well as per-vertex animation. I wrote rendering and compression technology capable of reducing computing and storage for the target hardware. Rendering was performed with Direct3D 10. Compression used lossy approaches based on DCT, Wavelets and Zero-tree encoding.

I was the lead engineer on the runtime portion of the project. My main tasks were:
![]()
While employed at Arika, Japan, I worked on “Tetris: The Grand Master Ace”, a launch title for Xbox 360 in Japan.
My involvement was mostly as a system programmer, taking care of the Xbox 360 platform including, rendering engine, network programming, audio engine. At the time we were working on an extra tight schedule to match the Xbox 360 release.
I was the senior engineer on the project. My main tasks were:

A real-time demo that uses Spherical Harmonics (SH) to quickly apply Image Based Lighting (IBL) for diffuse and ambient lighting.
The user can paint on a virtual cube map to freely apply lighting without the limitation of classical light sources.
The SH coefficients for the IBL are calculated on the CPU at every frame. The rendering is performed in OpenGL with a shader that calculates lighting of each vertex based on those SH coefficients.
This technique is based on the famous paper: “An Efficient Representation for Irradiance Environment Maps” by Ravi Ramamoorthi and Pat Hanrahan. I’ve since used Spherical Harmonics for diffused lighting or ambient lighting in every 3D engine that I wrote.
I was the sole developer on this project. The main tasks were:

While employed at SquareSoft, USA, I worked on the Windows port of the Final Fantasy VIII PlayStation game.
My main job was that of creating an abstraction layer between the PSX code and SquareSoft’s graphics library, which was based on DirectX. This drastically reduced porting time, as most code continued to compile as it did on the PlayStation.
Some code still needed fixing, in a few cases due to memory access bugs that did not appear on the original platform, due to lack of an MMU unit in the first PlayStation.

In 1997 I started working on the PSEmu Pro, the first PlayStation emulator.
PSEmu Pro was possibly also the most consequential of the PSX emulators, due to its DLL plugin system that simplified the creation of more modern emulators, such as ePSXe.
Subsequent emulators could focus development on a subset of the hardware, while relying on existing plugins made for the PSEmu Pro, to support other key portions of the hardware such the GPU and the GTE.
My initial involvement was writing the GPU (Graphics Processing Unit) rendering emulation in software rendering. I eventually joined the other two original developers (Duddie and Tratax), with the Kazzuya nickname, forming the final core team.
Once in the team, I worked on anything necessary, most notably the GTE (Geometry Transformation Engine), and MDEC (Macroblock Decoder) emulation. Constantly balancing between performance and accuracy.
This was a non-commercial effort, done for the sake of the challenge itself. I worked on this in my spare time, coordinating the effort online via IRC (Internet Relay Chat).

In 1997 I worked on the PC port (Windows and MS-DOS) of the now famous Oddworld Abe’s: Oddysee.
The game was originally written for the Sony PlayStation, which at the time had specialized hardware capabilities unavailable to consumer PCs, requiring creative solutions to achieve the same results with just a CPU. Although the game didn’t use 3D graphics, it ran on a 640x240 resolution and 16-bit color. The PC version was required to run at 640x480 with the same color resolution, with no hardware acceleration, using CPUs of the caliber of a Pentium 120.
My approach was to continue to use a 640x240 base resolution, but upscaling it with a cheap but effective smoothing filter that was fast enough for the target CPUs.
I also wrote an MDEC (Macroblock Decoder) simulator, to playback the movie assets in the original PlayStation format. The clips were essential to the narration of the game and were sometimes mixed with the live animation.
Video decoding had specialized hardware on the PSX, but had to be done with the CPU on PC, requiring some special optimizations to maintain the necessary frame rate to decode the 320x240 video clips and upscale them to 640x480.

In 1995 I worked on the PC port (MS-DOS) of Battle Arena Toshinden, a 3D fighting game and early PlayStation title.
For this port, we never received the full source code, so, much of the logic had to be written from scratch. My job was mostly writing the rendering engine, which had to run on regular Intel 486 and Pentium CPUs. I also wrote logic for the camera movement and some LAN network code (no Internet play yet !).
This was my first real job in the game industry, after a few years programming desktop software and developing 3D tech demos in my spare time (see RTMZ below).
A demo of the game is currently playable online at oldgames.sk !

RTMZ (previously RTMX) is a tech demo that I developed in the mid 90s.
The goal for the demo was that of showing off the real-time 3D rendering capabilities that I accumulated in years of personal R&D, as a teenager with a passion for computer graphics and games. Thankfully, this landed my first job in the game industry. Nothing sells like a cool demo.
In 2022 I released the old source code on GitHub for historical purposes.
The demo is written mostly in ‘C’ (C++ still had major performance issues at the time), and it ran on MS-DOS with VGA and SVGA resolutions on a 256 colors palette.
Major features are:
In 1993 I worked on the Mac (“Macintosh” at the time) edition of Easy-CD Pro, the first CD burning software for the Mac.
Although by that time I had been developing in ‘C’ on the Mac for a while, this was the first commercial product with a relatively wide reach that I worked on.
This was also my first experience working with the English language with a native speaker, when the programmer for the ISO image engine (originally built on a Sun workstation !) came to Rome to help us integrate his engine into the product.