ROM Hack how do you put models you made into rom hacks

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
On the DS enough of the SDK was leaked that people which might want to head down that path (personally I prefer the hard way as using the SDK is legally dubious but more on that later) can do more or less what the official devs working on it would have done by using plugins on now quite old 3d modelling programs, on the PC and even some home consoles many games and engines use high level model formats. Using a leaked SDK is not advisable as strictly speaking it would make things legally hard to distribute -- it is why most original xbox homebrew gets distributed as source and you get to use things xbins to get it. At this point I genuinely do not know to what extent the various 3ds SDK leaks will be useful for you in trying to do custom 3d models.

Anyway everybody else gets to figure out things so as to crowbar it in there. The 3ds does have a more modern approach to 3d graphics, something along the lines of older embedded opengl coupled with some ideas on shaders from newer versions of embedded opengl.
Trying to make export tools for normal graphics programs is a bit of a pain, though some more exist for the 3ds than have thus far been made for the DS (the DS is mostly model viewers and the SDK, in fact I am not sure if there is anything that will allow you to click and drag nodes around). This is often why you will see very small changes be made as you then have to build up a model basically in your head or on paper and adjust its location, possibly also said location in textures and animations. I did something like it for the DS in my GBA/DS hacking docs but I would be careful in thinking much of it applies directly to the 3ds http://gbatemp.net/threads/gbatemp-rom-hacking-documentation-project-new-2016-edition-out.73394/ .
Others will make full conversion tools, or build things directly from the ground up in their head/in the file/on paper.

Option 2. File hacks and game swaps. Other than animation oddness then there is usually very little stopping you taking another player character, npc, enemy... and telling the game to load that instead. Along the same lines you might not have the tools but for as annoying as 3d formats are to decode then they are probably more annoying to design and thus devs will use the same formats or Nintendo will provide one (Nintendo's DS one being known as NSBMD, BMD/BMD0 being the gamecube and wii flavour and various things from those filtered down into the 3ds where there are a few but https://www.3dbrew.org/wiki/CBMD is not a bad start. If you want some more of the tech then http://gbatemp.net/threads/gpu-re-need-everyones-help.379633/#post-5301237 and for more of the formats then http://gbatemp.net/threads/extracting-models-and-textures-from-3ds-games.370788/ does well despite being a bit out of date now. To go much further we are probably going to have to start discussing all sorts of maths that goes into graphics like this, it is not especially hard but it is far cry from the sorts of workflows you might be used to if you are using blender and co.

Equally I am not a great fan of the following video (most of it is basic scaling factors and mapping certain nodes to the input of the game which was already being used for that with the sword). However it is a way to get some fairly impressive looking results without too much trouble.


I can teach you how to go from gimp or photoshop to 2d tiled graphics in a few minutes really (palette issues being about the only thing likely to trip you up at first) but this 3d lark is a pain. Taking a native 3ds model format, importing it into a known program, doing a bit of light fiddling and sticking it back into the game is not something that we have really seen on any console that I can think of, to have textures and animations come along for the ride is again quite possible but something I would be truly stunned to see happen. All of it could happen (the data is there and the hardware is more or less known) but it would require some considerable work that I do not see people going in for -- you barely have anything like it for sequenced music and programming wise that is loads easier. If I am putting money on things then I would have it on pokemon and mario kart for first games on the 3ds to do anything like this -- pokemon is more active but mario kart uses 3d tracks and models and has done for years so people there are more used to it.

I should say I am not quite up to date with 3ds hacking (I like my systems to have games before I invest in them) so I could be proven wrong with regards to what exists, however all the things I discussed will get it done and will be the way you will want to approach new systems or formats in the future.
 

CuriousTommy

Well-Known Member
Member
Joined
Jul 22, 2014
Messages
524
Trophies
0
Age
27
XP
647
Country
United States
On the DS enough of the SDK was leaked that people which might want to head down that path (personally I prefer the hard way as using the SDK is legally dubious but more on that later) can do more or less what the official devs working on it would have done by using plugins on now quite old 3d modelling programs, on the PC and even some home consoles many games and engines use high level model formats. Using a leaked SDK is not advisable as strictly speaking it would make things legally hard to distribute -- it is why most original xbox homebrew gets distributed as source and you get to use things xbins to get it. At this point I genuinely do not know to what extent the various 3ds SDK leaks will be useful for you in trying to do custom 3d models.

Anyway everybody else gets to figure out things so as to crowbar it in there. The 3ds does have a more modern approach to 3d graphics, something along the lines of older embedded opengl coupled with some ideas on shaders from newer versions of embedded opengl.
Trying to make export tools for normal graphics programs is a bit of a pain, though some more exist for the 3ds than have thus far been made for the DS (the DS is mostly model viewers and the SDK, in fact I am not sure if there is anything that will allow you to click and drag nodes around). This is often why you will see very small changes be made as you then have to build up a model basically in your head or on paper and adjust its location, possibly also said location in textures and animations. I did something like it for the DS in my GBA/DS hacking docs but I would be careful in thinking much of it applies directly to the 3ds http://gbatemp.net/threads/gbatemp-rom-hacking-documentation-project-new-2016-edition-out.73394/ .
Others will make full conversion tools, or build things directly from the ground up in their head/in the file/on paper.

Option 2. File hacks and game swaps. Other than animation oddness then there is usually very little stopping you taking another player character, npc, enemy... and telling the game to load that instead. Along the same lines you might not have the tools but for as annoying as 3d formats are to decode then they are probably more annoying to design and thus devs will use the same formats or Nintendo will provide one (Nintendo's DS one being known as NSBMD, BMD/BMD0 being the gamecube and wii flavour and various things from those filtered down into the 3ds where there are a few but https://www.3dbrew.org/wiki/CBMD is not a bad start. If you want some more of the tech then http://gbatemp.net/threads/gpu-re-need-everyones-help.379633/#post-5301237 and for more of the formats then http://gbatemp.net/threads/extracting-models-and-textures-from-3ds-games.370788/ does well despite being a bit out of date now. To go much further we are probably going to have to start discussing all sorts of maths that goes into graphics like this, it is not especially hard but it is far cry from the sorts of workflows you might be used to if you are using blender and co.

Equally I am not a great fan of the following video (most of it is basic scaling factors and mapping certain nodes to the input of the game which was already being used for that with the sword). However it is a way to get some fairly impressive looking results without too much trouble.


I can teach you how to go from gimp or photoshop to 2d tiled graphics in a few minutes really (palette issues being about the only thing likely to trip you up at first) but this 3d lark is a pain. Taking a native 3ds model format, importing it into a known program, doing a bit of light fiddling and sticking it back into the game is not something that we have really seen on any console that I can think of, to have textures and animations come along for the ride is again quite possible but something I would be truly stunned to see happen. All of it could happen (the data is there and the hardware is more or less known) but it would require some considerable work that I do not see people going in for -- you barely have anything like it for sequenced music and programming wise that is loads easier. If I am putting money on things then I would have it on pokemon and mario kart for first games on the 3ds to do anything like this -- pokemon is more active but mario kart uses 3d tracks and models and has done for years so people there are more used to it.

I should say I am not quite up to date with 3ds hacking (I like my systems to have games before I invest in them) so I could be proven wrong with regards to what exists, however all the things I discussed will get it done and will be the way you will want to approach new systems or formats in the future.

Although I am not the creator of this thread, I just want to give you a big hug and say thank you much for writing this! It is well written and give links to the other thread that talk about the format!
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Look at you holding tiny things