06-26-2017, 10:17 PM
What this is:
SPICA is a general model ripping tool to rip models from 3DS games. It supports the formats created by Nintendo for the system, and that quite a lot of games uses. Those formats are commonly know as BCH and CGFX (usually have bcres, bcmdl, bc*** extension). It also supports some formats specific to Pokémon games, since the focus of the tool was always supporting those games. Pokémon Sun/Moon introduced entirely new formats designed specially for the game, those are supported by the tool aswell, along with the animations from all three games (X/Y/OR/AS/Sun/Moon). It also supports Super Smash Bros for 3DS (mbn) model format and MT Framework model and texture formats (with severe issues!). I created a thread about MT Framework support aswell here, but I think there's not much interest for these formats, so I don't plan to keep working on them.
You can post questions or requests specific to this tool here, to avoid derailing the Pokémon ripping thread by RTB with such requests.
Planned features/fixes:
I'm also interested in hearing what is currently lacking the most on the tool, so I know where I should focus. Those are some features I plan to implement in no particular order:
- FBX export support
- DAE material anim export
- DAE import support
- Visibility anims on bch and cgfx
- Skeletal anims on cgfx
- Camera/lights/fog effects on both bch and cgfx, along with animations
- Export cameras and lights on DAE when above is done
- Compressed files support
- Containers support
- Pokémon Sun/Moon model, texture and animation creation.
- Pokémon X/Y/OR/AS model, texture and animation creation, with support for some game specific format like MM for the overworld models and GR/AD for the maps (WIP)
- CGFX creation (WIP)
- Also support formats that Ohana3DS used to, to make it a complete replacement (ZMDL from fantasy life, and New Love Plus model/textures are the ones not currently supported)
- Support models that uses silhouette effects with Geometry shader (ex: Atelier Rorona)
- Fix for Pokémon X/Y animation issue with characters leg/feet (also affects OR/AS, but just on few models) (Done)
- Fix billboard models issue on Pokémon (Cosmog/Koffing/...)
- Add a Material Viewer
It's a quite huge list, and supporting all those features will be a lot of work, so I'll always looking for help. I believe that the best way to build such tools is with the help of the community, so if you're interested, you can access the code repository clicking here: https://github.com/gdkchan/SPICA.
The above repository also contains link for automatic build of the tool for windows. Those are always up to date.
How to help:
The tool was written in C#, and the shaders in GLSL. Anyone that knows how to code in C# can help. There's some work on the GUI that needs to be done, and also some work related to rendering, so no experience reverse engineering stuff is necessary to contribute. I'm also interested in moving out of Windows Forms and using a solution that works on all major OSes (Windows, Linux and Mac).
TL;DR
Download is here: https://ci.appveyor.com/api/projects/gdk...astest.zip
Source is here: https://github.com/gdkchan/SPICA
SPICA is a general model ripping tool to rip models from 3DS games. It supports the formats created by Nintendo for the system, and that quite a lot of games uses. Those formats are commonly know as BCH and CGFX (usually have bcres, bcmdl, bc*** extension). It also supports some formats specific to Pokémon games, since the focus of the tool was always supporting those games. Pokémon Sun/Moon introduced entirely new formats designed specially for the game, those are supported by the tool aswell, along with the animations from all three games (X/Y/OR/AS/Sun/Moon). It also supports Super Smash Bros for 3DS (mbn) model format and MT Framework model and texture formats (with severe issues!). I created a thread about MT Framework support aswell here, but I think there's not much interest for these formats, so I don't plan to keep working on them.
You can post questions or requests specific to this tool here, to avoid derailing the Pokémon ripping thread by RTB with such requests.
Planned features/fixes:
I'm also interested in hearing what is currently lacking the most on the tool, so I know where I should focus. Those are some features I plan to implement in no particular order:
- FBX export support
- DAE material anim export
- DAE import support
- Visibility anims on bch and cgfx
- Skeletal anims on cgfx
- Camera/lights/fog effects on both bch and cgfx, along with animations
- Export cameras and lights on DAE when above is done
- Compressed files support
- Containers support
- Pokémon Sun/Moon model, texture and animation creation.
- Pokémon X/Y/OR/AS model, texture and animation creation, with support for some game specific format like MM for the overworld models and GR/AD for the maps (WIP)
- CGFX creation (WIP)
- Also support formats that Ohana3DS used to, to make it a complete replacement (ZMDL from fantasy life, and New Love Plus model/textures are the ones not currently supported)
- Support models that uses silhouette effects with Geometry shader (ex: Atelier Rorona)
- Fix for Pokémon X/Y animation issue with characters leg/feet (also affects OR/AS, but just on few models) (Done)
- Fix billboard models issue on Pokémon (Cosmog/Koffing/...)
- Add a Material Viewer
It's a quite huge list, and supporting all those features will be a lot of work, so I'll always looking for help. I believe that the best way to build such tools is with the help of the community, so if you're interested, you can access the code repository clicking here: https://github.com/gdkchan/SPICA.
The above repository also contains link for automatic build of the tool for windows. Those are always up to date.
How to help:
The tool was written in C#, and the shaders in GLSL. Anyone that knows how to code in C# can help. There's some work on the GUI that needs to be done, and also some work related to rendering, so no experience reverse engineering stuff is necessary to contribute. I'm also interested in moving out of Windows Forms and using a solution that works on all major OSes (Windows, Linux and Mac).
TL;DR
Download is here: https://ci.appveyor.com/api/projects/gdk...astest.zip
Source is here: https://github.com/gdkchan/SPICA