GBA游戏开发入门教程 GBA游戏开发是指在任天堂游戏机上进行游戏开发,现如今逐渐移植到PC机上。下面是GBA游戏开发的简单入门教程,适合新手。 DevKitAdv 简介 DevKitAdv 是一个用于GBA游戏开发的开发包,主要包括两部分:GCC++编译器和GBA库。GCC++编译器的功能和我们常用的VC差不多,只不过少了个编辑源代码的文本编辑器,另外也不支持类(class),只能用struct来替代。GCC++编译器的作用是把我们写的代码编译成二进制的可执行文件,这个可执行文件是相对GBA和GBA模拟器而言的。 GBA库提供了图像、控制及声音一系列的函数,与GCC++配合使用。下载地址:http://occultforces.mine.nu/~darkfader/gba/files/devkitadv.zip DevKitAdv 的安装 DevKitAdv 的安装非常简单,只需要解压后就可以直接使用,编译时设置DevKitAdv的路径就可以了,建议做一个批处理文件,例如go.bat: set PATH=d:\devkitadv\bin;%PATH% cmd (win98 是 command) 最简单的GBA程序 下面是一个最简单的GBA程序的代码: ```c // main.c // 一些基本数据类型 typedef unsigned char u8; typedef unsigned short u16; typedef unsigned long u32; #define REG_DISPCNT *(u16*)0x04000000 // 显示寄存器地址 #define VRAM 0x06000000 // 图像缓冲区地址 #define M5_VRAM 0x0600A000 // M5 缓冲区地址 #define BACKBUFFER 0x010 // 双缓冲/背缓冲地址 #define PALETTE 0x5000000 // 调色板地址 #define MODE_3 0x03 // 240*160 15bits/单缓冲区 #define MODE_4 0x04 // 240*160 8bits/双缓冲区 #define MODE_5 0x05 // 160*128 15bits/双缓冲区 #define BG2_ENABLE 0x0400 // BG_2 #define SetMode(Mode) REG_DISPCNT=(Mode) // 设置显示模式的宏定义 // ----------- 主程序 ------------ int main(){ // 设置屏幕模式,使用 MODE_4 SetMode (MODE_4 | BG2_ENABLE); } ``` 这个程序将设置屏幕模式为MODE_4,并启用背景层2。 MODE_4 背景层画图 在GBA的MODE_4里画一幅图需要经过3个步骤: 1. 把原始256色图像文件转换成*.h / *.c 的数据文件,我们用的是<BMP2GBA>,这里以"image.bmp"为例,转换后我们就得到了一个"image.h"文件; 2. 在程序开头#include "image.h",这样就能在程序中使用"image.h"定义的调色板和图像数据; 3. 在程序中把"image.h"定义的调色板和图像数据写入MODE_4背景层的调色板和图像缓冲区。 下面是一个使用MODE_4背景层画图的程序: ```c // 包含图像调色板和数据的头文件 #include "gfx/image.h" // ----------- 全局变量 -------- // 系统调… ``` 这个程序将使用"image.h"定义的调色板和图像数据,画一幅图在MODE_4背景层上。
- q2749890792013-09-16貌似是转载的,,!
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助