欢迎来到天天文库
浏览记录
ID:11475211
大小:309.50 KB
页数:7页
时间:2018-07-12
《从零开始学游戏编程——可视化编程游戏开发工具学习指南》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、从零开始学游戏编程——可视化编程游戏开发工具学习指南作者:baiyuzhong分类:移动专区阅读:8,485次添加评论文/王楠本文作者是一位游戏设计师,文中他将结合自身实践分析“门外汉”学习编程的难点,并分享利用可视化编程游戏开发工具学习游戏编程的经验。开发游戏可能是学习编程的理由中最吸引人的一条了。但如何从零开始入门,达到能够开发游戏的编程水平,是困扰无数勇敢少年们的传统难题。作为一名游戏设计师,我没有系统地学习过编程。从5年前开始,我有了自己从头完整开发游戏的念头,于是断断续续地看了很多书,试过了很多入门方法和
2、开发环境,但直到近半年才找到正确的门路。现在我在Unity开发环境下独立制作游戏原型和利用成型的框架完善游戏功能已不成问题。本文会介绍如何从零开始学习游戏开发编程的方法,希望能为和我一样挣扎在编程大门之外的游戏开发爱好者们提供帮助。不过事先要说明的是,这种学习思路是为了帮助你在做游戏的过程中逐渐学习编写程序,不适用于其他领域,但作为一种入门方法,它能让你在半年到一年的学习之后,做到独立制做小游戏(或原型)。门外汉学编程的难点介绍学习方法之前,我们先看看门外汉学编程最常遇到的问题。第一,程序员们经常说程序语言只是编程
3、工具,但市面上常见的教程都喜欢从语法、算法和程序语言的使用思想开始教学,而不是把编程语言当做解决实际问题的工具来入手。因此,初学者经常耗费很大精力才能理解书上写的算法和思想,却完全不知道理解之后能用来做什么。第二,很多编程教程虽然配有实例,但一方面例子的学习难度曲线增加得很快,刚看完一个“HelloWorld”实例,下一个例子可能就变成教你如何分配内存(真实的故事,我的一本学习Objective-C的教程就是这样的)。另一方面初学者在对开发流程不熟悉的情况下,很难做到举一反三,从一个实例里总结出做另外三个游戏的方法
4、,我经常遇见看了三个不同类型的游戏实例,放下书后却连一个游戏都做不出来的情况。图1从HelloWorld到实际的游戏项目之间,有一条门外汉难以跨越的鸿沟第三,很多编程教程为了提高普适性,在使用现成架构方面都很保守,导致了很多重复造轮子的教程出现。例如在前几年Cocos2D(一个用于iOS平台游戏开发的游戏引擎)还没有现在这么火时,几乎所有的iOS游戏开发教程讲的都是如何使用OpenGLES来制作游戏图像,而这些底层架构的实现对初学者来说是根本不可能完成的任务。因此,适合初学者的学习方针是:从实际需求出发;“怎么做”
5、优于“为什么”(为什么可以在入门之后再慢慢理解);使用允许你偷懒的工具或架构(需要做的越少越好)。这些要求其实很容易满足,答案恰恰在看起来和编程关系不大的领域——可视化编程工具里(VisualProgrammingTools)。可视化编程游戏引擎让你先做再想可视化编程泛指一切使用可视化元素的操作代替文本输入的程序设计方式,大体上就是像画流程图一样通过连接若干“盒子”和“箭头”来实现程序逻辑。这个概念在游戏开发工具上的应用越来越流行,近年来还有井喷趋势,从老牌的GameMaker、RPGMaker、TorqueGam
6、eBuilder、到新兴的GameSalad、Construct2和Unity都是其中的代表。尽管这些工具和引擎各有不同的开发方式,但它们都能让初学者在完全不懂编程语法和复杂算法的情况下快速实现自己的游戏设计。图2在Construct2下用了7个小时制作的游戏原型,包括一个特别的同色连击系统我之前的态度是宁可抱着“看也看不懂,看懂了也不会做”的书苦学XNA(一个微软发布的使用C#的游戏开发架构)和Cocoa(苹果发布的使用Objective-C的应用开发架构),也不屑于使用GameMaker、GameSalad之类
7、的图形界面开发工具。认为这些工具属于“业余型”,就算能做出游戏来也是旁门左道,不能修炼内功。直到有一次参加了柏林独立游戏BIGJam的活动,接触了很多非常优秀的游戏开发者。他们大部分人都把GameMaker和Flash这些简单的工具当做制作独立游戏的最佳选择。原因是他们多年以前开始学习游戏开发时使用的就是这些工具,常年的使用经验让他们能在最短的时间里用这些工具实现想法。而使用这些工具从头到尾制作了大量游戏的经历,也在他们以后学习用编程语言开发游戏时打下了很好的基础。从那之后,为了快速开发原型,我开始物色入门级的可视
8、化编程游戏引擎。HTML5游戏引擎Construct2偶然进入了我的视线。花十几分钟学习教程实例之后,我很快用几个小时做出了一个一直在构思的游戏想法(当然想法本身就很简单,而且制作过程中碰到实现困难的设计都进行了进一步简化)。说来惭愧,尽管在主机游戏业从业多年,这次使用Construct2的开发过程中我第一次感觉到对游戏开发的整个过程和架构有了初步认识。首先
此文档下载收益归作者所有