说起RPG,大概国人是不会陌生的。

这不得不从中国单机游戏市场说起,由于早期软件市场被盗版杀死,顺带的,单机游戏软件作为软件市场的分支,也没赚什么钱,养不活公司纷纷倒闭,只到RPG游戏《仙剑奇侠传》的风靡。

从全球市场来看,rpg视频游戏依然是最受欢迎的游戏类型。据数字软件协会统计,美国有1.45亿玩家经常玩视频游戏。

顺手推荐一本rpg设计指南:

《Swords & Circuitry: A Designer's Guide to Computer Role-Playing Games》 (Premier Press Game Development)

普通自学者的苦恼在于经常一个人独自前行,当你去论坛或者网站寻求答案时,经常得到的只是别人的沾沾自喜的演示效果,对自己没什么卵用。

而业余时间的摸爬滚打常常并不足以让你将自己的游戏想法实现。更多的时候他们只是散落在硬盘的各个角落,等到某一天,被一股脑的格式化掉。

所以,在我们开始前,要问自己几个问题:

第一个问题,你是否对最后的成品感兴趣?

也就是说,你对最终产品(一个完整的商业发布的游戏)感兴趣还是你感兴趣的只是游戏的实现细节。

如果你是后者,那么你可以考虑用你最喜欢的语言实现游戏的核心系统(相当于开发了一个游戏引擎),最常见的方面比如图形、物理、人工智能(AI)和文件输入和输出(I/O)。我不会深入探讨这些细节。

有很多大牛的书,将指导您完成这一过程,如《Programming Game AI By Example》(Mat Buckland)(我个人强烈推荐) 和《Game Engine Architecture》(Jason Gregory)。

如果你是前者,那么这一节的其余部分将帮助你做出更好的决定。

第二个问题,根据项目范围和要求, 你的目标平台是谁?

这个问题不仅推动项目进度,而且对编程语言的选择也有巨大的影响,反过来又将决定你游戏的最终解决方案。

目标平台在之前很少,几乎是微软的天下,但现在很多。包括个人电脑和笔记本电脑,运行Mac OSX或Windows,移动设备iOS,Android,或者Windows Phone,甚至包括PS4或Xbox游戏机

即使使用跨平台的游戏框架和引擎,仍然需要考虑不同平台的差异。比如libGDX虽然跨平台,但是表现最好的依然是桌面环境和android手机。还有不同平台的测试计划(注意善用来自用户的反馈以及第一轮用户错误)。

一旦目标平台选择了,编程语言的选择应该就更加明确。希望语言是你喜欢的或者擅长的,如果没有,需要有更多的时间在培训编程语言上。

第三个问题,你真的想要开发一个可交付的商业游戏,并选定了目标平台。那么你应该使用游戏引擎还是游戏框架?

游戏引擎,通常是一个封闭的黑盒解决方案(尽管有时有选择访问源代码),你开发你的游戏逻辑(语言由引擎决定),引擎处理主要的游戏循环。

游戏框架,是库的集合以及暴露应用程序编程接口(api)代表更高层次的抽象模块核心系统组件,如图形和文件I/O。你可以开发任何你游戏中需要的东西。

就选择而言,看你自己的喜欢已经对代码的控制程度。这里贴一下现在最流行的引擎以及框架供参考。

第四个问题:如果要开发我的游戏,实际的预算得有多少?

一直以来我做项目管理,就是管理三要素:时间、成本和质量。改变任何一个属性将会影响到其他两个,项目就是要控制三者的平衡。

举个栗子,比如你想找漂亮的美工,需要花8000,而你的预算只有500块,那你必定要牺牲质量和延长时间(比如用程序员的简笔画来替代-牺牲质量,而且你画画也会花更多时间-延长时间)

哪怕是简单的2d像素画,也是要精心处理之后才能使你的游戏出彩。即使是独立游戏,有别的噱头,当今的大多数观众任然有更多的期望。

预算的评估:

1.最贵的部分  art & music

2.引擎许可

3.你的持续热情

正如前一篇目录所列出的那样,我选择了libGDX框架和java作为开发语言,因为我的主业是某互联网金融公司的架构师,所以选择java是水到渠成的。

考虑到资源许可的问题,我选择了由金点工作室于2000年开源的共享软件《圣剑英雄传II番外篇》的素材,让前辈们的成果发挥一下余热。

在这个系列教程完成的时候,大家基本可以得到一个完整的rpg游戏(模版),通过扩展和新增内容,就可以开始征服属于自己的星辰大海。

精通libGDX游戏开发-RPG实战-开发游戏的基本前提的更多相关文章

  1. 精通libGDX游戏开发-RPG实战-欢迎来到RPG的世界

    欢迎来到RPG的世界 本章我会快速的使用tiled这样的瓷砖地图工具,来带领大家创造所设想的世界. 创建并编辑瓷砖地图 瓷砖地图(tile-based map)是广泛应用于各种游戏类型的地图格式,li ...

  2. 【Cocos2d-X游戏实战开发】捕鱼达人之开发前准备工作(一)

    本系列学习教程使用的是cocos2d-x-2.1.4(最新版为cocos2d-x-2.1.5) 博主发现前两个系列的学习教程被严重抄袭,在这里呼吁大家请尊重开发者的劳动成果, 转载的时候请务必注明出处 ...

  3. 【Android开发VR实战】三.开发一个寻宝类VR游戏TreasureHunt

    转载请注明出处:http://blog.csdn.net/linglongxin24/article/details/53939303 本文出自[DylanAndroid的博客] [Android开发 ...

  4. DirectX12 3D 游戏开发与实战第八章内容(下)

    DirectX12 3D 游戏开发与实战第八章内容(下) 8.9.材质的实现 下面是材质结构体的部分代码: // 简单的结构体来表示我们所演示的材料 struct Material { // 材质唯一 ...

  5. Libgdx游戏开发(2)——接水滴游戏实现

    原文:Libgdx游戏开发(2)--接水滴游戏实现 - Stars-One的杂货小窝 本文使用Kotlin语言开发 通过本文的学习可以初步了解以下基础知识的使用: Basic file access ...

  6. 原生Js贪吃蛇游戏实战开发笔记

    前言 本课程是通过JavaScript结合WebAPI DOM实现的一版网页游戏---贪吃蛇的开发全过程,采用面向以象的思想设计开发.通过这个小游戏的开发, 不仅可以掌握JS的语法的应用,还可以学会D ...

  7. html5游戏开发-零基础开发《圣诞老人送礼物》小游戏

    开言: 以前lufy前辈写过叫“ HTML5游戏开发-零基础开发RPG游戏”的系列文章,在那里面我学习了他的引擎以及了解了游戏脚本.自从看了那几篇文章,我便对游戏开发有了基本的认识.今天我也以零基础为 ...

  8. 使用HTML5开发Kinect体感游戏

    一.简介 我们要做的是怎样一款游戏? 在前不久成都TGC2016展会上,我们开发了一款<火影忍者手游>的体感游戏,主要模拟手游章节<九尾袭来 >,用户化身四代,与九尾进行对决, ...

  9. C#游戏开发中快速的游戏循环

    C#游戏开发中快速的游戏循环的实现.参考<精通C#游戏编程>一书. using System; using System.Collections.Generic; using System ...

随机推荐

  1. Two 观察者 observer pattern

    Two 观察者 定义 在对象之间定义一对多的依赖,当一个对象改变状态,依赖它的对象都会收到通知.并自动更新. 可以观察者自取,也可以主题去推送 其实就是设计两个接口. 相关原则 为交互对象之前的松耦合 ...

  2. Uva 11300 Spreading the Wealth(递推,中位数)

    Spreading the Wealth Problem A Communist regime is trying to redistribute wealth in a village. They ...

  3. HDU 1013 Digital Roots【字符串,水】

    Digital Roots Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  4. poj_2195Going Home(最小费用最大流)

    poj_2195Going Home(最小费用最大流) 标签: 最小费用最大流 题目链接 题意: 有n*m的矩阵,H表示这个点是一个房子,m表示这个点是一个人,现在每一个人需要走入一个房间,已经知道的 ...

  5. Centos7安装和卸载Mongodb数据库

    MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非 ...

  6. Quick Brown Fox

    The quick brown fox jumps over the lazy dog

  7. SQL强化(二) 在Oracle 中写代码

    一  : 关于查询中的转换 -- 字符串转换 一 : decode 函数 转换 SELECT DECODE ( PROTYPE.PRO_TYPE_DATE, 'L', '长', 'm', '短', ' ...

  8. 分布式监控系统--zabbix

    1Zabbix简介 Zabbix 是一个企业级的分布式开源监控方案. 2.监控系统架构 C/S架构 客户端/服务器端,这种架构适合规模较小,处于同一地域的环境 C/P/S 客户端/代理端/服务器端/, ...

  9. 小工具:截图&简单图像处理

    一.程序运行截图 二.获取屏幕截图的方法 首先知道我们可以通过Screen.PrimaryScreen.Bounds获取到当前整个屏幕,再利用Bitmap和Graphics就可以得到整个屏幕的图片了. ...

  10. 原生JavaScript常用的DOM操作

    之前项目一直都是用JQuery或者Vue来做的,确实好用,毕竟帮我们解决了很多浏览器兼容问题,但是后面发现大公司面试题都是要原生Javascript来做,然后我就一脸懵逼哈哈哈,毕竟大公司需要的框架或 ...