当前位置:首页 » 软件设计 » 游戏软件设计

游戏软件设计

发布时间: 2020-12-02 03:23:50

⑴ gba游戏设计的设计开发软件是什么

1.GBA简介
Game Boy Advanced(GBA)是日本任天堂公司于2001年推出的一款32位掌上游戏机。它着重于游戏机的便携式,并且以游戏为主(3D游戏依然不错)。GBA有十分高效硬件图像处理加速,GBA基本上是现在全球公认的最佳的掌上游戏机。
GBA的硬件功能十分多。它的CPU是以RISC为基础的32位ARM CPU,主频是16.78MHz。屏幕最大支持240x160的16位真彩色显示。在图形处理方面GBA还另外提供了硬件加速,支持硬件上的图形旋转,缩放,alpha混合,face in/out淡入淡出等。
GBA的软件开发主要是以C语言为主,程序设计简单而且十分自由,也正是这一点吸引了许多爱好者在GBA上做东西(不一定是游戏)。你完全可以把它做成PDA,做成Mp3播放器(它的声音处理方面能力也不错哦),做成随身电影播放齐,做成电子词典等,只要你有能力设计它的软件。
不说多了,我们还是主要来看看如何开发GBA的软件。应该说,你只要会点C语言,就可以进入GBA的开发行列中了。在GBA上写程序比在电脑上写程序更简单。GBA是单总线的设计,也就是说通过简单的读写命令就能完成所有的内部硬件操作。访问GBA内部的寄存器就犹如访问一块内存一样简单,而GBA所有的功能都是通过读写寄存器而完成的。
2.GBA程序开发准备
GBA开发所需要的东西除了一台可以用的电脑外,主要就是一个编译器和一个GBA模拟器。
有了GBA模拟器,你就可以在你的电脑上运行GBA程序了。GBA模拟器应该是到处可以找得到的。我推荐的是VisualBoyAdvance。你可以在www.gbadev.org上下载最新的版本。如果你还想把你的程序弄到GBA机器上玩,那么除了应该有个GBA外,还应该有个ROM烧录器。比如EZ-Flash。通过它可以把电脑上的ROM烧录到GBA卡带上,然后放到GBA上运行。(总共一个GBA加一个128MB的EZ-Flash大概是1000元人民币)
GBA程序开发可以用汇编语言和C/C++语言来写程序,不过汇编语言比较复杂,而且不是我们平常使用8086汇编,而是Arm汇编。任天堂公司可能觉得C++程序运行消耗太大,不推荐C++语言来开发,所以我们都一直将C语言作为首选。
GBA开发所用的C语言编译器主要有两种,一种是免费的gcc,一种是Arm公司提供的ArmSDT。
这里的gcc当然不是简单的linux下的gcc,而是Arm Gcc。简单地说就是把我们平时常见的gcc改造成生成ARM CPU代码的gcc。你可能会问难道我们要使用linux操作系统了吗?其实我们还是在windows下做GBA开发,虽然gcc主要是在linux下的东西,但是我们也可以从cygwin(在windows下模拟UNIX的工具)中得到在windows下运行的gcc。你可以根据这个cygwin下的gcc,自己去配置Arm Gcc,也可以直接去下载个配置好了的Arm Gcc。比如DevKitAdv,你可以到http://www.gbadev.org去下载这个软件。DevKitAdv大概10多MB。有了它,你用不着去找什么cygwin(200-300MB)和配置什么Arm Gcc了,DevKitAdv已经帮你做好了一切,你只需安装它就OK了。
ArmSDT是Arm公司提供的专门为ARM CPU的开发程序的C语言编译器。前面说过,GBA是采用32位的ARM CPU,所以这个ArmSDT是可以用来开发GBA程序的。而且由于ArmSDT是ARM公司官方的开发包,所以它的编译速度和质量上都比免费的gcc要高,但对C语言的支持也不及gcc好(gcc毕竟已经成了C语言编译器的标准),最关键的问题它不是免费的,但是它的免费测试版还是可以用的。你可以到Arm公司的网站去下载ARMSDT2.51. http://www.arm.com。
我以DevkitAdv配置的gcc为主还讲解GBA的程序开发。
安装DevKitAdv很简单,用WinZip或WinRAR软件解压下载文件后,双击DKA_Setup.exe,出现下面的对话框,选择安装目录,然后点击"Install"就进行安装了。整个DevKitAdv共49MB,应该是十分小的。
编译器和模拟器都装好后,下面我们需要一批小工具,主要就是帮我们转换图片,声音等数据。GBA程序编译后通常都是一个rom文件,图像和声音等数据都是包含在主程序里的。这些工具能把我们电脑上的图片或声音文件转换成一个*.h头文件,然后包含在主程序里编译。关于这种转换工具也是有许多,我推荐的图形转换工具是kaleid_1-2-3,在http://www.gbadev.org上下载,它可以转换我们平时用的BMP文件。声音转换工具是wav2gbac.exe,也是在http://www.gbadev.org下载,它可以转换我们平时用的WAV文件。
好了,下载完后这两个小工具后,准备工作就算做完了。 |||
3.第一个GBA程序
现在我们开始我们的第一个GBA程序。在这个程序中我们将在屏幕上显示一张的图片。
首先你建立一张240*160大小,256色的bmp图片,比如这样:
名字就叫helloworld.bmp.打开刚才下载的Kaleid_1-2-3程序。选中菜单File中Open,打开这个helloworld.bmp文件,再选中菜单File中Convert and Save.出现对话框:
如图一样选择各项选择,特别注意的是一定要选择“BitMap Graphics(Mode 4)”和“Save As C Source”,并且去掉“#include <agbtypes.h>”的选择。最后单击“Convert and Save”,保存为helloworld.h。
图像数据已经转换好了,接着我们开始写代码。建立个main.c的文件,并把helloworld.h放在一个目录下。然后在main.c中写下代码:
typedef unsigned char u8;typedef unsigned short u16;typedef unsigned long u32;#define REG_DISPCNT *(u16*)0x04000000// 显示寄存器地址#define VRAM 0x06000000// 图像缓冲区地址#define PALETTE 0x5000000// 调色板地址#define MODE_4 0x04// mode4标志#define BG2_ENABLE 0x0400// BG_2标志#define SetMode(Mode) REG_DISPCNT=(Mode)// 设置显示模式的宏定义#include "helloworld.h"// 包含图像调色板和数据的头文件u16* palette_mem=(u16*)PALETTE;// 系统调色板u16* video_buffer=(u16*)VRAM;// 图像缓冲区void Draw(u16* src_palette,u16* src_data,u16* dst_palette,u16* dst_data);int main(){// 设置屏幕模式,这里使用MODE_4SetMode (MODE_4 | BG2_ENABLE);// helloworld_pal和helloworld_gfx是在"helloworld.h"定义的调色板和图像数据数组名Draw((u16*)helloworld_pal,(u16*)helloworld_gfx,palette_mem,video_buffer);// 死循环while(1){ ;}}// MODE_4绘图函数void Draw(u16* )0x04000000// 显示寄存器地址#define VRAM 0x06000000// 图像缓冲区地址#define PALETTE 0x5000000// 调色板地址#define MODE_4 0x04// mode4标志#define BG2_ENABLE 0x0400// BG_2标志#define SetMode(Mode) REG_DISPCNT=(Mode)// 设置显示模式的宏定义#include "helloworld.h"// 包含图像调色板和数据的头文件u16* palette_mem=(u16*)PALETTE;// 系统调色板u16* video_buffer=(u16*)VRAM;// 图像缓冲区void Draw(u16* src_palette,u16* src_data,u16* dst_palette,u16* dst_data);int main(){// 设置屏幕模式,这里使用MODE_4SetMode (MODE_4 | BG2_ENABLE);// helloworld_pal和helloworld_gfx是在"helloworld.h"定义的调色板和图像数据数组名Draw((u16*)helloworld_pal,(u16*)helloworld_gfx,palette_mem,video_buffer);// 死循环while(1){ ;}}// MODE_4绘图函数void Draw(u16* src_palette,u16* src_data,u16* dst_palette,u16* dst_data){int loop,x,y;// 写入目的调色板for(loop = 0; loop < 256; loop++)dst_palette[loop] = src_palette[loop];// 写入图像缓冲区for(x = 0; x < 120; x++)for(y = 0; y < 160; y++)dst_data[(y) *120 + (x)]=src_data[(y) *120 + (x)];}
最后建立一个编译批处理命令make.bat来帮我们编译生成目标代码。
写入下面的命令到一个新建的make.bat文件里面
PATH=C:“devkitadv“bin;%PATH%gcc -lm -o main.elf main.cobj -v -O binary main.elf main.binpause

如果你的devkitadv是在D盘,那么就应该是PATH=D:“devkitadv“bin;%PATH%,我这里的DevKitAdv是安装在C盘的。执行make.bat,如果没有错误的话就可以得到编译出来的main.bin和main.elf. main.bin就是可以运行的GBA的rom.你可以用的模拟器VisualBoyAdvance来打开运行它,或者烧录到GBA卡带上运行。
这是在模拟器VisualBoyAdvance中运行的结果。
下面我将一一讲解上面的程序
前三行:
typedef unsigned char u8;typedef unsigned short u16;typedef unsigned long u32;

定义GBA程序自己的数据类型,因为这样我们就很容易知道每个数据在GBA中占的字节数。
#define REG_DISPCNT *(u16*)0x04000000// 显示寄存器地址

REG_DISPCNT是设置显示模式的寄存器.GBA中有mode0-mode5六个显示模式。我们这个程序的显示模式是mode4,也就是240x160的8位色(256色)的双缓冲显示模式。比如mode3,就是240x160的16位真彩色的单缓冲显示模式。
#define VRAM 0x06000000// 图像缓冲区地址#define PALETTE 0x5000000// 调色板地址
VRAM就是GBA的显示内存,简单地说VRAM中的数据就是屏幕上的图象。跟我们的平常用的计算机一样的。PALETTE就是调色板地址,简单地说就是装图像调色板的地方。
#define MODE_4 0x04
这东西在网络文库有、自己找找吧

⑵ 最主流的3D游戏设计开发软件是什么

要数游戏开发软件最重要的软件,3dmax当之无愧,3dsmax是最常用的三维制作软件,不管是动漫行业还是游专戏属行业,都大量的应用3dsmax,不管是模型、动画、特效,3dsmax都可以制作出最精良最逼真的效果。
学3dsmax,不能单单只学习一个软件,而是要学习设计原理,现在的游戏动漫公司,都是几种软件配合使用,单单只会一种软件,是不能够满足公司要求的,学习3dmax要找一个好的3dsmax培训班,不止要教会学员使用3dsmax,还要教会学员设计原理以及其他软件。
资料来源sz.gamfe.com

⑶ 游戏软件设计专业较好的大学

2A游戏软件类专业除了那几间牌子学校有实力外,别的不建议去。从专业实力版水平来说,不论是权2A还是2B,我个人觉得华软不错,毕竟它是软件类的学校。我也是今年的考生,也是选了游戏专业,不过我的是美术类的,其实我更喜欢软件类的,可惜不能转,嘿嘿,插话啦

⑷ 游戏设计需要什么软件 游戏设计分几个部分

一款游戏不是用一款软件就可以开发出来的,牵涉到的软件也很多,下专面我就给属你列几款,一般大型的游戏都是用到如下软件、1.设计,一般前期设计图概念图可以是手绘,也可以是在软件中设计,设计的软件很多,一般可以画画的软件都行,如ps、sai、painter等,2建模动画,一般用到的软件3dmax 、maya、犀牛等3D建模软件,影视后期软件ae、premiere、等,最后一步就是编写程序,软件就不好说,看你是学习的什么语言但常用的是c语言编译器需要你自己去选择。
游戏设计一般分为几大块,原画设计、动画制作、动作指导、特效、声音、编程、测试。

⑸ 游戏设计中UI设计一般使用什么软件

游戏设计中UI设计一般使用软件:Adobe Photoshop、Adobe illustrator、After Effects、Axure RP。

Adobe Photoshop更适用于图像处理;Adobe illustrator更适用于出版、多媒体和在线图像的工业标准矢量插画。After Effects更适用于从事设计和视频特技的机构,属于层类型后期软件。Axure RP更适合快速创建应用软件或Web网站的线框图、流程图、原型和规格说明文档。



(5)游戏软件设计扩展阅读:

怎样做一个好的游戏UI设计师?

游戏UI设计不仅要考虑如何绘制花纹、摆放按钮,更重要的是考虑用户的交互方式,以及程序的实现。

在游戏研发前期,在美术风格还没有敲定下来的时候,游戏UI设计师就需要参与其中。游戏界面存在的意义就是为了实现游戏与玩家之间的交流,这里的交流包括玩家对游戏的控制,以及游戏给玩家的提示和反馈。游戏UI的首要目的是实现控制和反馈。

对于游戏UI设计师来说,工作职能不仅是做设计,还有效果,效果的好坏体现了设计师解决问题的能力。中途会遇到策划、程序等多方面问题,但是在同等资源条件下,得到更好的结果,体现设计师的价值。

参考资料来源:网络-UI设计

参考资料来源:网络-游戏UI设计:修炼之道

⑹ 可以自己设计或制作游戏的手机软件有哪些

制作一款游戏包括游戏策划、游戏美术、游戏程序三部分。手机软件目前无法做到设计一款游戏。但是pc端的软件有包括制作一款游戏的主要软件。

1、游戏策划制作常用的软件是:office系列软件、mindmanger、Unity3D。游戏策划也就是游戏的内容,好的游戏内容才会吸引到用户下载。

2、游戏美术制作常用的软件是:PS、AI、DW、FL、axureRP、HTML、CSS、Maya、3ds Max、Bodypaint、illusion、ZB。游戏美术制作相当于游戏的外貌,这款游戏是否够夺人眼球,就要看游戏美术制作人员。

3、游戏程序制作常用的软件是:C++、WIN32、DirectX、Box2D、Unity3d、cocos2d-x。游戏程序就是讲游戏内容转化为数据,一款游戏能否良好运营,游戏程序制作承担了很大的作用。

(6)游戏软件设计扩展阅读

制作一款游戏的团队配置:

一、前期策划:包括主策、数值、功能、文案、执行等等,就是编辑剧本、写述职报告、计算数值、设计场景角色。

二、美工:美工一般分为场景、角色、后期。

三、程序:所要做的是游戏场景与角色的碰撞块、角色的属性与怪物的属性。根据策划师给出的数值,编写代码,把属性现实化也就是让玩家看的见。

热点内容
美发店认证 发布:2021-03-16 21:43:38 浏览:443
物业纠纷原因 发布:2021-03-16 21:42:46 浏览:474
全国著名不孕不育医院 发布:2021-03-16 21:42:24 浏览:679
知名明星确诊 发布:2021-03-16 21:42:04 浏览:14
ipad大专有用吗 发布:2021-03-16 21:40:58 浏览:670
公务员协议班值得吗 发布:2021-03-16 21:40:00 浏览:21
知名书店品牌 发布:2021-03-16 21:39:09 浏览:949
q雷授权码在哪里买 发布:2021-03-16 21:38:44 浏览:852
图书天猫转让 发布:2021-03-16 21:38:26 浏览:707
宝宝水杯品牌 发布:2021-03-16 21:35:56 浏览:837