Difference between revisions of "List of development tools"
Jump to navigation
Jump to search
m (Added WiiLÖVE) |
|||
(37 intermediate revisions by 23 users not shown) | |||
Line 1: | Line 1: | ||
− | These '''Development Tools''' can help you develop homebrew applications and games for the Wii. The most important tool for Wii development is [[ | + | These '''Development Tools''' can help you develop homebrew applications and games for the Wii. The most important tool for Wii development is [[DevkitPPC]], a port of the GCC toolchain along with supporting system libraries. The development tools listed below make development easier or to add additional functionality. |
== Core development == | == Core development == | ||
Line 25: | Line 25: | ||
! Description | ! Description | ||
! width="20%" | Author | ! width="20%" | Author | ||
+ | |- | ||
+ | | [[GameFramework|Game Framework]] | ||
+ | | This is a basic framework to guide programmers in things like XML, Fonts, Images & the C++ Standard Template Library. | ||
+ | | [[User:Titmouse|Titmouse]] | ||
|- | |- | ||
| [[GRRLIB]] | | [[GRRLIB]] | ||
Line 41: | Line 45: | ||
| Framework for graphics, input, audio, and so on. Friendly, easy coding | | Framework for graphics, input, audio, and so on. Friendly, easy coding | ||
| [[User:Minishlink|Minishlink]] | | [[User:Minishlink|Minishlink]] | ||
+ | |- | ||
+ | | [[MTek-GDL]] | ||
+ | | An easy to use object-oriented game development library ideal for simple and advanced Wii game projects | ||
+ | | [[User:TheCodingBrony|TheCodingBrony]] | ||
|- | |- | ||
| [[SDL Wii]] | | [[SDL Wii]] | ||
| SDL port with SDL Mixer, Image, gfx, and ttf | | SDL port with SDL Mixer, Image, gfx, and ttf | ||
| Numerous | | Numerous | ||
+ | |- | ||
+ | | [[WiiLÖVE]] | ||
+ | | Framework for making 2D Nintendo Wii homebrew games in Lua | ||
+ | | [[User:HTV04|HTV04]] | ||
+ | |- | ||
+ | | [[Wire3D]] | ||
+ | | Object oriented multiplatform 3D engine for Wii and Windows (DirectX) | ||
+ | | [[User:Antibyte|antibyte]] | ||
|- | |- | ||
| [[wit]] | | [[wit]] | ||
Line 57: | Line 73: | ||
! Description | ! Description | ||
! width="20%" | Author | ! width="20%" | Author | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| [[FreeTypeGX]] | | [[FreeTypeGX]] | ||
| A wrapper class for libFreeType which renders a compiled FreeType parsable font into a GX texture | | A wrapper class for libFreeType which renders a compiled FreeType parsable font into a GX texture | ||
| [[User:ArminTamzarian|Armin Tamzarian]] | | [[User:ArminTamzarian|Armin Tamzarian]] | ||
+ | |- | ||
+ | | [[GEMS Wifi]] | ||
+ | | A library to help with the initialization of wifi related stuff for Wii and DS. | ||
+ | | [[User:GEMISIS|GEMISIS]] | ||
|- | |- | ||
| [[gl2gx]] | | [[gl2gx]] | ||
| OpenGL for the Wii and/or Gamecube. | | OpenGL for the Wii and/or Gamecube. | ||
| noeska | | noeska | ||
+ | |- | ||
+ | | [http://www.plaatsoft.nl/wiibrew/grrlib-4-2-x-freetype-support GRRLIB-FreeType] | ||
+ | | A easy extension on [[GRRLIB]] to support FreeType. Note: GRRLIB version 4.3.0 is supporting FreeType natively. | ||
+ | | [[User:wplaat|wplaat]] | ||
|- | |- | ||
| [[The HOMEbrew Menu Standard Library]] | | [[The HOMEbrew Menu Standard Library]] | ||
Line 85: | Line 101: | ||
| Minimum runtime image drawing extension for [[libwiisprite]] | | Minimum runtime image drawing extension for [[libwiisprite]] | ||
| [[User:henke37|henke37]] | | [[User:henke37|henke37]] | ||
+ | |- | ||
+ | | [[libdolfs]] | ||
+ | | A read-only .dol-attached Ramdisk. | ||
+ | | [[User:Hornpipe2|Hornpipe2]] | ||
|- | |- | ||
| [[Libmii]] | | [[Libmii]] | ||
| Retrieves Mii data | | Retrieves Mii data | ||
− | | [[User: | + | | [[User:Mdbrim|mdbrim]] |
+ | |- | ||
+ | | [[libnfs]] | ||
+ | | NFS driver for the Wii | ||
+ | | [[User:r-win|r-win]] | ||
+ | |- | ||
+ | | [[libNoise]] | ||
+ | | Noise generation library. Useful for terrain, and textures, among others. | ||
+ | | [[User:myrkr|myrkr]] | ||
+ | |- | ||
+ | | [[LibProfile]] | ||
+ | | Code Profiler | ||
+ | | [[User:nuke|nuke]] | ||
+ | |- | ||
+ | | [[libsicksaxis]] | ||
+ | | PS3 controllers to the Wii | ||
+ | | [[User:Xerpi|xerpi]] | ||
|- | |- | ||
| [[libosk]] | | [[libosk]] | ||
Line 97: | Line 133: | ||
| Easy access to the USB keyboard interface | | Easy access to the USB keyboard interface | ||
| [[User:Cboomf|Cboomf]] | | [[User:Cboomf|Cboomf]] | ||
+ | |- | ||
+ | | [[libwc24]] | ||
+ | | Library for WiiConnect24. | ||
+ | | [[User:Yellows8|Yellows8]] | ||
|- | |- | ||
| [[libwiilight]] | | [[libwiilight]] | ||
| Wii Disc slot light library | | Wii Disc slot light library | ||
| [[User:Cboomf|Cboomf]] | | [[User:Cboomf|Cboomf]] | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| [[Metaphrasis]] | | [[Metaphrasis]] | ||
Line 118: | Line 154: | ||
| [[User:Untitled|Untitled]] | | [[User:Untitled|Untitled]] | ||
|- | |- | ||
− | | [http://frontier-dev.net/2008/05/virtual-file-system.html | + | | [https://web.archive.org/web/20100430061620/http://frontier-dev.net/2008/05/virtual-file-system.html] |
| A simple library to read from different sources, like KDE's KIO | | A simple library to read from different sources, like KDE's KIO | ||
| [[User:frontier|frontier]] | | [[User:frontier|frontier]] | ||
Line 126: | Line 162: | ||
| pho | | pho | ||
|- | |- | ||
− | | [ | + | | [http://www.plaatsoft.nl/wiibrew/wii-network-library WiiNetwork] |
| Wii network threaded tcp/http library | | Wii network threaded tcp/http library | ||
| [[User:dhewg|dhewg]] and [[User:wplaat|wplaat]] | | [[User:dhewg|dhewg]] and [[User:wplaat|wplaat]] | ||
|- | |- | ||
− | | [ | + | | [http://www.plaatsoft.nl/wiibrew/wii-trace-module Tracing] |
− | | A library to | + | | A simple C++ library to trace logs event to file |
− | | [[User: | + | | [[User:wplaat|wplaat]] |
|} | |} | ||
Line 142: | Line 178: | ||
! width="20%" | Ported by | ! width="20%" | Ported by | ||
|- | |- | ||
− | | [ | + | | [https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/wiichat/box2d-wii.zip Box2D] |
− | | | + | | 2d physics library |
− | | [[User: | + | | [[User:Beardface|Beardface]] |
+ | |- | ||
+ | | [https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/melpo/FreeImage-Wii.zip FreeImage] | ||
+ | | Popular image library | ||
+ | | melpo | ||
|- | |- | ||
− | | [[ | + | | [[LibELM]] |
− | | | + | | A FAT driver using ELM FatFs |
− | | [[User: | + | | [[User:SquidMan|SquidMan]] |
|- | |- | ||
− | | [ | + | | [[libntfs]] |
− | | | + | | NTFS driver using NTFS-3G |
− | | | + | | shareese |
|- | |- | ||
| [[Lua for Wii]] | | [[Lua for Wii]] | ||
| Extensible scripting language | | Extensible scripting language | ||
| Feesh! | | Feesh! | ||
+ | |- | ||
+ | | [[Media:Minizip.zip|Minizip]] | ||
+ | | Simple unzip implementation using zlib | ||
+ | | [[User:Tantric|Tantric]] | ||
|- | |- | ||
| [[SDL_draw]] | | [[SDL_draw]] | ||
Line 162: | Line 206: | ||
| GCSX | | GCSX | ||
|- | |- | ||
− | | [[ | + | | [[SpiderMonkey]] |
− | | | + | | Port of Mozilla's C implementation of JavaScript |
− | | [[User: | + | | [[User:Mjbauer95|Mjbauer95]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| [http://wiimp.googlecode.com/files/sqlite3.6.11_wii.zip SQLite] | | [http://wiimp.googlecode.com/files/sqlite3.6.11_wii.zip SQLite] | ||
Line 181: | Line 217: | ||
| Simple C++ parser for XML files (Wii port) | | Simple C++ parser for XML files (Wii port) | ||
| [[User:Slappy|Slappy]] | | [[User:Slappy|Slappy]] | ||
+ | |- | ||
+ | | [[WiiPy]] | ||
+ | | Python for the Wii | ||
+ | | [[User:Comex|Comex]], [[User:tehpola|tehpola]] | ||
+ | |- | ||
+ | | [http://www.greenmaw.com/ahigerd/bullet-2.77-wii.zip Bullet-2.77] ([http://bulletphysics.org/ Homepage]) | ||
+ | | Professional 3D physics library | ||
+ | | [[User:ahigerd|ahigerd]] | ||
+ | |- | ||
+ | | [[libext2fs]] | ||
+ | | EXT2/EXT3 and EXT4 file systems driver | ||
+ | | [[User:Dimok|Dimok]] | ||
|} | |} | ||
Line 222: | Line 270: | ||
| [[User:Pinecone|Pinecone]] | | [[User:Pinecone|Pinecone]] | ||
|- | |- | ||
− | |||
− | |||
− | |||
− | |||
| [[Title Lister]] | | [[Title Lister]] | ||
| Lists version info for all titles stored on the Wii's internal NAND flash | | Lists version info for all titles stored on the Wii's internal NAND flash |
Latest revision as of 06:14, 18 April 2022
These Development Tools can help you develop homebrew applications and games for the Wii. The most important tool for Wii development is DevkitPPC, a port of the GCC toolchain along with supporting system libraries. The development tools listed below make development easier or to add additional functionality.
Core development
Title | Description | Author |
---|---|---|
devkitPPC | GCC/MSys and associated utilities, standard C libraries based on newlib | WinterMute |
libogc | Low-level libraries for interacting with Wii-specific sub-systems | shagkur |
Framework libraries
Title | Description | Author |
---|---|---|
Game Framework | This is a basic framework to guide programmers in things like XML, Fonts, Images & the C++ Standard Template Library. | Titmouse |
GRRLIB | GRRLib For GX Rgb Renderer Library, a simple C graphics library | NoNameNo |
libwiigui | A GUI-making library, with a template included | Tantric |
libwiisprite | A C++ sprite library which uses GX as its underlying rendering engine | Chaosteil, (Feesh!) |
MLlib | Framework for graphics, input, audio, and so on. Friendly, easy coding | Minishlink |
MTek-GDL | An easy to use object-oriented game development library ideal for simple and advanced Wii game projects | TheCodingBrony |
SDL Wii | SDL port with SDL Mixer, Image, gfx, and ttf | Numerous |
WiiLÖVE | Framework for making 2D Nintendo Wii homebrew games in Lua | HTV04 |
Wire3D | Object oriented multiplatform 3D engine for Wii and Windows (DirectX) | antibyte |
wit | A C++ development toolkit for event-driven programming | ahigerd |
Libraries
Title | Description | Author |
---|---|---|
FreeTypeGX | A wrapper class for libFreeType which renders a compiled FreeType parsable font into a GX texture | Armin Tamzarian |
GEMS Wifi | A library to help with the initialization of wifi related stuff for Wii and DS. | GEMISIS |
gl2gx | OpenGL for the Wii and/or Gamecube. | noeska |
GRRLIB-FreeType | A easy extension on GRRLIB to support FreeType. Note: GRRLIB version 4.3.0 is supporting FreeType natively. | wplaat |
The HOMEbrew Menu Standard Library | Quickly enable a HOME menu in your programs | Arikado, Pinball Wizard, WarpedFlash |
HomeMenu | A graphics library independent Home Menu library written in C | MetaFight |
libCanvas | Minimum runtime image drawing extension for libwiisprite | henke37 |
libdolfs | A read-only .dol-attached Ramdisk. | Hornpipe2 |
Libmii | Retrieves Mii data | mdbrim |
libnfs | NFS driver for the Wii | r-win |
libNoise | Noise generation library. Useful for terrain, and textures, among others. | myrkr |
LibProfile | Code Profiler | nuke |
libsicksaxis | PS3 controllers to the Wii | xerpi |
libosk | An on screen keyboard | Beardface |
libusbkbd | Easy access to the USB keyboard interface | Cboomf |
libwc24 | Library for WiiConnect24. | Yellows8 |
libwiilight | Wii Disc slot light library | Cboomf |
Metaphrasis | A static conversion class for transforming RGBA image buffers into various GX texture formats | Armin Tamzarian |
PNGU | A collection of functions for handling .png files | frontier |
SpriteManager | A easy to use sprite handler for libwiisprite (allow freetype text rendering) | Untitled |
[1] | A simple library to read from different sources, like KDE's KIO | frontier |
VKeyboard | Easy-to-Use Virtual Keyboard using the Wiimote. | pho |
WiiNetwork | Wii network threaded tcp/http library | dhewg and wplaat |
Tracing | A simple C++ library to trace logs event to file | wplaat |
Ported Libraries
Title | Description | Ported by |
---|---|---|
Box2D | 2d physics library | Beardface |
FreeImage | Popular image library | melpo |
LibELM | A FAT driver using ELM FatFs | SquidMan |
libntfs | NTFS driver using NTFS-3G | shareese |
Lua for Wii | Extensible scripting language | Feesh! |
Minizip | Simple unzip implementation using zlib | Tantric |
SDL_draw | SDL_draw port to wii | GCSX |
SpiderMonkey | Port of Mozilla's C implementation of JavaScript | Mjbauer95 |
SQLite | SQLite database library | DrTwox |
TinyXML | Simple C++ parser for XML files (Wii port) | Slappy |
WiiPy | Python for the Wii | Comex, tehpola |
Bullet-2.77 (Homepage) | Professional 3D physics library | ahigerd |
libext2fs | EXT2/EXT3 and EXT4 file systems driver | Dimok |
Resources
Title | Description | Author |
---|---|---|
BCX-BASIC | Using BCX Basic to develop applications for the WII | georgp24 |
BmpToZlibGC | Compress BMPs into includable header files | Cthulhu32 |
Code::Blocks | Code::Blocks is an IDE that can be used for cross compiling. | website |
Colorhelper | A short .h file which defines 19 colours and their hex codes | Pinecone |
Dollz | Compress DOL files | softdev |
EasyIOS | An app for browsing the device tree and trying out quick IOS commands without doing builds | Beardface |
gxtexconv | GX Texture Converter for Win32 and Linux | shagkur |
HBCXMLGen | App to aid creation of XML files for HBC | Pinecone |
Title Lister | Lists version info for all titles stored on the Wii's internal NAND flash | bushing |
USB mass storage device tester | Tests USB mass storage device reading and writing | svpe |
Wii Homebrew Cursors | Cursor images for Wii homebrew software | drmr |
WiiBuilder | Windows software to use for Wii homebrew development | Crayon |
Wiifuse server | Server for wiifuse to remotely mount the Wii's nand file system | dhewg |