Welcome to the Butano GBA Engine Exploration repository! This repo is a collaborative space dedicated to learning, experimenting, and mastering the Butano engine for Game Boy Advance (GBA) development. Whether you're a beginner or an experienced developer, this is the perfect place to dive into retro game development and push the boundaries of what can be created on the GBA platform.
Butano is a modern, high-level engine for Game Boy Advance that simplifies GBA development while offering powerful tools for creating 2D games. Butano allows developers to easily handle sprites, backgrounds, audio, and more without worrying about low-level hardware details.
- Sample Projects: Examples showcasing different aspects of Butano, such as sprite management, text rendering, audio integration, and more.
- Learning Resources: Tutorials, guides, and documentation to help developers of all skill levels get started with GBA development.
- Code Experiments: Hands-on experimentation with Butanoβs features, pushing the limits of whatβs possible on the GBA.
- Collaborative Projects: Work together with other developers to create exciting GBA demos and games.
- Best Practices: Tips, tricks, and best practices for optimizing GBA games using Butano.
To get started with Butano and GBA development, follow these steps:
-
Clone the Repo:
git clone git@github.com:GBA-Dev/supreme-spoon.git cd supreme-spoon -
Set Up the Butano Environment:
- Follow the Butano installation guide to set up the required tools and environment for GBA development, including devkitPro and grit.
-
Explore the Projects:
- Navigate to the
projects/directory to explore various example projects. - Each project has its own
README.mdfile with instructions and details.
- Navigate to the
-
Build a Project:
-
To compile any project, navigate to its directory and run:
make
-
Then, load the generated
.gbafile in your favorite GBA emulator (e.g., mGBA).
-
- Text Rendering: Learn how to display text on the screen using Butanoβs sprite text generator.
- Sprite Handling: Explore how to create, move, and manipulate sprites in a GBA game.
- Audio Integration: Experiment with playing background music and sound effects in a Butano game.
- Menu System: Build a basic menu system for GBA games with dynamic selections and transitions.
We welcome contributions! If you'd like to add sample projects, improve the documentation, or collaborate on a game, feel free to fork the repo and submit a pull request.
- Fork the repo.
- Create a new branch for your feature or bugfix.
git checkout -b my-new-feature
- Commit your changes.
git commit -m "Add new feature" - Push to the branch.
git push origin my-new-feature
- Submit a pull request!
This repository is licensed under the MIT License.
Feel free to reach out via our Discord community if you have questions, want to collaborate, or just chat about GBA development!