<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Unity on Coyote Time</title>
    <link>https://blog.jonmikeys.com/tags/unity/</link>
    <description>Recent content in Unity on Coyote Time</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 15 Oct 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://blog.jonmikeys.com/tags/unity/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Flyweight and Object Pooling: Share What Repeats, Reuse What Churns</title>
      <link>https://blog.jonmikeys.com/posts/flyweight-and-object-pooling/</link>
      <pubDate>Thu, 15 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/flyweight-and-object-pooling/</guid>
      <description>Flyweight shares the data that repeats across thousands of objects. Object pooling reuses the instances that keep being created and destroyed. This guide covers ScriptableObject definitions, UnityEngine.Pool, handle-based pools, reset bugs, and when neither is worth it.</description>
    </item>
    <item>
      <title>Mediator Pattern in Games: One Middleman Instead of a Web of Direct Dependencies</title>
      <link>https://blog.jonmikeys.com/posts/mediator-pattern-in-games/</link>
      <pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/mediator-pattern-in-games/</guid>
      <description>A practical guide to the mediator pattern in game code: when a group of components needs to coordinate, and one scoped middleman beats a web of direct references.</description>
    </item>
    <item>
      <title>Service Locator in Unity: The Global Registry, Used Where It Belongs</title>
      <link>https://blog.jonmikeys.com/posts/service-locator-in-unity/</link>
      <pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/service-locator-in-unity/</guid>
      <description>Service locator gets dismissed as a global with nicer clothes. It has real, defensible uses at engine boundaries and in small games — here is where it earns its keep and where it rots.</description>
    </item>
    <item>
      <title>Using Jev for Game AI: Typed Decisions for GOAP</title>
      <link>https://blog.jonmikeys.com/posts/using-jev-for-game-ai-typed-decisions-for-goap/</link>
      <pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/using-jev-for-game-ai-typed-decisions-for-goap/</guid>
      <description>A practical guide to Jev&amp;rsquo;s decision types, the OpenRouter Decisions API, and using a typed choice to select an eligible GOAP goal.</description>
    </item>
    <item>
      <title>Visitor Pattern in Game Code: Add Tools Around Stable Data</title>
      <link>https://blog.jonmikeys.com/posts/visitor-pattern-in-game-code/</link>
      <pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/visitor-pattern-in-game-code/</guid>
      <description>A practical C# guide to the Visitor pattern in game code: where double dispatch helps, how to validate ability data, and when a switch or ordinary methods are clearer.</description>
    </item>
    <item>
      <title>Extension Methods in Unity: Make Calls Clear, Not Clever</title>
      <link>https://blog.jonmikeys.com/posts/extension-methods-in-unity/</link>
      <pubDate>Fri, 25 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/extension-methods-in-unity/</guid>
      <description>Use extension methods as small, honest vocabulary for Unity code while avoiding invisible cost, ambiguous APIs, fake-null traps, and miscellaneous helper drawers.</description>
    </item>
    <item>
      <title>Marshalling Between C# and C&#43;&#43; in Unity: Design the Boundary First</title>
      <link>https://blog.jonmikeys.com/posts/marshalling-csharp-cpp-unity/</link>
      <pubDate>Mon, 21 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/marshalling-csharp-cpp-unity/</guid>
      <description>A practical guide to moving data safely between Unity C# and C++ without letting ABI details, ownership mistakes, or hidden copies destabilize the game.</description>
    </item>
    <item>
      <title>Decorator Pattern in Games: Stack Behavior Without Subclass Explosion</title>
      <link>https://blog.jonmikeys.com/posts/decorator-pattern-in-games/</link>
      <pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/decorator-pattern-in-games/</guid>
      <description>Use decorators to stack optional game behavior around a stable interface, while keeping order, lifetime, allocation, and debugging costs visible.</description>
    </item>
    <item>
      <title>Octrees for Faster 3D Pathfinding</title>
      <link>https://blog.jonmikeys.com/posts/octrees-for-faster-3d-pathfinding/</link>
      <pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/octrees-for-faster-3d-pathfinding/</guid>
      <description>Build a smaller 3D navigation graph by giving open space large octree cells and reserving fine detail for obstacles, then run A* over the free leaves.</description>
    </item>
    <item>
      <title>Unity CullingGroup: Stop Updating What the Player Cannot Notice</title>
      <link>https://blog.jonmikeys.com/posts/cullinggroup-for-smarter-object-management/</link>
      <pubDate>Sun, 13 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/cullinggroup-for-smarter-object-management/</guid>
      <description>Use Unity&amp;rsquo;s CullingGroup API to turn camera visibility and distance bands into practical simulation budgets for crowds, effects, spawn points, and world objects.</description>
    </item>
    <item>
      <title>Unity Core CLI: 5 features I&#39;m excited for</title>
      <link>https://blog.jonmikeys.com/posts/unity-core-cli-5-features-im-excited-for/</link>
      <pubDate>Thu, 10 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/unity-core-cli-5-features-im-excited-for/</guid>
      <description>A practical look at five Unity CLI features that could make editor installs, CI builds, tests, version control, and connected Editor automation less brittle.</description>
    </item>
    <item>
      <title>C# Records in Unity: Value Semantics Without Fighting the Engine</title>
      <link>https://blog.jonmikeys.com/posts/csharp-records-in-unity/</link>
      <pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/csharp-records-in-unity/</guid>
      <description>Where C# records fit in Unity projects, where they cause trouble, and how to keep serialized data, runtime values, and live game objects separate.</description>
    </item>
    <item>
      <title>Build a Simple DI Container in C#: Object Graphs Without the Magic Trick</title>
      <link>https://blog.jonmikeys.com/posts/build-a-simple-di-container-in-csharp/</link>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/build-a-simple-di-container-in-csharp/</guid>
      <description>A practical from-scratch walkthrough for intermediate C# and Unity developers: build a small dependency injection container, then understand registration, recursive resolution, lifetimes, circular dependency errors, and Unity integration.</description>
    </item>
    <item>
      <title>Combining Reflex DI with Factories: Runtime Creation Without Container Soup</title>
      <link>https://blog.jonmikeys.com/posts/reflex-di-factories-abstract-factories/</link>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/reflex-di-factories-abstract-factories/</guid>
      <description>A practical follow-up on combining dependency injection with factory and abstract factory patterns in Unity, using Reflex as the container and one dungeon-room spawning context from start to finish.</description>
    </item>
    <item>
      <title>Factory and Abstract Factory Patterns: Create the Thing Without Spreading the Choice Everywhere</title>
      <link>https://blog.jonmikeys.com/posts/factory-and-abstract-factory-patterns/</link>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/factory-and-abstract-factory-patterns/</guid>
      <description>A practical guide to factory and abstract factory patterns in game code: when construction choices deserve a home, when a simple method is enough, and how to avoid turning creation code into architecture theater.</description>
    </item>
    <item>
      <title>Strategy Pattern in Games: Swap Behavior Without Growing a Branch Monster</title>
      <link>https://blog.jonmikeys.com/posts/strategy-pattern-in-games/</link>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/strategy-pattern-in-games/</guid>
      <description>A practical guide to using the strategy pattern in game code for weapons, movement, AI decisions, scoring rules, and other behavior that needs to change safely.</description>
    </item>
    <item>
      <title>Memento Pattern in Games: Save the State Without Exposing the Guts</title>
      <link>https://blog.jonmikeys.com/posts/memento-pattern-game-state-snapshots/</link>
      <pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/memento-pattern-game-state-snapshots/</guid>
      <description>A practical guide to using the memento pattern for undo, checkpoints, editor tools, and save snapshots in game code without leaking internal state everywhere.</description>
    </item>
    <item>
      <title>R3 and Reactive Programming in Unity: Use Streams Where Events Start to Fray</title>
      <link>https://blog.jonmikeys.com/posts/r3-reactive-programming-in-unity/</link>
      <pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/r3-reactive-programming-in-unity/</guid>
      <description>A practical look at using R3-style reactive streams in Unity without turning every button click, timer, and gameplay signal into architecture theater.</description>
    </item>
    <item>
      <title>Builder and Fluent Builder Patterns: Make Setup Readable Without Hiding the Cost</title>
      <link>https://blog.jonmikeys.com/posts/builder-fluent-builder-patterns/</link>
      <pubDate>Mon, 24 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/builder-fluent-builder-patterns/</guid>
      <description>A practical guide to builder-style APIs in game code: when they clarify setup, when object initializers are enough, and where fluent chains become a trap.</description>
    </item>
    <item>
      <title>Unity CLI and GitHub Actions: Run Edit Mode Tests on Every Push</title>
      <link>https://blog.jonmikeys.com/posts/unity-cli-github-actions-edit-mode-tests/</link>
      <pubDate>Sun, 23 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/unity-cli-github-actions-edit-mode-tests/</guid>
      <description>A practical Unity CI starter: install the Unity CLI, add a tiny Edit Mode smoke test, run it locally, then wire the same command into GitHub Actions.</description>
    </item>
    <item>
      <title>Memory Arenas in Game Code: Fast Scratch Space, Not a General Allocation Strategy</title>
      <link>https://blog.jonmikeys.com/posts/memory-arenas-in-game-code/</link>
      <pubDate>Tue, 18 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/memory-arenas-in-game-code/</guid>
      <description>How I use arena allocators for frame-local scratch data, why they beat per-object frees, and why they are not a replacement for pooling or the GC.</description>
    </item>
    <item>
      <title>Zero-Allocation LINQ in Unity: Keep the Query Style, Lose the Garbage</title>
      <link>https://blog.jonmikeys.com/posts/zero-allocation-linq-in-unity/</link>
      <pubDate>Mon, 10 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/zero-allocation-linq-in-unity/</guid>
      <description>A practical look at LINQ in Unity, where the allocations come from, and when a zero-allocation alternative like ZLinq is worth using.</description>
    </item>
    <item>
      <title>Native Collections and Burst for GC-Heavy Projects</title>
      <link>https://blog.jonmikeys.com/posts/native-collections-and-burst-for-gc-heavy-projects/</link>
      <pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/native-collections-and-burst-for-gc-heavy-projects/</guid>
      <description>A practical way to move hot data off the managed heap with NativeArray, NativeList, jobs, and Burst without turning the project into DOTS cosplay.</description>
    </item>
    <item>
      <title>Event Buses in Unity Architecture: Keep Systems Talking Without Tight Coupling</title>
      <link>https://blog.jonmikeys.com/posts/event-buses-in-unity-architecture/</link>
      <pubDate>Sun, 02 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/event-buses-in-unity-architecture/</guid>
      <description>A practical way to use event buses in Unity without turning them into hidden global state, leaky subscriptions, or another way to avoid design decisions.</description>
    </item>
    <item>
      <title>Hierarchical State Machines in Unity: Keep the Top Level Boring</title>
      <link>https://blog.jonmikeys.com/posts/hierarchical-state-machines-in-unity/</link>
      <pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/hierarchical-state-machines-in-unity/</guid>
      <description>A practical way to keep Unity state machines readable when several states share the same rules.</description>
    </item>
    <item>
      <title>Command Pattern in Games: Queue the Intent, Not the Button</title>
      <link>https://blog.jonmikeys.com/posts/command-pattern-in-games/</link>
      <pubDate>Sat, 25 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/command-pattern-in-games/</guid>
      <description>A practical look at the command pattern in game code, with examples for input, undo, replay, and when a direct call is still better.</description>
    </item>
    <item>
      <title>Cancellation Tokens in Unity: Stopping Async Work Before It Outlives the Scene</title>
      <link>https://blog.jonmikeys.com/posts/cancellation-tokens-in-unity/</link>
      <pubDate>Thu, 23 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/cancellation-tokens-in-unity/</guid>
      <description>A practical follow-up to async in Unity: how cancellation tokens keep loading flows, delays, and background work from hanging around after the object is gone.</description>
    </item>
    <item>
      <title>Mirror Multiplayer, Part 1: Authority First, RPCs Second</title>
      <link>https://blog.jonmikeys.com/posts/mirror-multiplayer-part-1-authority-first-rpcs-second/</link>
      <pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/mirror-multiplayer-part-1-authority-first-rpcs-second/</guid>
      <description>A practical way to structure Mirror games so the server owns the rules, clients send intent, and state sync stays boring.</description>
    </item>
    <item>
      <title>Async in Unity with UniTask: Waiting Without Turning the Main Thread into a Junk Drawer</title>
      <link>https://blog.jonmikeys.com/posts/async-in-unity-with-unitask/</link>
      <pubDate>Fri, 17 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/async-in-unity-with-unitask/</guid>
      <description>A practical way to use async and await in Unity without falling back to callback soup, extra GC churn, or tangled loading code.</description>
    </item>
    <item>
      <title>Benchmarking C# in Unity Without Lying to Yourself</title>
      <link>https://blog.jonmikeys.com/posts/benchmarking-csharp-in-unity/</link>
      <pubDate>Mon, 13 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/benchmarking-csharp-in-unity/</guid>
      <description>A practical way to benchmark Unity C# code without confusing profiling, frame time, and microbenchmarks.</description>
    </item>
    <item>
      <title>Building Game UI Systems That Stay Modular</title>
      <link>https://blog.jonmikeys.com/posts/modular-game-ui-systems/</link>
      <pubDate>Thu, 09 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/modular-game-ui-systems/</guid>
      <description>A practical UI structure for games: keep screens, views, and game logic separate so menus do not turn into a knot.</description>
    </item>
    <item>
      <title>Dependency Injection for Game Code: Keep Wiring at the Edges</title>
      <link>https://blog.jonmikeys.com/posts/dependency-injection-for-game-code/</link>
      <pubDate>Sun, 05 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/dependency-injection-for-game-code/</guid>
      <description>A practical look at dependency injection in game code, why it helps, and how to use it without turning your project into framework soup.</description>
    </item>
    <item>
      <title>Dependency Injection in Unity: Stop Letting Objects Hunt for Their Own Tools</title>
      <link>https://blog.jonmikeys.com/posts/dependency-injection-in-unity/</link>
      <pubDate>Sun, 05 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/dependency-injection-in-unity/</guid>
      <description>A practical way to make game code easier to test, refactor, and reason about.</description>
    </item>
    <item>
      <title>Using the Observer Pattern in Games</title>
      <link>https://blog.jonmikeys.com/posts/observer-pattern-in-games/</link>
      <pubDate>Sun, 05 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/observer-pattern-in-games/</guid>
      <description>A practical look at the observer pattern, event buses, and why game objects should communicate without dragging the whole scene graph into the conversation.</description>
    </item>
    <item>
      <title>A* Pathfinding: A Practical Guide for Game Developers</title>
      <link>https://blog.jonmikeys.com/posts/astar-pathfinding/</link>
      <pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/astar-pathfinding/</guid>
      <description>A practical explanation of A* pathfinding, why it works, and how to use it in game projects.</description>
    </item>
    <item>
      <title>Behavior Trees: A Cleaner Way to Organize Game AI</title>
      <link>https://blog.jonmikeys.com/posts/behavior-trees-for-game-ai/</link>
      <pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/behavior-trees-for-game-ai/</guid>
      <description>A practical introduction to behavior trees, how they work, and when they are a better fit than state machines.</description>
    </item>
    <item>
      <title>Blackboard Architecture for Game AI: Shared State Without the Mess</title>
      <link>https://blog.jonmikeys.com/posts/blackboard-architecture-for-game-ai/</link>
      <pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/blackboard-architecture-for-game-ai/</guid>
      <description>A practical explanation of blackboard architecture for game AI, why it exists, and how it helps behavior trees and GOAP share state cleanly.</description>
    </item>
    <item>
      <title>GOAP for Game AI: Let Actions Build the Plan</title>
      <link>https://blog.jonmikeys.com/posts/goap-for-game-ai/</link>
      <pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.jonmikeys.com/posts/goap-for-game-ai/</guid>
      <description>An introduction to GOAP, how it differs from behavior trees and FSMs, and how to use it in game AI.</description>
    </item>
  </channel>
</rss>
