PX4 SIH running on real flight controller hardware with Unity visualization

Running PX4 SIH on Real Hardware: Custom Firmware for In-the-Loop Flight Simulation

Getting PX4’s Simulation-In-Hardware (SIH) module running on a production flight controller — discovering the firmware doesn’t include SIH, building a custom PX4 with flash-trimming, fan-out routing serial MAVLink to both the simulator and ground station, and connecting it all to the Unity visualization pipeline.

April 14, 2026 · 16 min · Pavel Guzenfeld
Procedural settlement with OSM buildings, roads, and entities in a headless Unity simulation

Procedural Settlement: Generating 3D Buildings, Roads, and Entities from OpenStreetMap in Unity

How I replaced a proprietary terrain bundle with a fully procedural environment generated from open-source data — hundreds of buildings with window textures from OpenStreetMap, terrain-hugging roads, satellite-driven vegetation, and multiple ground and air entities — all built at runtime in a headless Unity Docker simulation.

April 13, 2026 · 10 min · Pavel Guzenfeld
Satellite imagery comparison: 15m vs 0.13m resolution in headless Unity simulation

The Satellite Tile Hunt: From 15m Blobs to 13cm Resolution in an Air-Gapped Simulation

A practical guide to finding, downloading, and fusing satellite imagery and elevation data for an air-gapped Unity simulation. Covers every free tile provider (ESRI, Bing, Google), every free DTM source (SRTM, Copernicus, Mapzen), how to stitch thousands of tiles into Unity-ready textures, and the dead ends along the way.

April 5, 2026 · 13 min · Pavel Guzenfeld
FPS optimization pipeline for headless Unity simulation

From 21 to 25 FPS: Profiling and Optimizing a Headless Unity Simulation Pipeline

A detailed technical walkthrough of profiling and optimizing a headless Unity simulation from 21 to 25 FPS — covering NVENC GPU encoding, batch camera rendering, GPU instancing, static batching, and the failed URP migration. Every measurement, every dead end, every lesson.

April 4, 2026 · 8 min · Pavel Guzenfeld
Satellite terrain and natural sky in headless Unity simulation

Natural Skies and Satellite Terrain in a Headless Unity Simulation

How I replaced flat brown terrain and solid-color sky in a headless Unity 6 Docker simulation with real satellite imagery, SRTM topography, and a custom panoramic skybox — all fully air-gapped, no runtime network dependency. Includes NVENC GPU encoding, custom shaders, and every dead end along the way.

April 4, 2026 · 12 min · Pavel Guzenfeld
From Magenta to Desert: Fixing Unity Terrain in Docker

From Magenta to Desert: Fixing Cross-Platform Unity Terrain Rendering in Docker

A detailed account of fixing terrain rendering in a headless Unity 6 Docker simulation — from magenta buildings and gray streaming cameras to textured villages with working RTSP feeds. Covers cross-platform asset bundle shader mismatches, runtime material conversion, texture recovery from broken materials, and every dead end along the way.

March 27, 2026 · 12 min · Pavel Guzenfeld
PX4 SITL to Unity in Docker: A 60-Hour Odyssey

Connecting PX4 SITL to a Headless Unity Simulation in Docker: A 60-Hour Debugging Odyssey

A three-day odyssey connecting PX4 flight controller to a GPU-rendered Unity drone simulation running headless inside Docker — through licensing labyrinths, shader abysses, coordinate system riddles, native library dragons, and a TCP protocol twist ending nobody expected.

March 21, 2026 · 10 min · Pavel Guzenfeld
Unity Headless in Docker with GPU, RTSP, and MAVLink

Running Unity 2019.4 Headless in Docker with GPU Rendering, RTSP Camera Streaming, and MAVLink

A detailed technical account of containerizing a Unity 2019.4 drone simulation with GPU-accelerated rendering, dual RTSP camera streaming via FFmpeg/mediamtx, and MAVLink drone control — including every obstacle encountered and how it was solved.

March 19, 2026 · 12 min · Pavel Guzenfeld