百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

不写代码,也能做游戏?

zhezhongyun 2025-03-02 19:56 25 浏览

任何一个热爱游戏的玩家都会有自己也做游戏的想法;我们也会对一个烂游戏发出这样的感叹:这算什么,我都能做的更好。有些人会仅仅感叹完就算,而另外一些人会去尝试:既然我玩过那么多游戏,我也想自己做一个游戏试试看。在如今这个手游风行的时代,做一个具有基本的技术水平的游戏的门槛已经降到了最低:一个独立开发者不用担心发行渠道,不用担心工具,只需要有过得去的美术和程序能力,和一颗热爱游戏的心就可以做出一款大热的游戏出来,App Store上也到处是个人开发者做出的游戏大红大紫的例子,比如《Flappy Bird》(至于《Flappy Bird》为什么火,那是另外一个故事)。

为大型游戏和专业开发者准备的工具已经相当多,这些工具之间的优劣也属于常年在专业开发者内部争论的话题,在此我们并不过多的深入。前段时间一个在线应用开发网站Appy Pie推出了新的GameBuilder,提供游戏模板,宣布用户不需要任何编程能力便足以做出一个新游戏出来,并且由网站提交给苹果进行审核。加之最近在WWDC中苹果也推出了新的开发工具Xcode Playgrounds,开发者可以更加直观便利的开发游戏,这再次引发了我们的思考:市面上这么多工具所号称的“不需要写一行代码就能够开发游戏”的口号真的是否现实?我们可以来考察一下这些工具。

■ 个人游戏制作工具的历史

RPG Maker VX,可以看出软件中已经提供了大量的素材可以使用,不过游戏机制还是勇者斗恶龙式的

个人独立开发游戏的工具大概可以追溯到很早以前的RPG Maker,其最早版本是在92年由日本公司Enterbrain发行。而第一个在Windows PC上运行的版本则是RPG Maker 95。从名字可以看出这是一个专门用来制作RPG游戏的软件,游戏里自带大量素材,使用者不需要编程只需要利用内置的事件编辑器和战斗编辑器就能够写出游戏的基本逻辑。

从名称上也可以看出这个软件能够开发出的软件基本上仅限于日式脚本RPG类型的游戏,但是仍然有玩家自己做出ARPG或者SLG类型的游戏。这需要重写游戏机制,玩家得非常熟练的使用编辑器才能做到。从这个角度而言,RPG Maker的地位相当于后来很多RTS自带的地图编辑器,只是可以导入游戏以外的美术素材。而著名的魔兽3的地图编辑器则相当于一个非常简化版的游戏制作工具,连目前大热的MOBA类型的游戏都是从魔兽3的个人自制地图开始的。

GameMaker: Studio,这已经算是一个比较现代和系统的开发工具了,提供大量的控件使用

GameMaker: Studio则是另外一个较早的个人游戏制作工具。GameMaker: Studio最早的版本发行于1999年,那时的名字还是Animo,原本是一款制作2D动画的软件。之后这个软件改名为GameMaker,变为一个主要是制作2D游戏的软件,只有有限的3D画面的支持。跟RPG Maker一样,用户不需要编程,可以只使用拖曳操作便可完成制作。软件还提供了一门脚本语言Game Maker Language可以应用于简单的编辑器无法满足要求的场合。

与同类工具一样,如果用户想要在不写代码的情况下完成一个游戏,那么就只能利用软件内部已经打包好的游戏机制来制作出游戏;但是如果用户所构思的游戏机制的复杂度达到一定的门槛,那么编写脚本和事件逻辑是不可避免的。随着现代游戏变得愈加精巧,这个工具本身也在随之进化;到现在为止GameMaker: Studio仍然在开发中,而且官网上也展示了不少使用他们的工具开发出的游戏。可以看出有不少独立开发团队也使用这个工具在开发游戏,但是恐怕优秀的游戏就不是宣传的“不需要编程”就能开发出来的了,而是需要大量的脚本编辑器使用。

■ 移动游戏时代的DIY套件

在如今的移动时代,软件和游戏开发门槛降低,工具也变得十分多样。商业开发者可以使用成熟的引擎开发,比如Unity3D或者更加复杂的PC界的虚幻引擎;具备比较强悍的编程能力也有野心的个人开发者可以使用诸如Torque3D这样的开源3D引擎;想要做普通2D游戏的个人开发可以使用coco2dx这样的开源2D游戏开发环境,或者使用诸如PhoneGap这样的网页包装工具将已经做好的网页游戏包装为移动平台应用。

以上所述都是相对而言专业正统的游戏开发工具,使用这些工具的仍然是专业的开发者:程序员、设计师和美工。个人游戏开发工具的目标用户则非常明确:业余开发者。所有的个人开发工具都强调不需要编程即可使用,是否真的如此?

GameSalad

GameSalad是比较著名的个人游戏开发工具。使用他们的软件仍然需要安装软件到本地电脑,想要开发iOS游戏,也需要安装标准的苹果开发环境Xcode以及购买99美元的苹果开发者资格 。软件里提供的是一个比较标准的软件开发环境,只是软件开发环境里所必须的很多需要编程的基础逻辑和机制结构都被作为控件向用户提供,用户只需要输入参数就可以使用。从这种意义上来说,使用GameSalad的确不需要编程,但是用户不可避免的需要了解一些软件工程的基础流程才能比较顺畅的实现目标中所需要的游戏机制。

“不需要写一行代码”是网站宣传里强调的

据使用过GameSalad开发过游戏的用户介绍,使用GameSalad生成的项目无法转为Xcode下的源代码进行二次开发,也有很多在Xcode环境下可以实现的功能无法在GameSalad下实现。这也说明了其并不是一个商业开发工具,不过个人用户想要做一些游戏机制比较简单固定的游戏是足够了。在官网上开发者不无得意的展示了不少已经发布的使用GameSalad开发环境所编写的游戏,其中还包括若干进入了排行榜前100位的游戏。

GameBuilder Studio

在GameBuilder Studio 的官方网站上这个工具被宣传为全平台的游戏制作工具。 在宣传中,软件的集成开发环境中功能和插件非常齐全,用户可以在同一个环境中开发iOS、安卓、Kindle、Ouya、Windows Phone、Facebook和网页以及Flash游戏,还提供了多人游戏和应用内购买的功能插件,功能玲琅满目。开发商还特别强调了,他们是唯一一个能够在Windows环境下开发iOS游戏的工具。

支持的平台繁多,还包括开源游戏机Ouya

不过在对这个工具的官方网站进一步的观察之后,不难发现一个事实:GameBuilder Studio的用户群非常有限。工具Github页面已经数年没有进行大的更新,官方论坛上讨论寥寥。如果是一个流行的游戏制作软件,那么官方论坛上肯定满是讨论群组,会有大量的新用户会问一些最基础的问题,这是正常规律。但是官方论坛从这个软件2010年发布到目前为止只有96个帖子 。所有这样的个人开发工具的网站上都会提供一个展示页面,显示用户使用他们的工具开发出的游戏,但是这个工具的官方网站上虽然提到了这一点,却没有展示任何一款游戏。 到底有多少人在使用这个GameBuilder Studio,也就可想而知了。

Appy Pie’s GameBuilder

Appy Pie是一个在线应用开发网站,用户并不需要下载一套软件来进行应用开发工作,只需要点选网站提供的相应的模板然后适当的上传素材,或者干脆在网站提供的素材库里挑选,就可以完成一个应用,网站可以帮助你提交苹果进行审核。 这样开发出来的应用从本质上仍然是HTML5网页应用的打包,针对的是那些没有任何开发基础但是需要或者想要制作移动应用的用户的 。值得注意的是国内也出现了这样的自助应用创建网站:金和IU APP自助工厂、简网APP工厂、追信魔盒、等等。

从网站的宣传来看,应用开发就是简单的选择模板并且适当的自定义就可以了

不难想象一个典型的快速移动应用开发的典型场景:一个需要一个移动应用招揽客户的小餐馆老板,他没有时间和精力去学习程序开发,也没有足够的预算去请一个专业开发者,这样的快速开发工具正好给他提供了条件来做一个功能简单而明确的应用。然而任何事情到了中国都会带上某种中国特色。在金和IU APP工厂的宣传里,强调了“月饷计划”,鼓励开发者将生成的移动应用进行推广,并按照用户数与开发者结算收益。本来设想中的这种快速开发应用应该只是实现某些特定功能的辅助应用,但是以国内这样强调用户的推广方式,显然就不再是以实现简单功能的应用作为主要目标了。

这个网页游戏制作工具的具体流程就是这样几个极其有限的步骤

那么能不能将这种快速应用制作的方式扩展到游戏领域?Appy Pie最近做了一次尝试:GameBuilder。工具提供六个模板,用户只需要很少的几步就可以做出一个完整的应用并且提交审核。不过只需要稍微试验一下就能发现,用户所能控制的内容极少,基本上仅限于一些美术素材,而游戏最重要的游戏机制等等全都是模板已经限定清楚了的。在这六个模板里开发商还不无恶意的提供了“像素鸟”模板,用户能做的差不多只是将《像素鸟》里的鸟换成一些别的什么奇奇怪怪的物体,比App Store上铺天盖地的像素鸟寨版更加山寨,基本不可能通过苹果的审查。 从这个角度来看,Appy Pie提供的这个Game Builder与其说是一个工具,还不如说是一个玩具。

■ Swift:新希望?

Playgrounds的可视化开发环境的确直观,但仍然是一个编程开发工具

在最近的WWDC大会上,苹果宣布了新的开发语言Swift,号称降低了大量Objective C的编程复杂度,以及与之相伴的新工具,Xcode的完全可视化的游戏开发插件Playgrounds。这两个新工具的发布无疑为开发者带来了新希望,让人想起了微软在很多年前已经做过的工作,XNA:同样是面向开发者的轻量游戏开发平台。然而面向开发者的轻量游戏开发工具并不代表着对开发者毫无要求。在Xcode Playgrounds这种可视化工具下使用Swift语言编程与在XNA环境下使用C#语言编程一样,只是将游戏编程变得更加直观和方便,并没有降低编程本身的复杂度。这对于游戏开发者是一个利好消息,对于想要真正学习游戏开发的玩家同样是一个利好消息,但是这并不是那些号称“不需要编程就能开发游戏”的工具。

总有人会想要自己做游戏,就跟总有人需要一个简单的应用开发工具一样。但游戏毕竟是艺术与技术的结合:它的核心不是某些明确的功能,而是“玩”这个行为本身。所以想要让游戏变得“好玩”,任何设计师都仍然需要亲力亲为,自己去打造出一个游戏的核心机制出来,没有捷径可走。所谓个人游戏开发工具,只是将这个过程变得门槛更低,更加容易学习,而不是把“游戏”本身也一股脑的打包给用户。如果真的是想要自己设计游戏的未来设计师,无论使用什么样的工具,他们都会去实现自己的想法,去把游戏变得更好。


相关推荐

JPA实体类注解,看这篇就全会了

基本注解@Entity标注于实体类声明语句之前,指出该Java类为实体类,将映射到指定的数据库表。name(可选):实体名称。缺省为实体类的非限定名称。该名称用于引用查询中的实体。不与@Tab...

Dify教程02 - Dify+Deepseek零代码赋能,普通人也能开发AI应用

开始今天的教程之前,先解决昨天遇到的一个问题,docker安装Dify的时候有个报错,进入Dify面板的时候会出现“InternalServerError”的提示,log日志报错:S3_USE_A...

用离散标记重塑人体姿态:VQ-VAE实现关键点组合关系编码

在人体姿态估计领域,传统方法通常将关键点作为基本处理单元,这些关键点在人体骨架结构上代表关节位置(如肘部、膝盖和头部)的空间坐标。现有模型对这些关键点的预测主要采用两种范式:直接通过坐标回归或间接通过...

B 客户端流RPC (clientstream Client Stream)

客户端编写一系列消息并将其发送到服务器,同样使用提供的流。一旦客户端写完消息,它就等待服务器读取消息并返回响应gRPC再次保证了单个RPC调用中的消息排序在客户端流RPC模式中,客户端会发送多个请...

我的模型我做主02——训练自己的大模型:简易入门指南

模型训练往往需要较高的配置,为了满足友友们的好奇心,这里我们不要内存,不要gpu,用最简单的方式,让大家感受一下什么是模型训练。基于你的硬件配置,我们可以设计一个完全在CPU上运行的简易模型训练方案。...

开源项目MessageNest打造个性化消息推送平台多种通知方式

今天介绍一个开源项目,MessageNest-可以打造个性化消息推送平台,整合邮件、钉钉、企业微信等多种通知方式。定制你的消息,让通知方式更灵活多样。开源地址:https://github.c...

使用投机规则API加快页面加载速度

当今的网络用户要求快速导航,从一个页面移动到另一个页面时应尽量减少延迟。投机规则应用程序接口(SpeculationRulesAPI)的出现改变了网络应用程序接口(WebAPI)领域的游戏规则。...

JSONP安全攻防技术

关于JSONPJSONP全称是JSONwithPadding,是基于JSON格式的为解决跨域请求资源而产生的解决方案。它的基本原理是利用HTML的元素标签,远程调用JSON文件来实现数据传递。如果...

大数据Doris(六):编译 Doris遇到的问题

编译Doris遇到的问题一、js_generator.cc:(.text+0xfc3c):undefinedreferenceto`well_known_types_js’查找Doris...

网页内嵌PDF获取的办法

最近女王大人为了通过某认证考试,交了2000RMB,官方居然没有给线下教材资料,直接给的是在线教材,教材是PDF的但是是内嵌在网页内,可惜却没有给具体的PDF地址,无法下载,看到女王大人一点点的截图保...

印度女孩被邻居家客人性骚扰,父亲上门警告,反被围殴致死

微信的规则进行了调整希望大家看完故事多点“在看”,喜欢的话也点个分享和赞这样事儿君的推送才能继续出现在你的订阅列表里才能继续跟大家分享每个开怀大笑或拍案惊奇的好故事啦~话说只要稍微关注新闻的人,应该...

下周重要财经数据日程一览 (1229-0103)

下周焦点全球制造业PMI美国消费者信心指数美国首申失业救济人数值得注意的是,下周一希腊还将举行第三轮总统选举需要谷歌日历同步及部分智能手机(安卓,iPhone)同步日历功能的朋友请点击此链接,数据公布...

PyTorch 深度学习实战(38):注意力机制全面解析

在上一篇文章中,我们探讨了分布式训练实战。本文将深入解析注意力机制的完整发展历程,从最初的Seq2Seq模型到革命性的Transformer架构。我们将使用PyTorch实现2个关键阶段的注意力机制变...

聊聊Spring AI的EmbeddingModel

序本文主要研究一下SpringAI的EmbeddingModelEmbeddingModelspring-ai-core/src/main/java/org/springframework/ai/e...

前端分享-少年了解过iframe么

iframe就像是HTML的「内嵌画布」,允许在页面中加载独立网页,如同在画布上叠加另一幅动态画卷。核心特性包括:独立上下文:每个iframe都拥有独立的DOM/CSS/JS环境(类似浏...