Super Mario 3D All-Stars

From Super Mario Galaxy wiki
Jump to navigation Jump to search

Super Mario 3D All-Stars is a collection of three 3D Mario games for the Nintendo Switch. These games are Super Mario 64, Super Mario Sunshine, and, most significantly, Super Mario Galaxy 1.

Super Mario Galaxy port

The older two games in Super Mario 3D All-Stars are fully emulated. Super Mario Galaxy relies on emulated graphics and sound; however, its code has been compiled natively and is linked directly with hagi, the GameCube and Wii emulator used for it and Super Mario Sunshine. There is no definitive answer as to why Super Mario Galaxy was partially ported whereas Super Mario Sunshine is fully emulated. Performance may have been a factor in that decision, especially since Super Mario Galaxy runs at twice the frame rate of Super Mario Sunshine.

Despite them both emulating the same consoles and targeting the same Tegra X1 SoC, there is no relation between hagi/the Super Mario Galaxy Switch port and lingcod, the GameCube and Wii emulator developed by Nvidia and bundled with their releases of various Chinese localized Wii games for the Nvidia Shield.

hagi/the Super Mario Galaxy Switch build use the cross-platform Vulkan 3D graphics API, rather than Nintendo's custom Switch specific graphics API used for most Switch games.

Files

Super Mario Galaxy's binary files are little endian, as opposed to big endian in every previously released build. This allows for the Switch to process them natively, as its CPU is little endian. This has demonstrated to be an inconvenience to modders as few of their tools support little endian files. However, the little endian files can be compared to the big endian files of the Wii releases to determine the size of every datum within them.

Unused content

To save space, most of the game's unused content was removed. It's possible that a tool was developed to search for which objects do not exist in any stages, or it's possible that an existing reference like The Cutting Room Floor was used.

Development

Super Mario 3D All-Stars was developed by Nintendo EPD Production Group No. 8 and Nintendo European Research & Development (NERD). Nintendo EPD Production Group No. 8, under its former name of Nintendo EAD Tokyo, is the original developer of the two Super Mario Galaxy games.

One theory regarding the development of Super Mario 3D All-Stars posits that NERD developed the ports/emulator bundles of the games for a Windows or Linux system, then gave their work to Nintendo EPD who ported it to the Switch. This would explain the use of Vulkan rather than Nintendo's custom Switch specific graphics API, and the presence of a keyboard controller mapping file in the release.

Credits

Only one individual, Kenta Motokura, is officially credited for the development of Super Mario 3D All-Stars. Motokura is credited as producer. At the time of Super Mario 3D All-Stars' release, Motokura was an assistant manager at EPD Production Group No. 8 and the main director of the 3D Mario series. Motokura was involved with the original development of both Super Mario Galaxy games, and his name can be seen in several empty directories in Super Mario Galaxy 2's /StageData.