Importing models

This guide walks through the full end-to-end process — from dumping your own GameCube ROM to viewing animations and shiny variants on an imported Pokémon model.

1. Blender setup

Before following this guide, make sure Blender and the addon are installed. The home page covers both steps:

Once that's done, return here and continue with step 2.

2. Ripping your own GameCube ROM

To work with Pokémon Colosseum or XD models, you need a copy of the game's data on your computer. The data lives on the disc, so it has to be "dumped" — read off the physical disc and saved as a single file (the ROM, also called an ISO).

Important: only dump a disc you legally own. Piracy is not supported. If you don't have your own legally-obtained dump do not continue with this process.
Note: ripping the ROM itself isn't covered in this guide — try searching the internet for a guide on how to do that. The output is an .iso (sometimes .gcm) file, which is what the rest of this guide refers to.

3. Getting model files from the ROM

An .iso is a single big file. Inside it is a tree of smaller files — the actual code, models, music, scripts, and everything else that makes up the game. We use the Dolphin emulator to crack the ISO open and pull those files out.

Step 1 — Install Dolphin

Download the latest stable build of Dolphin from dolphin-emu.org and install it. It's free and works on Windows, macOS, and Linux.

Step 2 — Add your ROM to Dolphin's game list

Launch Dolphin. Open the Config menu and click Paths. In the dialog, click Add, then browse to the folder containing your .iso. Close the dialog — your game will appear in Dolphin's main window.

Dolphin Config → Paths menu
Open Config → Paths to tell Dolphin where your ROMs live.
Dolphin add folder dialog
Click Add and pick the folder that contains your .iso file.
Dolphin main game list with Pokemon XD
Once added, your game appears in Dolphin's main window.

Step 3 — Open the disc's contents

Right-click your game in the list and choose Properties. In the window that opens, click the Filesystem tab. This shows the tree of files stored inside the disc.

Right-click menu showing Properties
Right-click the game and choose Properties.
Filesystem tab in Properties
The Filesystem tab shows everything packed inside the disc.

Step 4 — Extract the disc to a folder

At the top of the file tree there's an entry called Disc. Right-click it and choose Extract Entire Disc…. Pick an empty folder on your computer to extract into — for example, a new folder on your Desktop called Pokemon-XD-Dump. Wait a few minutes while it extracts.

Right-click Disc → Extract Entire Disc
Right-click the Disc entry and pick Extract Entire Disc….

Step 5 — Find the model files

Inside the folder you extracted to, you'll find two subfolders: sys/ (system files) and files/ (game data). The model files live inside files/, usually packaged into archives ending in .fsys. Different kinds of model live in different archives:

Model type File extension Where to find it
Pokémon and trainer battle models .pkx Inside pkx_<name>.fsys archives — for Pokémon, the name is the species' Japanese name transliterated in romaji (e.g. pkx_fushigidane.fsys for Bulbasaur). For trainers, it's their development codename, which rarely matches the in-game name.
Map / scene models .rdat Inside map archives such as M1_out.fsys.
Overworld models (NPCs, props) .dat Inside the same map archives, and inside people_archive.fsys and a few others.
Battle-move animations .wzx Inside wzx_*.fsys archives.
Cameras .cam Usually inside the map archives too.

.fsys archives themselves can also be loaded directly by the plugin — any models contained in the archive are imported straight into the Blender scene.

Tip: for pkx_*.fsys archives in Colosseum and XD, the name in the filename is the species' Japanese name in romaji (for Pokémon) or the trainer's development codename (which rarely matches the in-game name). If you're struggling to find the right name, ask on the community Discord.
Note: other games (such as the Smash Bros. and Kirby titles) don't use .fsys archives — the .dat model files are accessible directly in the dumped files.

Step 6 — Extract the model from inside the archive

An .fsys file is itself an archive — it can contain multiple files of different types (models, music, scripts, and any other kind of data) compressed and bundled together. Think of it as the game's equivalent of a .zip file.

Note: the FSYS Tool is helpful when you only want to load specific models out of a large archive. Unpacking the .fsys is also necessary if you plan to repack it later — for example, after swapping out one of the models inside with a new one you exported with the plugin.

4. Importing a model

Once the plugin is installed and you have an .fsys archive (or any other supported file type) on disk, importing is a single menu choice.

Step 1 — Open the import dialog

In Blender, open the File menu, hover over Import, and click Gamecube model (.dat). A file browser will open.

File → Import → Gamecube model menu
File → Import → Gamecube model (.dat).

Step 2 — Pick a file

Browse to the model file you want to load. The importer accepts:

Step 3 — Choose your import options

On the right-hand side of the file browser is a sidebar with several checkboxes and dropdowns. The defaults are fine for most Pokémon Colosseum / XD models, but here's what each one does:

Import options sidebar
The import options sidebar.
Option Default What it does
Game of Origin Colosseum / XD Tells the importer which game your file came from. Pick Kirby Air Ride, Super Smash Bros., or Other if your file is from one of those games instead.
Colo/XD Kind PKX Pokémon Visible only when the previous option is Colosseum / XD. Pick PKX Pokémon for Pokémon models, PKX Trainer for trainer models, or DAT Model for raw .dat files that aren't Pokémon-related (overworld props, NPCs, etc.).
Setup Workspace on Auto-arranges the Blender workspace for animation work: splits the viewport, opens an Action Editor (animation panel), and sets playback to end at frame 60. Leave on unless you want to keep your current layout.
Import Lights off Most game models don't ship with lights. Turn on if you specifically need them.
Import Cameras off Same idea — only flip this on if the file contains camera data you care about (e.g. a cutscene camera).
Use Legacy Importer off Routes through the older import code path. For comparison/debugging only. Leave off.
Note: enable Import Lights and Import Cameras if you plan to re-export the model back into the game after editing — this preserves the original light/camera configurations. For other use cases (rendering, animation, etc.) it's more common to set up your own custom lights and cameras instead.

Step 4 — Click Import

Click the blue Import DAT button at the bottom-right of the file browser. After a few seconds, the model appears in the viewport.

Imported model in the Blender viewport
The model loaded into Blender, with its armature and meshes ready to edit.

Step 5 — Switch the viewport to Material Preview

By default Blender shows the model in solid shading, so textures and materials don't appear. In the top-right corner of the 3D viewport, click the third sphere icon (Material Preview) to see the model with its textures applied.

Material Preview shading mode in the viewport header
Switching the viewport to Material Preview reveals the model's textures and materials.

What got imported

5. Viewing animations

Each animation in the source file becomes a Blender Action. Actions are interchangeable animation clips you can switch between on the same armature.

Step 1 — Find the Action Editor

If you left Setup Workspace on, the Action Editor is already open in the right panel. Otherwise, change one of your editor panels to the Action Editor: click the small icon in the top-left corner of any editor and pick Dope Sheet, then in the Dope Sheet's mode dropdown (also top-left) switch to Action Editor.

You may need to scroll the Action Editor's menu bar to the side to see the animations drop-down menu.

Action Editor panel
The Action Editor — every imported animation appears here as a selectable Action.

Step 2 — Switch between actions

With the armature selected, click the action name (or the small icon next to it) at the top of the Action Editor. A dropdown shows every animation that was imported. Pick one — the viewport updates immediately.

Note: if the armature isn't selected before choosing an animation, the animation won't change. To select the armature, click on it in the Outliner panel on the right — the importer names it something like darklugia_skeleton_0.
Action dropdown showing imported animations
The dropdown of imported animations. Pick one to make it active.

Step 3 — Play the animation

Press the spacebar to play. The viewport plays the animation in a loop. Press spacebar again to stop. The timeline at the bottom of the screen shows the current frame; drag the playhead to scrub manually. You can usually see roughly how long the animation is by viewing the timeline in the Action Editor above.

Timeline with playback controls
The timeline at the bottom of Blender. The play button and the playhead are highlighted.

Adjusting the playback range

The importer sets the timeline end frame based on the length of the first animation it selects. If you switch to a longer animation and it looks cut off, edit the End field in the timeline header to a higher value (e.g. 200) and play again.

Timeline end frame field
The End field in the timeline controls how many frames Blender plays before looping.

6. Viewing shiny variants (Pokémon)

For .pkx Pokémon models, the addon automatically reads the shiny color parameters from the file and builds a toggle into the materials that you can use to enable and disable the shiny colours at will.

Step 1 — Select the model

In the Outliner panel on the right, click the model's entry to select it.

Model selected in viewport
Select the model.

Step 2 — Open Object Properties

On the right side of Blender, in the Properties editor (the column of tab icons), click the orange square icon — that's the Object Properties tab.

Object Properties tab icon highlighted
The orange square icon opens the Object Properties tab.

Step 3 — Find the Shiny Variant panel

Scroll down inside Object Properties until you find a section called Shiny Variant. Expand it by clicking the triangle next to its name.

Shiny Variant panel expanded
The Shiny Variant panel with the toggle and color controls.

Step 4 — Enable the shiny preview

Click the Shiny checkbox at the top of the panel. The model's colors update immediately to the shiny variant.

Shiny variant toggled on, showing alternate colors
Shiny on — the model now shows its alternate coloration.

Step 5 — Tweak the shiny values

Inside the panel you can also tweak which color channels are routed where, and adjust the brightness offset per channel. Try different configurations to preview what a custom shiny would look like — the viewport updates live as you update the values.

Shiny variant panel with channel routing and brightness offsets edited
Edit the channel routing and brightness offsets to explore custom shiny configurations.
Not every Pokémon has shiny parameters. Some species use an entirely separate model for their shiny form instead of a color swap. For those, the Shiny Variant panel won't appear — you need to import the shiny model file separately.
Note: the addon also ships with a standalone add_shiny_filter.py script that applies the same shiny filter logic to any arbitrary model. Run it from Blender's Text Editor — see the running scripts guide for the full walkthrough.

7. Troubleshooting

Stub — common import problems and fixes coming soon.

If you hit a problem the docs don't cover, ask on the community Discord: discord.gg/xCPjjnv. Include the file you were trying to import and any error messages Blender showed (the bottom of the Blender window, or Window → Toggle System Console on Windows).

← Back to home