Tutorial [Tutorial] Export your Pokémon animated models from Nintendo Switch to Unity Engine

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
Hey folks! Some of you might know me from my tutorial about how to export from 3DS games to Unity Engine, exporting lets go models and animate them with Mixamo or exporting Switch models and animate them with 3DS animations.

Well, thanks to Mvit, Golui, Reisyukaku, @KillzXGaming and the rest of the PokéModding team, we can now export the models and animations from Nintendo Switch games to Unity Engine in a few minutes.

Lets start!

NOTE: This DOESN'T apply Mystery Dungeon DX. At the moment of this post, Lets Go animations are the only ones that fully work. SWSH mostly work, but have some key issues you need to fix by hand. Also, Blender importer is not working properly, but 3DS Max is, so we will use it.


What do you need:

- Pokémon Lets Go Eevee/Pikachu/Sword/Shield decrypted
- Switch Toolbox: https://github.com/KillzXGaming/Switch-Toolbox
- 3DS Max (I will use 2019 for this tutorial)
- This 3DS Max Script: Download
-SMD plugin for 3DS Max: Download
- Unity Engine


Step 1: Prepare your game.

- Get the desired game (In this case Pokémon Sword)
- Decrypt the game with your favourite method.
I recommend taking a look to these tutorials if you don't know how to do it: https://gbatemp.net/threads/decrypt...backup-loading-ryujinx-yuzu-in-1-click.506954 or https://gbatemp.net/threads/extract-nsp-nca-xci-update-all-in-one-tool-for-layeredfs.511156/
- Place all files anywhere in your PC.

Step 2: Get the desired model and export the GFBMDL file.

- Open Switch Toolbox
- Click on File > Open.
- Look for the Pokémon gfpak you want to export. In this case, I'm gonna export Sobble which is pm0951_00_00.gfpak (if you want to check the IDs to know which one matches a Pokémon, check this thread: https://gbatemp.net/threads/tutoria...-and-animate-them-with-3ds-animations.552486/

- Click on (+) next to the gfpak name in the hierarchy and the list will be displayed. We need to double click in > Quick Access > Models > gfbmdl file. (rare is for Shiny one). Once you do it, it will show more options and the model will be rendered.

upload_2020-5-10_23-2-49.png


You can 2 two things here: Export the model or export the gfbmdl.

A) Exporting the GFBMDL

- Right click on the gfbmdl > archive > export raw data > save the gfbmdl anywhere in your computer (remember where).


sobble.png


- Right click on Textures > Export All > Save them anywhere you want

B) Exporting the model as DAE:

- Instead of Archive > Export Raw Data, just click on Export Model > Save them anywhere you want. Toggle export all textures to export every used texture with it.

Step 3: Export all the animations

-
Click on (+) next to Quick access > Animations
- Double click on each .gfbanim. Then, if you select again the gfbmdl (with left click) and then select any gfbanim, the animation will be displayed in the timeline.

upload_2020-5-10_23-7-48.png


- You need to go one by one > Right click > Export Animation > Save them wherever you want (same folder as the gfbmdl helps to have everything ordered).

Step 3: Export the 3D model and add animations to it.

- Download SMD plugin and install it.

A) If you exported the GFBMDL file:

- Download the GFBMDL script.
- Unzip the script anywhere in your computer.
- Run 3DS Max.
- In the toolbar, click on Scripting > Run Script > Open the script
- A new window will appear.

upload_2019-8-31_14-22-39-png.178000


- Click on Import *.GFBMDL > Look for the GFBMDL file exported in step 2 and open it.
- The model will load.

upload_2020-5-10_23-15-42.png


B) If you exported the .DAE:

- File > Import > Look for the exported DAE in step 2.
- Model will load.


- After that, click on File > Import > select the animations exported in step 3. They are in .SMD Files.
- Sword Models need to be rotated in 90º on the X axis.

upload_2020-5-10_23-21-54.png


- File > Game Exporter > Select the location where the FBX will be saved > Export.

Step 4: Import animations into Unity

- Open Unity Engine
- Create/open your project
- Drag the FBX to the project resources tab.
- Click on the FBX. In the inspector > You will see Avatar definition as No Avatar> Click there and select "Create from this model" > Apply
- Now Click on the arrow in the FBX to open it > Select all animationclip files > Left Control + D to duplicate them outside the FBX
- Toggle loop whenever is needed.
- Add it to your scene and give it some cool materials (Remember textures must be mirrored in the same way 3DS ones: https://gbatemp.net/threads/tutoria...ed-models-from-3ds-to-unity-engine-3d.532962/).

Step 5: Enjoy!

screenshot_1.png


Got stuck already? I made a video of the full process:


NOTE: If animations make 3DS Max to crash, it maybe because of decimal character (comma or dot) depending on your region. Check your 3DS Max use same character than the parsed animation and change them if so.

Credits:


- @KillzXGaming: Switch Toolbox
- @Demothene: PLGU Shaders

- @PRAGMA: Romfs decrypting tutorial
- @huma_dawii: Other decrypting tutorial
- @Random Talking Bush: 3DS Max Exporter Script
- Rei, Golui, Mvit and all pokéModding team for making this possible.


Dev Community:

I created a Discord where some of the best Unity, Godot, RMXP and Unreal pokémon fanmade devs discuss and help each other. Wanna join? https://discord.gg/pYBWwAa

Other useful threads:

- https://gbatemp.net/threads/tutoria...-and-animate-them-with-3ds-animations.552486/

- https://gbatemp.net/threads/tutoria...ainer-models-and-rig-them-with-mixamo.547159/

- https://gbatemp.net/threads/tutoria...ed-models-from-3ds-to-unity-engine-3d.532962/
- https://gbatemp.net/threads/tutorials-discussion-how-to-make-pokemon-shaders.547875/
 
Last edited by Manurocker95,

CH_obsidian

Member
Newcomer
Joined
May 11, 2020
Messages
5
Trophies
0
Age
34
XP
29
Country
China
--------------------- MERGED ---------------------------

Hello, I am China pokemon fan, have what way can contact you to discuss the game? Is a problem on my side, SMD format plugin after import are damaged, what do you have a powerful SMD plugin?
 
Last edited by CH_obsidian,
  • Like
Reactions: IMWeige

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
--------------------- MERGED ---------------------------

Hello, I am China pokemon fan, have what way can contact you to discuss the game? Is a problem on my side, SMD format plugin after import are damaged, what do you have a powerful SMD plugin?
Sometimes toolbox doesn’t export animations correctly. Just export them again and retry
 

CH_obsidian

Member
Newcomer
Joined
May 11, 2020
Messages
5
Trophies
0
Age
34
XP
29
Country
China
I'm sorry, my English is not very good,
May express is not very clear.
Now my side MAX is wrong, after the merger SMD model and animation not merged together. What is the good way?
 
Last edited by CH_obsidian,

SepraB

New Member
Newbie
Joined
May 19, 2020
Messages
2
Trophies
0
Age
27
XP
27
Country
Colombia
Hey, @Manurocker95 thanks for sharing all this info. As a pokemon fan, multimedia professional, unity developer and video-games enthusiast, I find all these tutorials awesome!!!!!

This is my first time decrypting a game and happy to be doing it with pokemon. I have read your tutorials and followed the steps, they are great. I also checked your youtube videos... the way you are re-creating lightning, atmosphere, movement.... WOW

But still, I have a question somehow out of the topic. I have found characters, pokemon, grass, trees, doors, stadium but where the **** are the buildings (houses, pokemon centers, etc)??? Thanks in advance if you can solve this question.
 
Last edited by SepraB,

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
Hey, @Manurocker95 thanks for sharing all this info. As a pokemon fan, multimedia professional, unity developer and video-games enthusiast, I find all these tutorials awesome!!!!!

Thanks man! Always glad to help :)

But still, I have a question somehow out of the topic. I have found characters, pokemon, grass, trees, doors, stadium but where the **** are the buildings (houses, pokemon centers, etc)??? Thanks in advance if you can solve this question

iirc, models are placed in romfs/bin/field/area/yourdesiredarea/mdl
 

SepraB

New Member
Newbie
Joined
May 19, 2020
Messages
2
Trophies
0
Age
27
XP
27
Country
Colombia
Thanks man! Always glad to help :)



iirc, models are placed in romfs/bin/field/area/yourdesiredarea/mdl
Thank you so much!! I am understanding more about the file extensions. Hope your plans continue that good, I will be attentive to your updates.
 

Darkann

New Member
Newbie
Joined
Aug 3, 2020
Messages
3
Trophies
0
Age
27
XP
36
Country
France
Hey, I'm having a bit of a texture issue when exporting with Toolbox.
Animations and model look fine, but here's the result with textures
upload_2020-8-3_13-18-22.png


Any idea of what I'm doing wrong ?

EDIT: Alright, I found out I needed to fix the textures myself
 
Last edited by Darkann,

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
Hey, I'm having a bit of a texture issue when exporting with Toolbox.
Animations and model look fine, but here's the result with textures
View attachment 220014

Any idea of what I'm doing wrong ?

EDIT: Alright, I found out I needed to fix the textures myself
Yeah, you need to mirror the textures, use the texture settings or make a shader to do that
 

Darkann

New Member
Newbie
Joined
Aug 3, 2020
Messages
3
Trophies
0
Age
27
XP
36
Country
France
I'm not sure if you can help me, but 3dsMax keeps crashing everytime I try to import the .smd animations. So I'm kinda sad and I don't know how to fix it :'(
 
General chit-chat
Help Users
    DinohScene @ DinohScene: I deal with bent CPU pins on a almost daily basis...