Custom Backgrounds

New Super Mario Bros. Wii has a lot of backgrounds, even more possibilities when it comes to mixing around with both  (front) and   (back) BGs. There may be a level theme you're trying to achieve that just simply doesn't cut it, thus this is where creating custom backgrounds comes into play.

Custom Backgrounds allow us to make unique level themes and styles as well as bringing a message or story to a level, it's important to know how to make BGs especially with bigger mod packs that involve unique worlds.

DISCLAIMER: THIS TUTORIAL IS BEST SUITED FOR BLENDER USERS AND ALSO ASSUMES YOU HAVE BASIC KNOWLEDGE OF HOW TO USE BLENDER

It is recommended you have BrawlCrate, especially when using Blender as there's a feature that is unique to BrawlCrate that can aid Blender users. Additionally Autodesk FBX Converter is also recommended for Blender users for converting between .dae, .fbx, and other filetypes.

Now lets get into the tutorial.

Getting The Base Background Ready
How do we make a custom background? We probably can make one from scratch, but let's be honest, who here want's to do that? First step is to get a background you want to use as a base. When looking for a background to choose, think of what background are you trying to make? Is it in the sky? Is it in the desert? Is it indoors? Also don't limit yourself to the base background's theme, you can turn the Desert background into a Snow Plains background! Luckily New Super Mario Bros. Wii comes with many backgrounds to play with and edit, there's all sorts of possibilities you can do. You can easily find what you want with Reggie Level Editor's background previews, go crazy!

And another thing, for the love of god start small, I highly go against doing something big as you're going to go crazy over what happened and what went wrong. For this example we are going to use  which is 1-1's Overworld Hills background. For the tutorial we are going to try to add random Blocks scattered across the hill.

Let's open, it is located in the   folder of NSMBW as well as other models and backgrounds. BG models begin with bgA or bgB.

Open BrawlCrate, File, Open..., then select the bgA or bgB, (both work for this tutorial.)

Once done, we should see a huge file tree, open the, then the   folder, then the   file, the name will vary depending on which background you use. Give it a few seconds to load and it should automatically show the background in the preview section.



With the background opened in BrawlCrate, now it's time to export the model. We do this so we can get the skeleton for when we add the model(s) to Blender. To do this right click the, Export, then export as a. Name does not really matter just know where you put it.

Now after installing Autodesk FBX Converter, open it, select Add FBX Converter, a window should pop up with input and output tabs, click Add.., select the .dae you just exported, the preset should automatically have a destination file output of a FBX 2013 file, if not, click the Destination Format box and change it.

If you've done everything correct thus far you should now be able to export as a, feel free to change output file name and folder location, when satisfied click Convert. Remember where the  you just made is.



Now we can open the  in Blender and continue, if you get a bunch of metallic models as well as an armature, you should be good to go.



What The Heck Do I Do Now With This Mess??
Well, that depends on what you want to do. There's a number of things you can do, simply edit the BG, or add/import models you want to add, delete models you don't want. The point is you get the models you want and make it look good, as in the end we're going to be deleting everything but the models you edited/added. For this tutorial, I'm simply going to be adding blocks that use a cardboard texture (because why not), point of this tutorial is to be simple and to get you a good boost on how to make custom BGs.

If Importing Models From a Separate File
Make sure you do the process we did to convert the  to a   to the model file you want to import as well, EVEN if it's already a FBX, there's multiple FBX types. Not doing simple things like this can hurt you in the long run, take it from me, learned from experience.

I Ain't Need No Pre-made Models I Model Everything Myself
Good for you, you don't have to worry about converting stuff, just keep everything in Blender and you'll be fine.

Understanding the Bones
So your model has a lot of bones, it's essential that we understand what they do and their purpose. There should be 2 sets of bones that we should take into account, Scroll and Rotate. Others, less common, include Effect and Trans_ Since NSMBW is orthographic, Nintendo has to simulate perspective and parallax using these bones. Keep in mind these bone's speed values and such cannot be changed without hacks and things like that.

Scroll Bones
Scroll Bones, usually consisting of ScrollA-ScrollF, are bones that define the scroll speed of a mesh(es). Scroll A is the fastest, Scroll F being the slowest, it's important to know how to use these when making backgrounds. Usually you would use lower values (ScrollF) to simulate something being farther away, but use higher values (Scroll A) to simulate something closer.

Rotate Bones
Rotate Bones, consisting of Rotate0-9 except 3 (3 is invalid), are bones that define the rotate speed of a mesh(es). Rotate 0 is the slowest, Rotate 9 is the fastest. As the background scrolls, the bones will rotate accordingly, the speed varying on the Rotate#. Rotate0 should simulate something farther away, and Rotate9 should simulate something closer, since it is the fastest.

Effect Bones
Effect Bones, only being used in bgA_0C02, controls effects, such as the volcano rocks firing out the Volcano.

Trans_ Bones
Trans_ Bones, only being used in bgA_A302 and bgB_A302, controls movement of bones, depending on scrolling. Different functionality to Scroll.

Common Practices

 * Model inside the BG, not outside as it can cause visual glitches with scrolling.
 * Give the Models materials, not doing so will make BrawlCrate throw up errors when importing or crash.
 * Name the objects, it isn't required but it can make everything more nice and neat, I like to name it   or   to distinguish between the original models and mine. You can always rename it to whatever in BrawlCrate after importing.
 * When done with everything, apply transforms for all the models to prevent a model being placed in a certain place only to be moved to another place in-game.
 * Play with the skeleton, see what bones control which, this will help when assigning the bones to the models as you'll know which bones you should use. Make sure when you're done to reset the skeleton transforms.
 * When done with everything, apply transforms for all the models to prevent a model being placed in a certain place only to be moved to another place in-game.
 * Play with the skeleton, see what bones control which, this will help when assigning the bones to the models as you'll know which bones you should use. Make sure when you're done to reset the skeleton transforms.
 * Play with the skeleton, see what bones control which, this will help when assigning the bones to the models as you'll know which bones you should use. Make sure when you're done to reset the skeleton transforms.
 * Play with the skeleton, see what bones control which, this will help when assigning the bones to the models as you'll know which bones you should use. Make sure when you're done to reset the skeleton transforms.

Making the BG
So now you got the BG, know what you're going to do, now to execute it. Make sure to read the above section for tips.


 * 1) Make sure the models have an Armature modifier linked to the BG's skeleton, and also that the models have the skeleton as it's parent. Parenting the armature to the object should automatically do that though, but keep in mind that you will have to do this manually if it wasn't done automatically. Also make sure the model has materials as stated in the Common Practices section.
 * 2) Move the models to where you want them to be, don't make them too big and don't make them too small, be cautious on size and proportions as the BG will be looked at often and you don't want it looking goofy.
 * 3) Make bones inside the Scroll# (# is A, B, C, etc.) Bone for each model you place on the BG, this will make it easier to edit the positioning, scale, and rotation in BrawlCrate if extra things are needed. Make sure you attach the models to the bones too. As you can see in the screenshot of the model in Blender, there are bones for each hill, try to mimic that.

Done and Done..?
This is what I made collectively making sure of what is said in Making the BG and Common Practices'. I suggest you re-read that when you're done as you can make sure to check for those things before exporting and running into issues.

However, as you can see I made bones for each of the cubes, added a material, and made sure the models were in the BG and not outside. It is also parented to the skeleton and moves accordingly, as well as has proper names.

Exporting from Blender
Once you have checked, be sure to save your project as a .blend before the next step, as if we do something wrong we can always go back, and always have the preview of the scenery and bones incase we need it to reference something. The next step involves deleting all the original model files, not the skeleton, but keeping our added models. You will see why we do this when we import. With everything deleted but the models we want to add and the skeleton, export everything as a. Open up Autodesk FBX Converter if it isn't opened already, and open the FBX you just made, make sure the destination format is set to. Then convert. You should now have a final  of your BG, with only the skeleton and models you want.

Why This Why That?
Why don't we just export to dae in blender?

From experience, Blender exports the  very weirdly, and makes it inaccurate to how it is shown in Brawlcrate.

Why are we deleting everything?

Unless you edited the OG models, we have to delete everything as when importing to BrawlCrate, we only want to import the objects we made, not the whole BG, as then we would have a lot of duplicate objects and materials in BrawlCrate we will then have to get rid of.

'''But I want my background to be this and that, will this method still work? '''

Pretty sure no matter what you're trying to do, as long as you're trying to reference the original BG's skeleton, even if you completely make a whole new background and want no trace of the original and the skeleton is modified, the skeleton is needed for general movement and bone data for scrolling.

That's all the questions I could think of in my head, it's pretty common ones too. Now let's move on.

Importing to BrawlCrate
Now with our, open BrawlCrate and the BG you opened earlier/used as base, then right click on the  , then to  , then finally. Now select the  you just made, then 2 pop ups should show up, (2nd should show if model importing was a success, if you crash before, that usually means you have to recheck your models for missing data e.g materials) First one is import settings. Only option you have to enable to Blender Bone Fix, which fixes Blender naming skeletons to Armature, it however does not fix _end bones as it says, we have to do that manually, but it's not that big of a deal.

Second Pop Up should show you the blocks, if you have a bunch of objects including the OG models, make sure you deleted the OG models, if you only see the models you added, you're on the right track, make sure you check "Merge both Models". This will add every mesh into the BG without us having to do it individually. The Skeleton Root Box, what you put there varies as sometimes BrawlCrate doesn't read the root correctly and only the parent of the objects.. It's usually the root of the skeleton, if not it might be another bone you assigned your objects to. Feel free to experiment, one way to check if you selected the right root is that your skeleton doesen't have a bunch of new bones that match the whole skeleton in 1 bone. E.g having Scroll# bones in a bone WITH Scroll# as a parent. You can check this in the Bones tab of your model. If you didn't select the right one, you can always reload the .arc (if you didn't save) and redo the previous steps until you get it wrong.



If you've done everything correctly, you should now have your models in the background, if you don't see it, you have to refresh the preview.

The 70%
You may see that your models you have imported look very very weird and either have a weird texture, shading, or no texture. This part of the process is called the 70% as you will most likely spend most of your time making custom backgrounds in BrawlCrate trying to perfect it and make it look nice in-game. This can be done by importing the proper textures, materials, and shaders (if you copied from another BG).

Shaders?
Shaders are a whole thing that I myself is not that experienced with, all I know is that they determine the final output color of your material, and have loads of settings that determine how it will look. Each BG has different shaders for different materials that accomplish different looks or effects. The Sky and Clouds usually in bgB backgrounds have their own shaders respectively. However, for now you can always feel free to use the base game shaders and try to make it look nice, try to use the shaders that isn't used by clouds, skies, but the actual objects in the BG (e.g the hills in Overworld Hills use Shader).

The best way to test/learn shaders is experimenting with how they look like in BrawlCrate's preview. Change the settings and see what they do and how they affect how it looks in-game as well. '''Keep in mind BrawlCrate's shader engine is kinda wonky and often times you have to restart the program for it to render things correctly. That's why I suggest alternating between NSMBW and BrawlCrate.'''

Materials?
Materials are the very things that each object in a BG has. No object has 2 Materials. Keep this in mind when importing models with different texture attributes, as you may have to split the model. Materials rely on shaders, but also contain additional info that is used by the shader, as well as containing which information on which shader to use and colors for certain shader types. There may be 2 materials that use the same shader, that does not make them the same as they often have different textures that are used or settings.

Objects?
This section should be self explanatory other than a few things, objects are each mesh that is in a BG. From hills to the planes that hold the sky, they are all objects. From this tab in BrawlCrate, you can change which material the object uses as well as the visibility bone, draw pass, and draw priority. You only barely have to worry about draw pass and more often the Material boxes, draw pass is usually messed around with in semi-transparent things such as clouds. The Material box should be used to define which material the object uses.

Textures?
Textures are images that hold information on model colors/images to lighting/specular. (Specular and Environment things are usually labeled . I suggest you do not touch them. You may need to add additional textures, like in my example I need to add a cardboard texture for the Blocks. You can import textures via right clicking the  . Be cautious on the image format and mip maps and things like that, I highly suggest duplicating a original texture used in the BG, then replacing the image so you can maintain settings such as the image format and not running into problems. When naming new textures, I suggest using the format of the rest of the Original textures but then adding that word at the end to distinguish it from the others.

How do I add this? How do I add that?
Almost anything can be imported, from animations to shaders. This is done by either right clicking the  or the , then going to import/import asset.

My Workflow
The way I go about making sure everything is good to go to test in game is first to see if the bone system is correct and similar to the vanilla's, and also deleting any  that Blender has made in the   tab in BrawlCrate.

Then I would import all the necessary materials and textures that I need, I also recommend duplicating a existing material, (not of the clouds or sky materials), and then just replacing the textures and changing anything I need to. I won't go in depth on what to change, but simple experimenting will give you info on what it does.

I then make sure the object's I imported is linked to the correct material and nothing is not rendering incorrectly and looks nice.

Those are the 2 basic steps I do, everything else is just seeing if it looks nice in game and what can I do to fix it. If you're doing something more complex you may have to experiment with shaders, materials settings, object settings, and even animations. does not have any animations, so I do not have to worry about animations.

And thus, I make sure everything is correct, no duplicates or nothing of the sort, and everything is in place. Then I see I am done, I export it to a .arc, save, then launch New Super Mario Bros Wii.





Saving as New Background File
So if you want to preserve the original background but save the background you made as a separate, you can rename the file name to the ID you want, e.g I named mine, former being. It's not as simple as renaming though, as you're going to have to rename every instance of  in the .arc file, from the brres, MDL0, skeleton, to animations. Once all instances of the ID you want to replace with the new ID have been replaced, you may now save as the ID you used.

Holy fishpaste everything worked?!
Honestly I'd be surprised if you get it working first time, but if you do, you're ahead of a lot of people. And for those who got the models in but doesn't look good, that's still considered "working" so give yourself a pat on the back. This thing isn't easy at all and I'm having back pain from looking at this page for so long writing this to make this easy to understand. However, if your background crashes or something else or scrolls weirdly or anything that is out of the ordinary, I suggest reading below as I go in depth on troubleshooting. If you are satisfied please skip onto the next section.

Troubleshooting... Oh boy.
These are some things I've ran into while making backgrounds, thus far. If I encounter more problems and fix them I will add it to the list.

X is not where it's supposed to be!
Check the animation folder, often called, this controls the bone movement and all that, if there is a bone entry in there that your objects are parented to, delete that entry or set the animation values to it's default. Additionally, if there is no entry, make one for the bone, and experiment with moving the bone in it's X, Y, or Z position in Keyframe 1 and see if you get any results with the position of the models changing.

Also make sure when you exported your model you applied all transforms, then re-export the models, delete the broken models in BrawlCrate in the  tab, then re-import the models using the same process we discussed.

X starts to move in front of the screen (over tileset) whenever I get a power up and a Flagpole renders/ BG Objects move strangely/randomly
This one is oddly specific but turns out to be very very very common. After a lot of testing turns out this is caused by the bone index order being incorrect. Make sure your BG has a bone index order going from the root, to all the children in DESCENDING order. (e.g, bone root would have bone index of 0, while it's child would have an index of 1).

Visual Glitches whenever I start to move Mario (flickering stuff)
This is usually caused by the models not being kept inside the BG, and starts overlapping the scroll. To fix this simply just make sure the model is inside the BG and doesn't go outside the area.

In BrawlCrate the textures don't Wrap properly!
This is usually caused by the material the object has, go into the material, then the texture inside the material, go to the  tab, then mess around with   and   This controls how the material is wrapped, whether being mirrored or clamp, you can google what each does.

Why is X this color when the texture is grayscale?
This is caused by the material, more often used with clouds and sky gradients to determine colors. Go to the material, then the  and change the RGBA values of.

Additionally, the  tab of the model may have color information on why a object may be colored that way. However this was when I was making cave backgrounds, and I don't really understand yet what it's used for, so if the above option does not work ONLY THEN you should mess around with this.

X doesen't scale correctly when importing even after reading FAQ 1?
Some BGs actually use scales. Not in animation, but their default scale in the bone menu. For example bgA_0302 has different scale values to their bones, which can cause the models on import to be either bigger or smaller. Fix to this is to adjust the bone's attached to your model accordingly, making sure it fits.

My issue is not here?
Wouldn't be surprised, I've only made so many backgrounds, and don't know the count of how many people will flock to this tutorial, however if you do find something, feel free to ask in the [Horizon Discord], and ping me, my user there is. I'm not a BG god, I may not know what your issue is, so bear with me, but hopefully others will. If not don't feel hopeless, redo every step but with a different model or different background, every background is different and has different things,  is by far the simplest however, so you should start there.

So I Made My Background, Now What?
The rest of the learning experience is up to you. The way I've learned is experimenting, experimenting, and experimenting. Never be afraid to think outside the box and try new things to see if something can work one way or the other. You'll never know if you don't try. Go crazy too, you may find out something I don't even know. Feel free to read over this tutorial whenever you need that extra confirmation when making backgrounds. I hope to be able to see a wave of new quality custom backgrounds for NSMBW one day. I wish you luck and thanks for reading this tutorial.

~Chasical

Side Note on Animations
I do not have much experience on animations, well, I do know how to animate, I simply mean importing and exporting animations and things of that matter. I do know however some animation types I have seen in various backgrounds. So why not shed light on what they are and so that you know. There are only 3 the game usually uses.

AnmChr
These are skeletal animations. These control the bones of the background and move things according to keyframes. I will not go in the basics of animation but it should be self explanatory. As stated before you can use this type of animation to move objects without having to move them in Blender then re-importing. NSMBW uses this for mostly clouds and also objects that may be too small or too big or in a bad position.

AnmClr
These are color sequences. These control colors of a material that may use the  tab. As far as I've seen, one example of this being used is in NSMBW's Volcano BG, where the glowing and dimming lava is controlled by the change of color in the sequence (black being dim, white being brighter).

AnmTxtSrt
These are texture animations. These control the UV positions of a material. This is mainly used for idle fog/clouds that stay in 1 position, but animate texture-wise. This can be controlled by keyframing the position of the UV's and then the transition from 1 keyframed UV position to the other will play. These animations can also animate specific textures in a material rather than the material as a whole.