<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Tommy Lahitte</title>
    <link>https://tommylahitte.com/</link>
    <description>Unreal Engine debugging tips, projects, and field notes by Tommy Lahitte.</description>
    <language>en</language>
    <lastBuildDate>Thu, 09 Apr 2026 00:00:00 GMT</lastBuildDate>
    <atom:link href="https://tommylahitte.com/feed.xml" rel="self" type="application/rss+xml"/>

    <item>
      <title>Claude Code Toolkit: Pick the Right Tool for the Job</title>
      <link>https://tommylahitte.com/blog/claude-code-toolkit-cheat-sheet/</link>
      <guid isPermaLink="true">https://tommylahitte.com/blog/claude-code-toolkit-cheat-sheet/</guid>
      <description>A concise decision guide for Claude Code&apos;s customization toolkit: CLAUDE.md, Memories, Rules, Skills, Agents, MCP, and Hooks. Stop guessing and pick the right tool instantly.</description>
      <pubDate>Thu, 09 Apr 2026 00:00:00 GMT</pubDate>
      <category>Journal</category>
    </item>

    <item>
      <title>Retrofitting a Vintage Phone into a WiFi Controller</title>
      <link>https://tommylahitte.com/blog/retrofitting-vintage-phone-wifi-controller/</link>
      <guid isPermaLink="true">https://tommylahitte.com/blog/retrofitting-vintage-phone-wifi-controller/</guid>
      <description>A 2015 desk telephone becomes a physical WebSocket controller for live use — OBS, Max/MSP, custom software. One ESP32-C6, two independent circuits, and a few empirical surprises along the way.</description>
      <pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate>
      <category>Journal</category>
    </item>

    <item>
      <title>Building ElevenApps: a Native macOS Voice Interface for an Immersive Show</title>
      <link>https://tommylahitte.com/blog/elevenapps-immersive-show-swift/</link>
      <guid isPermaLink="true">https://tommylahitte.com/blog/elevenapps-immersive-show-swift/</guid>
      <description>ElevenLabs is a web-first product. When a friend needed to wire AI voice agents directly into a physical show — specific microphone in, specific audio interface out — we had no choice but to build a native macOS app from scratch in Swift.</description>
      <pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate>
      <category>Journal</category>
    </item>

    <item>
      <title>Technical Director at the People Person Show</title>
      <link>https://tommylahitte.com/blog/technical-director-people-person-show/</link>
      <guid isPermaLink="true">https://tommylahitte.com/blog/technical-director-people-person-show/</guid>
      <description>Working with Fab on a work in progress theatre show in London, building electronic props that blur the line between vintage objects and AI. A retrofitted telephone, a sentient street light, and a small audience in a Hackney studio.</description>
      <pubDate>Tue, 11 Mar 2025 00:00:00 GMT</pubDate>
      <category>Journal</category>
    </item>

    <item>
      <title>Use Simulate to Watch Runtime Actors in the Editor</title>
      <link>https://tommylahitte.com/tips/use-simulate-to-watch-runtime-actors/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/use-simulate-to-watch-runtime-actors/</guid>
      <description>If you need to inspect spawned actors, AI movement, or live transforms from the editor viewport, use Simulate instead of expecting a second editor viewport to behave like a runtime game camera. It gives you a much better debugging surface for non-destructive runtime inspection.</description>
      <pubDate>Mon, 13 Apr 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Use Asset Registry Tags to Audit Content at Scale</title>
      <link>https://tommylahitte.com/tips/use-asset-registry-tags-to-audit-content/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/use-asset-registry-tags-to-audit-content/</guid>
      <description>Asset Registry tags are one of the fastest ways to expose QA-relevant metadata directly in the Content Browser and query it without loading assets. I use them to flag ownership, validation state, gameplay categories, and anything else the team needs to filter fast.</description>
      <pubDate>Mon, 13 Apr 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Build a Real Pre-Release Test Pass</title>
      <link>https://tommylahitte.com/tips/build-a-real-pre-release-test-pass/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/build-a-real-pre-release-test-pass/</guid>
      <description>A stable editor session is not a release signal. This Unreal-focused pre-release pass combines packaged builds, smoke automation, performance captures, and log review so regressions show up before players do.</description>
      <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Don&apos;t Commit Binaries to Source Control</title>
      <link>https://tommylahitte.com/tips/dont-commit-binaries-to-source-control/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/dont-commit-binaries-to-source-control/</guid>
      <description>For Unreal C++ projects, committing Binaries usually creates stale build problems, larger repos, and harder CI cleanup. Track source, config, content, and project files instead, then regenerate outputs locally or in CI.</description>
      <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Add C++ to a Blueprint-Only Unreal Project Manually</title>
      <link>https://tommylahitte.com/tips/editor-blueprint-to-cpp-conversion/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/editor-blueprint-to-cpp-conversion/</guid>
      <description>Blueprint-only projects have no Source folder, no module definition, and no build targets. This tip covers the complete manual setup for UE5, the same steps the editor wizard runs silently when you click &quot;Add New C++ Class&quot;.</description>
      <pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Content Browser Metadata Search</title>
      <link>https://tommylahitte.com/tips/content-browser-metadata-search/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/content-browser-metadata-search/</guid>
      <description>Query Unreal asset metadata directly from the Content Browser search bar to filter by triangle count, collection membership, texture group, and more.</description>
      <pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Downgrading a Unreal Engine Asset to an Older Version</title>
      <link>https://tommylahitte.com/tips/downgrade-unreal-engine-asset/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/downgrade-unreal-engine-asset/</guid>
      <description>Accidentally re-saved assets in a newer engine version? You can hex-edit the custom version numbers stored in the .uasset header to trick an older engine into loading them - as a last resort.</description>
      <pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Setting Up Unreal Engine on Linux via Perforce and UGS CLI</title>
      <link>https://tommylahitte.com/tips/unreal-linux-perforce-ugs/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/unreal-linux-perforce-ugs/</guid>
      <description>Full workflow for getting Unreal Engine running on a Linux machine from a Perforce stream: install the dev toolchain, init a UGS workspace, install Clang, build, and launch the editor.</description>
      <pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Color Science Fundamentals in Unreal Engine</title>
      <link>https://tommylahitte.com/tips/color-science-unreal-engine/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/color-science-unreal-engine/</guid>
      <description>Understanding color spaces, tone mapping, and test patterns is essential for validating visual fidelity in Unreal Engine. Use calibrated test patterns and the colour-science library to catch rendering regressions early.</description>
      <pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Sharing a Plugin Across Projects with UnrealGameSync</title>
      <link>https://tommylahitte.com/tips/centralized-plugin-unrealgamesync/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/centralized-plugin-unrealgamesync/</guid>
      <description>Host your shared assets in a standalone plugin project, then attach it to any number of Unreal projects via two config changes - one in UnrealGameSync.ini to sync the content, one in the .uproject to expose it.</description>
      <pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Mastering Output Log Filters in Unreal Editor</title>
      <link>https://tommylahitte.com/tips/mastering-output-log-filters-in-unreal-editor/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/mastering-output-log-filters-in-unreal-editor/</guid>
      <description>The Output Log is noisy by default. Learn to use categories, verbosity levels, and custom log channels to cut through the noise and surface exactly the signal you need.</description>
      <pubDate>Sun, 10 Mar 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Control Log Verbosity Per Category at Launch</title>
      <link>https://tommylahitte.com/tips/control-log-verbosity-per-category/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/control-log-verbosity-per-category/</guid>
      <description>Drowning in log noise or missing critical messages? The -LogCmds launch argument lets you set verbosity per log category without recompiling, from silencing entire subsystems to enabling Verbose output for one specific category.</description>
      <pubDate>Fri, 08 Mar 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Speed Up Builds with Unreal Build Accelerator (UBA)</title>
      <link>https://tommylahitte.com/tips/speed-up-builds-with-unreal-build-accelerator/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/speed-up-builds-with-unreal-build-accelerator/</guid>
      <description>UBA distributes compilation tasks across a Horde cluster, dramatically reducing full rebuild times. Enabling it is a single XML config change, no code modifications required.</description>
      <pubDate>Tue, 05 Mar 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Track Down Memory Corruption with Stomp2Malloc</title>
      <link>https://tommylahitte.com/tips/stomp2malloc-memory-corruption-debugging/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/stomp2malloc-memory-corruption-debugging/</guid>
      <description>Heap corruption bugs are some of the hardest to reproduce; they often crash far from the actual fault. Unreal&apos;s Stomp2Malloc allocator places every allocation on a guarded memory page, so use-after-free and buffer overruns crash immediately at the source.</description>
      <pubDate>Fri, 01 Mar 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Capture Unreal Insights Traces with the Right Arguments</title>
      <link>https://tommylahitte.com/tips/unreal-insights-trace-arguments/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/unreal-insights-trace-arguments/</guid>
      <description>Unreal Insights trace files give you a frame-by-frame breakdown of CPU, GPU, task graph, rendering commands, and more. The right combination of -trace= channels makes the difference between a useful trace and an overwhelming one.</description>
      <pubDate>Sun, 25 Feb 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Profile Memory Usage by Category with LLM</title>
      <link>https://tommylahitte.com/tips/profiling-memory-with-llm/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/profiling-memory-with-llm/</guid>
      <description>Unreal&apos;s Low Level Memory Tracker (LLM) breaks down live memory consumption by stat group: textures, meshes, audio, RHI, and more. Two commands and a launch flag give you a live memory readout in the viewport.</description>
      <pubDate>Tue, 20 Feb 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Increase the GPU TDR Delay for Long Render Operations</title>
      <link>https://tommylahitte.com/tips/increase-gpu-tdr-delay-for-unreal/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/increase-gpu-tdr-delay-for-unreal/</guid>
      <description>Windows kills the GPU after 2 seconds of no response by default (TDR). Unreal operations like heavy shader compilation or DDC filling can easily exceed that. A quick registry edit raises the limit and prevents spurious GPU resets.</description>
      <pubDate>Thu, 15 Feb 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Restart Your Graphics Driver Without Rebooting</title>
      <link>https://tommylahitte.com/tips/restart-graphics-driver-without-rebooting/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/restart-graphics-driver-without-rebooting/</guid>
      <description>When Unreal hangs your GPU or your display goes black, you can recover in seconds with no reboot. The Windows keyboard shortcut Win+Ctrl+Shift+B restarts the graphics driver on the fly.</description>
      <pubDate>Sat, 10 Feb 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Bypass Engine Package Version Compatibility Checks</title>
      <link>https://tommylahitte.com/tips/bypass-engine-package-compatibility-check/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/bypass-engine-package-compatibility-check/</guid>
      <description>Unreal refuses to open assets saved with a different engine version by default. Two console variables in DefaultEngine.ini disable these checks, letting you open and inspect assets across engine versions without a full migration.</description>
      <pubDate>Mon, 05 Feb 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Automating QA Checks with Functional Tests</title>
      <link>https://tommylahitte.com/tips/automating-qa-checks-with-functional-tests/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/automating-qa-checks-with-functional-tests/</guid>
      <description>Unreal&apos;s Functional Testing framework lets you write repeatable, CI-friendly test maps that verify gameplay logic, performance budgets, and visual correctness automatically.</description>
      <pubDate>Thu, 01 Feb 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Perforce CLI Essentials for Unreal QA</title>
      <link>https://tommylahitte.com/tips/perforce-cli-essentials-for-unreal-qa/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/perforce-cli-essentials-for-unreal-qa/</guid>
      <description>When the P4V GUI is slow or unavailable, the p4 command line gets the job done fast. These are the commands you reach for most often when managing workspaces, switching users, and troubleshooting sync issues.</description>
      <pubDate>Tue, 30 Jan 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Fix Windows Long File Path Errors in Unreal Projects</title>
      <link>https://tommylahitte.com/tips/fix-windows-long-file-path-limitation/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/fix-windows-long-file-path-limitation/</guid>
      <description>Windows enforces a 260-character path limit by default. Unreal projects, especially with nested content folders, frequently exceed this. A one-line registry change and an Editor Preferences toggle permanently resolve MAX_PATH errors.</description>
      <pubDate>Thu, 25 Jan 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>DX12 Launch Arguments for GPU Crash Debugging</title>
      <link>https://tommylahitte.com/tips/dx12-debug-launch-arguments/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/dx12-debug-launch-arguments/</guid>
      <description>When Unreal crashes on the GPU side with no useful callstack, two launch arguments (-d3ddebug and -gpucrashdebugging) enable the D3D validation layer and NVIDIA Aftermath/Breadcrumbs to capture the exact operation that caused the crash.</description>
      <pubDate>Sat, 20 Jan 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Debugging with the Visual Logger</title>
      <link>https://tommylahitte.com/tips/debugging-with-the-visual-logger/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/debugging-with-the-visual-logger/</guid>
      <description>The Unreal Engine Visual Logger (VLog) lets you record and replay structured runtime data (positions, AI states, sphere traces) frame by frame without a single breakpoint.</description>
      <pubDate>Mon, 15 Jan 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>

    <item>
      <title>Generate Visual Studio Project Files from the Command Line</title>
      <link>https://tommylahitte.com/tips/generate-visual-studio-project-files/</link>
      <guid isPermaLink="true">https://tommylahitte.com/tips/generate-visual-studio-project-files/</guid>
      <description>Right-clicking a .uproject in Explorer is the usual way to regenerate VS project files, but it can fail silently or use the wrong engine. The command-line approach is more reliable and works for both Launcher installs and source builds.</description>
      <pubDate>Wed, 10 Jan 2024 00:00:00 GMT</pubDate>
      <category>Unreal Tips</category>
    </item>
  </channel>
</rss>