ROM Hack How edit a GBC Banner ?

Asia81

Yuri Lover ~
OP
Member
Joined
Nov 15, 2014
Messages
6,656
Trophies
3
Age
29
XP
3,495
Country
France
I have extracted a GBC Banner (banner.bin).

And now I want edit the picture and the text and rebuild my custom banner.
How can i do that ?

Also, you are good with 3D banner, @Apache Thunder can you help me ?
 

mid-kid

GBAtemp spamBOT
Member
Joined
Aug 2, 2012
Messages
879
Trophies
0
Age
25
XP
1,163
Country
For the games I've injected, I've just completely replaced the banner with a flat one built by bannertool.
I usually use the cover images of the games.

Here's a snippet of my script:
Code:
echo "Resizing banner image"
convert icon.png -resize 256x128 -background transparent -gravity center -extent 256x128 out/icon-banner.png
echo "Resizing icon image"
convert icon.png -resize 48x48 -background transparent -gravity center -extent 48x48 out/icon-resize.png
echo "Creating banner"
tools/bannertool makebanner -i out/icon-banner.png -ca banner.bcwav -o out/banner.bin
echo "Creating icon"
tools/bannertool makesmdh -s "$shorttitle" -l "$longtitle" -p "$publisher" -i out/icon-resize.png -o out/icon.bin
The convert command is included in imagemagick.

Apache Thunder knows how to create 3D banners. You should ask him for that.
 

DJPlayer

Banned!
Banned
Joined
May 21, 2015
Messages
542
Trophies
0
Age
46
XP
429
Country
Netherlands
For the games I've injected, I've just completely replaced the banner with a flat one built by bannertool.
I usually use the cover images of the games.

Here's a snippet of my script:
Code:
echo "Resizing banner image"
convert icon.png -resize 256x128 -background transparent -gravity center -extent 256x128 out/icon-banner.png
echo "Resizing icon image"
convert icon.png -resize 48x48 -background transparent -gravity center -extent 48x48 out/icon-resize.png
echo "Creating banner"
tools/bannertool makebanner -i out/icon-banner.png -ca banner.bcwav -o out/banner.bin
echo "Creating icon"
tools/bannertool makesmdh -s "$shorttitle" -l "$longtitle" -p "$publisher" -i out/icon-resize.png -o out/icon.bin
The convert command is included in imagemagick.

Apache Thunder knows how to create 3D banners. You should ask him for that.
I want to know "edit" 3D-Banners, too, because the 2D-thing looks boring. Would be cool if Apache Thunger could help us with that
 

Apache Thunder

I have cameras in your head!
Member
Joined
Oct 7, 2007
Messages
4,426
Trophies
3
Age
36
Location
Levelland, Texas
Website
www.mariopc.co.nr
XP
6,792
Country
United States
Editing/creating 3D banners requires that you use 3D editing software that supports importing/exporting OBJ files. There are free programs like Blender I think. But I have no experience using them. I personally use 3DS Max. But it's not free. Though I think gmax might work. Don't recall if gmax could export obj files or not.

What you do need is an existing banner as a reference point. Rename banner.bin to banner.bnr. Then extract the cgfx file from it using 3DSExplorer.

Then use EveryFileExplorer to open the cgfx file. You can then export the model to use as a reference point and to make sure you make things at the correct scale.

Then once you export the edited model from your 3D modeling program of choice make sure texture paths are correct in the MTL file. Also make sure all edges are visible prior to export because if any are hidden you might end up with missing faces once imported. Also note that alpha blending on textures for 3D models is not currently supported in EveryFileExplorer, so new CGFX files won't have working alpha on textures. So you'll have to work around that.

Then use EveryFileExplorer to create a new cgfx file (you currently can't modify an existing one) from an OBJ file. Once you have that you can use bannertool to build the banner from that cgfx file.

Once you have your files ready. You can use a command like this to make bannertool build a banner using a CGFX file instead of a SMDH (which only builds 2D banners):

Code:
bannertool makebanner -ci ExampleGraphix.cgfx -a ExampleBannerSound.wav -o banner.bin
(replace example file names with those you are using in your project)
If you already have a wav file converted to CWAV (not entirely the same as BCWAV though. Keep that in mind), then you can use -ca in place of -a to define your banner sound. I'd recommend something in the 22khz or below range for your banner sound. There's a limit to how large the overall banner will be. If you have a really complex model, you might be more limited with how large the banner sound can be before banner sound playback doesn't work. Overall I think your banner file should not exceed 400 to 500 KB in size once built. Anything larger and you will run into problems.

Also a model that's too complex will not display at all when you select it on Home Menu. I haven't really tried to pin down what the exact limit is. Try to minimize the texture file size and keep the poly count below 2000 and you should be fine.

EveryFileExplorer doesn't yet support material animations/skeleton animations. So 3D banners built this way will always do the default spin in place animation. Keep that in mind.
 
Last edited by Apache Thunder,
  • Like
Reactions: Beerus

DJPlayer

Banned!
Banned
Joined
May 21, 2015
Messages
542
Trophies
0
Age
46
XP
429
Country
Netherlands
Editing/creating 3D banners requires that you use 3D editing software that supports importing/exporting OBJ files. There are free programs like Blender I think. But I have no experience using them. I personally use 3DS Max. But it's not free. Though I think gmax might work. Don't recall if gmax could export obj files or not.

What you do need is an existing banner as a reference point. Rename banner.bin to banner.bnr. Then extract the cgfx file from it using 3DSExplorer.

Then use EveryFileExplorer to open the cgfx file. You can then export the model to use as a reference point and to make sure you make things at the correct scale.

Then once you export the edited model from your 3D modeling program of choice make sure texture paths are correct in the MTL file. Also make sure all edges are visible prior to export because if any are hidden you might end up with missing faces once imported. Also note that alpha blending on textures for 3D models is not currently supported in EveryFileExplorer, so new CGFX files won't have working alpha on textures. So you'll have to work around that.

Then use EveryFileExplorer to create a new cgfx file (you currently can't modify an existing one) from an OBJ file. Once you have that you can use bannertool to build the banner from that cgfx file.

Once you have your files ready. You can use a command like this to make bannertool build a banner using a CGFX file instead of a SMDH (which only builds 2D banners):

Code:
bannertool makebanner -ci ExampleGraphix.cgfx -a ExampleBannerSound.wav -o banner.bin
(replace example file names with those you are using in your project)
If you already have a wav file converted to CWAV (not entirely the same as BCWAV though. Keep that in mind), then you can use -ca in place of -a to define your banner sound. I'd recommend something in the 22khz or below range for your banner sound. There's a limit to how large the overall banner will be. If you have a really complex model, you might be more limited with how large the banner sound can be before banner sound playback doesn't work. Overall I think your banner file should not exceed 400 to 500 KB in size once built. Anything larger and you will run into problems.

Also a model that's too complex will not display at all when you select it on Home Menu. I haven't really tried to pin down what the exact limit is. Try to minimize the texture file size and keep the poly count below 2000 and you should be fine.

EveryFileExplorer doesn't yet support material animations/skeleton animations. So 3D banners built this way will always do the default spin in place animation. Keep that in mind.
thanks for this information :D
But is it not possible to just change the Texture of one of the 3D Models without destroying the animation or anything else?
I want to replace this one with the custom english texture.
11221886_959920644039000_493534919853617299_n.jpg
 

DJPlayer

Banned!
Banned
Joined
May 21, 2015
Messages
542
Trophies
0
Age
46
XP
429
Country
Netherlands
EveryFileExplorer hasn't been updated in quite a while now. (going on 6+ months since it was last updated). I stopped tracking it's progress in it's thread now. :(
that's weird ._. Is it really that hard to add a "replace" function for textures inside of bnr-files? :/
I guess the Source is open but I don't know how to program something like this
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: https://youtu.be/ZQhiwti-pK0?si=LTqU_S8Xm2fYnlQg