频道栏目
首页 > 资讯 > HTML高级教程 > 正文

GameMaker

22-08-09        来源:[db:作者]  
收藏   我要投稿

GameMaker 是一款拥有图形界面,可灵活编程,以2D游戏设计为主的游戏开发软件。本软件由 Mark Overmars 使用 Delphi 语言开发,于 1999 年 11 月发布了首个公开版本,在 4.3 版之后转为部分功能收费软件。后由英国公司 Yoyogames 收购,大力推动了欧美甚至是全世界独立游戏界的发展。最新版本为V8.1 。

基本信息

外文名称

GameMaker

开发者

Mark Overmars

 7aa93317dbd15b4c!400x400.jpg

分类

开发软件

类型

游戏引擎

目录

1软件介绍

2发展历程

3引擎特征

4HTML5版本

5工具特色

6高级功能

7引擎缺陷

折叠编辑本段软件介绍

GameMaker是一个游戏开发系统,允许你使用图形、按钮和文本创作自己的冒险游戏。由于其拖拽按钮与GML语言的特征,使用GameMaker开发游戏可以降低对编程知识的门槛要求。只要拖拽图形,输入文字,点击很少的几个按钮,选择一些控制选项,游戏很快就可以编写成功了。

折叠编辑本段发展历程

1999年11月15日,Gamemaker 1.1由荷兰乌得勒支大学计算机科学家Mark Overmars在其大学服务器发布。

2009年12月22日,Game Maker 8 最终版发布。

2020年8月20日,YoYoGames 正式发布GameMaker:Studio 2.3。

折叠编辑本段引擎特征

高自由度

在可制作游戏类型方面,GameMaker 是高度自由的,非常接近直接用编程语言可制作的游戏范围。诸如"弹幕射击+ 益智 "、" 街机闯关 + ARPG " 、" 迷宫冒险 +音乐游戏"之类的混合类型都可以自由制作。

软件的 3D 相关功能略显薄弱,仅是一个补充。国外爱好者为其开发了3D方面扩展引擎,已达到一般可用水平。如果开发者需要制作"2D + 3D" 效果的游戏,需要将游戏整体设计在 3D 模式之下。

GameMaker 内核为 DirectX 6 ,并不高级但久经考验。网游地推调查显示,由于国内非发达地区的公用电脑配置普遍不高,因此所开发游戏能够广泛的支持国内大部分电脑,免却后顾之忧。软件的处理优化方面,可满足常规制作,包括对 2D 游戏引擎要求最苛刻的弹幕射击游戏。

跨平台

GameMaker 软件本体以及所开发游戏,能运行在 PC/MAC 平台,运行游戏并不需要任何插件。官方曾表示过推出跨平台版本的意向。使用 Game Maker 7/8 编译出的游戏,可在最新的操作系统Windows 7 下运行。

GameMaker For Mac、GameMaker HTML5已经面世,GameMaker在未来将支持更多的平台,使用该软件也将获得更大的空间。

内置编程语言GML

GameMaker 最大的价值在于其内置的一套编程语言 -- The Game Maker Language (GML)。

GML 高度概括了 2D游戏设计能用到的共通编程语句,往往浓缩为一个简短灵活的函数,是"文字版的按钮",使设计游戏更为灵活。其与图形界面中的按钮有对应关系。使用按钮入门游戏制作的用户,可以从"我熟悉的按钮所对应的 GML " 来进阶学习。

举例:

我们要做一个跟踪导弹。

只需在导弹的循环动作中添加一行 move_towards_point(Enemy.x,Enemy.y,Speed)

这样便做好了对 Enemy 跟踪的导弹,跟踪速度为 Speed。

GML的潜在价值是不可估量的。

在世界游戏开发领域,我们经常碰到这样的事情:多种编程语言设计开发同一种游戏的问题。如同真实世界中,人们出现语言隔阂,可以用手势、表情与图画表达心意,程序员之间也可以用大家都理解的"伪代码"交流。

GML 与这种"伪代码"相似甚至相等。从某种意义上讲,用 GML 表述出来的程序逻辑已经简洁到极端。当从事复杂的游戏设计时,使用 GML 来描述结构,其明晰程度可谓首屈一指。随着独立游戏制作界整体水平逐步提高,这种潜在价值将愈加明显。

这些特色,使得一个 GameMaker 高级用户,即便是应付复杂游戏,也能以难以置信的高速制作;即使把游戏设计作为业余爱好,也能相对轻松步入最高阶段 -- 对游戏引擎结构进行优化调整。这都归功于 GameMaker 作者出色的设计才能。

拖拽按钮

GameMaker 设计游戏过程中的一大特征是,可使用拖拽按钮 (d&d) 进行游戏逻辑编排。

举例:

我们在场景放了 2 个球。要实现一个功能:2 球相撞时,A 球反弹,B 球爆炸。

具体做法是在 A 球的碰撞事件,拖拽反弹按钮;

在 B 球的碰撞事件,拖拽改变实例按钮,让 B 球变成爆炸动画;

编辑爆炸动画对象,在动画播放结束事件,拖拽销毁按钮。如此便完成了功能的制作。

这里不要求编程基础,却需要一个合乎编程过程的明确思路(事实上,可以近似认为是编程思想)。是真正意义上的"想到便能做到"。由此,GameMaker 为那些从未接触过编程,但热爱游戏的玩家,迈入游戏编程世界,提供了一个特别便捷有力的途径。

事件驱动

事件类型丰富周期(step)驱动脚本语言GML具有如下特征:

1 兼容C/VB写法,语法不严格,书写量少

2 可书写script来扩展功能(每个script是一个源件,相当于一个函数)

3 弱类型语言,而且写入字段无需预先声明

4 基于角色实例的域

5 资源树,可分类,每一类源件可自由分组,便于资源快速查找

6 不同的过程(事件/scritp)分开编辑(而不是多个过程在同一个版面)。

7 资源树中细致到每个script(相当于函数),每个script分开编辑,每一种源件都有editor ,既可使用象积木一样的action写程序,也可使用gml脚本语言,action的文本框中可使用复杂的表达式。表达式中可使用 变量名 运算符 函数 限定名,和gml代码中类似。

折叠编辑本段HTML5版本

该版本将支持用户在任何平台上开发出能在任意HTML兼容浏览器上可运行的游戏。此次新版本被命名为GameMaker:HTML5。

GameMaker:HTML5将会输出游戏到与HTML5相兼容的JavaScript,无需额外的插件或者额外的安装。

这个新版本采用了与前GameMaker版本相同的用户界面以及拖放功能。此外,新版本中还加入了一些新的功能,包括TeamCollaboration。TeamCollaboration将可以支持多团队成员同时进行一个项目开发。

YoYoGames的首席执行官SandyDuncan表示:"GameMaker:HTML5是GameMaker系列的一个巨大进步。对于能够推出这个新版本我们感到非常自豪。任何人使用该制作工具的人都可以实现创建游戏或网页内容的梦想。

"随着HTML5技术的愈发成熟,HTML5已经成为了一个标准。GameMaker:HTML5将会引发一场比以往任何时候都能够轻松构建和部署更加丰富和复杂内容的革命。"

折叠编辑本段工具特色

1 可开发大型游戏

2 可调用dll,来扩展功能

3 内置网络通讯,建立网络多玩家游戏(ipx tcpip 消息接发 sharedData..)

4 通用型maker,适于多种游戏类型,不是专为某一种游戏类型而设计

5 碰撞(相遇)功能 (碰撞事件,碰撞检测,contact,碰撞相关的移动,mask sprite........)

6 可以处理多个周期(alarm、timeline等)

7 Paths路径

8 适于鸟瞰地图的寻路(转弯寻路、A*寻路等)

9 绘图功能(draw事件 高级draw函数 alpha混合)

10 文件读写(ini 文本) 注册表读写 环境变量 外部程序 接收命令行参数

11 内置函数丰富,开发效率高

折叠编辑本段高级功能

1 定制遮罩绘制精灵图形,可以制作望远镜效果/按外形剪切图形外形显示

2 按遮罩透明度绘制精灵图形,可以绘制火焰/爆炸图形特效,去背景操作

3 完备的屏幕图形绘制功能,绘制规则形状/点/按钮/生命值条/路径/箭头/多种可选颜色/自由合成RGB颜色/截屏/获取屏幕信息

4 自定义各种属性文字绘制/图形化字符绘制/缩放/旋转/渐变填充等

5 高级绘制功能:绘制矢量点图形/带线框图形/圆角形/不规则多边形绘制

具有特别混合去背景效果绘制,多种可选模式,完成云彩/爆炸/魔法特效绘制

6 独有的支持元件图形tiles功能,让你轻松搞定类似采蘑菇型元件拼图式游戏

7 完全支持屏幕调整/设置显示器屏幕高/宽高度/颜色值/设置鼠标屏幕位置

8 游戏窗口操控/类似屏幕调整效果用来调整一个游戏窗口

9 独特的平面视角控制views,定制窗口大小观看舞台/类似摄影机跟踪效果,轻松完成第三人称RPG游戏

10 样式丰富的舞台转场效果/各种切换特效随意选择

11 游戏屏幕可选定时刷新功能

12 游戏信息显示功能,显示游戏帮助/游戏指令/显示图片/播放游戏动画

13 自定义/显示弹出对话框/显示问题对话框/输入数值/字符对话框。自定义对话框背景/文字/标题/按钮及字体/存储对话框/错误对话框

14 独有的高分排行显示/自动列举/显示/输入名称功能,轻松制作计分型游戏排行榜。

15 上百条功能函数完全操控精灵图像/背景/3d声音/字体/路径/物体/脚本/时间线/场景等资源的各种属性,并且有游戏中替换资源的功能,比如游戏中从其它目录中换取背景图形/换取声音/修改窗口大小/修改游戏帮助等完全更换各种资源。

16 文本文件读写/二进制文件读写/文本跳行/文件属性更改/文件查找/目录操作等

17 完全支持注册表操作/任意修改各种子键/支持ini文件读写操作/支持游戏中调用外在程序

18 独特的五种数据库类型数据/列表存储型数据

Stacks Queues Lists Maps Priority Queues

完成不同要求向堆饯添加/删除数据操作,适合RPG游戏等人物道具操作等

19 绚丽的粒子制作功能

简单的代码让你实现各种专业级的各种粒子效果,内置焰火/烟雾/爆炸/雨雪气候等多个特效直接调用,并可设置发射器/挡板/反弹板/引力板等完全自定义功能

20 功能强大底层网络编写功能,让你从最底层开始自己制作自己的网络交流/信息传输机制

21 新加的强大的3D制作功能,完成3D-fps的场景/贴图/雾效,以及自定义显存绘制surface,完成专业图像级别得心应手,自定义多边形/摄影机/灯光等。

加上众多高手为GM编写了无数的动态库连接插件dll,GM可谓此类工具里面的最优选择。

折叠编辑本段引擎缺陷

由于此软件并未针对亚洲市场销售,在 GameMaker 5.3 版之后,不能直接在汉字及日韩文等 Unicode 编码文字。已有一些国内爱好者为其开发了实用的中文显示扩展插件,但字体华丽度一般。中国独立游戏发展历程中,对文字类游戏开发具有相对丰厚经验积累,因此若要设计纯文字游戏,请选用其他软件,也是对作品的尊重。GameMaker 的中文显示功能,正确用途是为动作性游戏显示汉字进行有效补充。

相关TAG标签
上一篇:HTML5+CSS3网页设计与网站布局从新手到高手
下一篇:网页设计与制作:HTML5+CSS+JavaScript
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站