GBMaverick • Unreal Engine 5.7

Startup and Help Guide

GBMaverick is a UE5 plugin for running Game Boy and Game Boy Color content on meshes, screens, and in-world displays. This page covers the first setup path, ROM import workflow, saves, input, UI, and the most common packaging expectations.

Runtime Component

UGBMaverickScreenComponent drives ROM loading, video output, audio, saves, UI, and input.

ROM Asset Type

UGBMaverickROMAsset lets you import .gb and .gbc files as cooked Unreal assets.

Editor Import Support

GBMaverickEditor supplies the asset import path used by the Content Browser.

First Setup

  1. Enable the GBMaverick plugin in your Unreal project and restart the editor if prompted.
  2. Add or select an actor with a visible mesh, usually a plane, quad, screen prop, or monitor mesh.
  3. Add GBMaverickScreenComponent to that actor.
  4. Set the target mesh component and the material index the emulator should write into.
  5. Use a material with a texture parameter named ScreenTexture, or set the component to your own parameter name.
Recommended: Keep the screen material simple while validating the setup. Start with an unlit or lightly shaded material that clearly shows the emulator texture.

Loading Games

Cooked / shippable workflow

  1. Drag a .gb or .gbc file into the Content Browser.
  2. Unreal imports it as a GBMaverickROMAsset.
  3. Assign that asset to the component's ROM asset field.
  4. Package normally. Imported ROM assets are cooked with the build.

Loose file workflow

  1. Set a development ROM file path directly on the component.
  2. Use this for quick iteration inside the editor.
  3. Do not rely on loose file paths for a packaged commercial build unless you intentionally want external user-managed ROM files.

Default UI

The built-in UI can show a lightweight overlay for ROM selection and status. It is intended as a practical startup layer, not as the final presentation UI for your project.

Show Default UI
Enables the built-in overlay widget.
Show Status in Default UI
Displays status text such as ROM scan results, save events, and audio readiness.
Default Widget Class
Lets you replace the stock widget with a project-specific widget while keeping the plugin behavior.

Input

The component supports gamepad-driven play out of the box and exposes input remapping in the details panel.

Save Data

Audio

Packaging Notes

Troubleshooting

Included emulator source is first-party GBMaverick code under the plugin source tree and ships as part of the plugin implementation.

Quick Checklist

Plugin enabled • Screen component added • Material bound to ScreenTexture • ROM asset assigned • Save path verified • Audio enabled if needed