前言
今天的主题是休闲游戏制作全攻略,本文会介绍如何通过一款休闲游戏来进行变现
版权声明
本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明
更多学习资源请加QQ:1517069595或WX:alice17173获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)
点赞、关注、分享可免费获得配套学习资源
议题
![]()
今天的课程议题可以分为
游戏开发
游戏上架
游戏运营
一款游戏想要变现的前提是这款游戏是一款好游戏,所以第一个主题是讲解游戏开发
游戏开发完以后想要进行变现需要将游戏上架到各个游戏平台,上架游戏平台时会牵涉到接入这个平台所提供的支付或广告接口的问题
现在最常见的游戏的变现手段就是广告和内购,其中广告的比例会多一些,因为不管是微信游戏还是手机市场的游戏要进行内购就需要有版号,所以大部分游戏开发者在运营环节上都会选择广告来作为盈利手段
开发休闲游戏要解决的几个关键技术问题
![]()
如何发掘一款有潜力的小游戏的原型?
小游戏用什么模式开发?
没有美工怎么办?
如何让大家爱玩
如何发掘一个有潜力的小游戏原型?
![]()
发掘有潜力的小游戏原型主要有两个渠道
一,关注海外游戏排行榜
上图是比较流行的海外游戏开发商排行榜,前两名分别是小游戏之王Voodoo和一个很有名的游戏开发商Ketchapp,它们都是以小游戏开发见长的开发商,它们的游戏在国内不能直接运营,只能通过GooglePlay玩到
这也变相的带来了能挣到人生第一桶金的机会,海外游戏是不能直接拿到国内进行上架运营的,因为国内无法访问国外的游戏平台,而国内平台上架游戏所需的手续非常繁琐,所以这些游戏大多无法进入国内市场
所以可以通过把一些海外游戏作为游戏开发原型进行开发,但不是要开发一款一模一样的游戏,可以做一些微创新
二,关注一下海外玩家经常关注的一些小游戏搜索渠道
很多海外玩家都会关心Steam和UPLAY上面的一些游戏,一些游戏网站也会定期推送一些评分比较好的游戏,还有玩家的社区论坛和各大平台的游戏榜单
排行榜前十热门游戏特点
![]()
小游戏进行微创新的四个方法
![]()
如何快速从备选游戏中淘汰不合格游戏?
![]()
将国外的游戏搬运过来做微创新时,应该如何发挥创意呢?
GameJam做原型
可以通过进行48小时的编程挑战,让游戏公司策划制定十几个,甚至更多的游戏策划案,这些游戏策划案可以是原创的,也可以对游戏原型做微创新,之后就让程序员在48小时以内开发出游戏的玩法,然后从这十几款游戏里选择出两三款比较好玩的游戏
这个阶段只是用来做游戏的玩法验证,所以不需要极致的画面效果,而是看这个游戏能不能反映出我们要做的那个游戏的原貌
投票决定留什么
可以通过团队投票来决定要开发什么样的游戏,这个团队未必就是游戏公司里的团队,也可能是大学里的学习社团,或者开发小组
小游戏用什么模式开发?
![]()
小游戏开发模式中需要注意到两个特点
一,拥抱变化
小游戏更新迭代速度比较快,所以要拥抱变化,也就是说小游戏的开发框架要能够适应游戏不断的发展变化
二,快速开发
小游戏的开发要求就是要快,如果拥有一个稳定的团队和成熟的框架技术后,就能非常快速地把这些游戏开发出来
拥抱变化
![]()
![]()
上图是一个游戏演示案例,上面PPT中的内容分别是这个游戏的数据架构,以及数据架构定好以后产出的配置文件
在游戏开发最开始就要产生游戏数据配置,在一些大型游戏里,这些数据配置是用Excel表格表示的,但对于小游戏来说,游戏本身就不大,使用Excel表格就有些多余了,采用数据架构的方式就可以了
下面是这款游戏的关卡数据配置
![]()
我们的关卡是层次配置
关卡由平台管理器构成,每一个平台管理器管理一到两个平台,每个平台又是由圆环管理器和砖塔管理器构成的,砖塔管理器管理所有砖塔,而圆环管理器管理所有的圆弧
关卡中除了平台配置还需要有玩家配置,所以关卡除了要管理平台还要管理玩家配置
好的程序一定是都是数据驱动的,这个概念对于学过一点计算机的同学应该很熟悉
![]()
很多同学都以为程序中的对象是在Unity中写的挂在GameObject上的脚本,但随着你写程序写的越来越多,就会发现:
如果所有的脚本都需要挂在Game Object进行控制,程序写起来就会比较混乱
所以在开发之前要确定数据驱动的框架,下面是数据驱动类的三要素
1,要有数据(数据域)
2,要有对数据的表现(表现域)
比如玩家的的模型、子弹的发射速度
3,根据数据动态的创建或销毁表现域的方法
根据数据域动态销毁表现域的方法
我们在上图最上面的代码块中定义了程序的规范,也就是接口,它定义了每个对象都要有对象创建和对象销毁的功能
上图中下面的代码块是一个关卡对象,它在进入游戏时会创建,退出游戏时会被销毁,因为它实现了IDynaObj接口,这个接口中定义了两个规范:这个对象必须要能动态创建和这个对象必须要能动态销毁
关卡对象中的data是平台数据和玩家数据,下面一行的represent是游戏数据的表现,它负责平台和玩家的绘制和逻辑,其中的结构是一层套一层的层次结构,后面的代码就是实现动态创建动态销毁
![]()
当游戏数据发生变化时应该如何表现
可以把整个场景中所有的元素都放在一个根结点下面,然后只需要在脚本中写下上图中的代码,就能让根结点广播一条消息,这条消息只会往发送消息对象的所有子节点发送,这样关卡里的每一个对象都能收到消息
开发小游戏的速度是很快的,一个小游戏基本上一周就能开发完,一个月就能上线,所以学习小游戏开发也是通过兴趣变现的最佳途径
想要开发小游戏还要面临的一个问题就是:
当脑子里的玩法不断的涌现时,你的程序是否能适应你的变化,当玩家不断增加时,程序框架能否为玩家提供新的内容?
![]()
其实这也是一个游戏成败的关键,要让代码能够快速适应不断变化的玩法可以加入热更新,现在比较流行热更新方案有三种
1,XLua
2,ToLua
3,ILRunTime
这三种方案有什么区别呢?
第一种方案是基于热补丁的更新方式实现的
第二种方案是比较传统的热更新方式
上面这两种方式都有一个缺点,就是需要另外学一门编程语言,这对于大部分小游戏公司来说都不怎么友好,因为招一个只懂C#的程序员的成本肯定比招一个既懂C#又懂Lua的程序员要低
所以前面两种开发方式对小游戏公司不怎么友好,而且它们的性能也没有ILRunTime高,在游戏开发中我更建议大家使用第三种方案,也就是使用ILRunTime进行开发
使用热更新方案后就可以通过热更来增加关卡,调节平台的外观,前面这两项是可以通过资源热更进行更新的,想要更新游戏中的代码逻辑就需要用到代码热更了
小结:为什么要采用数据驱动?
![]()
因为采用数据驱动修改数据配置时可以不修改代码,另外一个原因就是可以单独对配置进行热更新
如何学习
![]()
开发误区:什么都要用MVC
MVC框架比较重,而小游戏开发要求的是轻和快,所以我们开发游戏用的是由数据、逻辑代码、用户界面绘制、游戏事件系统构成的三加一模式
学习方法
在学习方法上,一定不能只停留在“我知道”上,而是”我会“,因为不管是自己创业,还是进入到一家公司里开发游戏,别人不可能去招一个只懂理论的开发者
学习误区
学习不一定就是要学最先进的,能学会的才是最厉害的技术,有些技术虽然先进,但如果你根本看不懂那对你来说又有什么意义呢?
没有美工怎么办?
游戏开发的过程中,有些地方是需要美工的,而一些小游戏团队也请不起特别好的美工,那么怎样能解决美工问题呢?
可以自己学一点简单的美工技术,自己能掌握一些美术技巧也会有一些好处,比如可以自己对游戏的玩法进行验证,可以自己创建简单的模型来验证玩法
为什么需要美工?
![]()
大致都是四点原因
1,不会建模
2,不会做动画
3,不会做游戏里的粒子特效和Shader特效
4,不会调场景
要解决上面几点问题其实只需要做一点点改变就可以了,但这一点点改变其实都是开发过程当中的经验总结
要解决建模问题可以学习一下ProBuilder,如果大家想要制作一些高质量的角色模型或者动画,可以在文末找爱丽丝老师领取学习资料
动画和粒子特效在我们的课程里有相应的解决方案
想要制作出好的游戏场景需要学习一些光照,场景后处理,屏幕特效的用法等知识
如何让大家爱玩
想要知道怎么做出一款让别人爱玩的游戏,就要去研究做得好的游戏有什么特别,下面是我们总结出的几点特点
1,变换的游戏效果
游戏效果包括了视觉效果、听觉效果、打到游戏角色后的掉血、弹幕
如果一款游戏没有任何反应,那这个游戏肯定是失败的
2,游戏的打击感
3,游戏的成就感
在玩RPG游戏时,你每完成一项任务,游戏都会提示一下任务成功了,播放一个动画或者音效,小游戏也是一样的,休闲游戏里的沉浸感就在于易学难精,这是需要策划动脑筋的
所以即使只是小游戏,想要把它做精致也是需要花功夫的
写在最后
更多学习资源请加QQ:1517069595或WX:alice17173获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)
点赞、关注、分享可免费获得配套学习资源
今天的主题是休闲游戏制作全攻略,本文会介绍如何通过一款休闲游戏来进行变现
版权声明
本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明
更多学习资源请加QQ:1517069595或WX:alice17173获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)
点赞、关注、分享可免费获得配套学习资源
议题
今天的课程议题可以分为
游戏开发
游戏上架
游戏运营
一款游戏想要变现的前提是这款游戏是一款好游戏,所以第一个主题是讲解游戏开发
游戏开发完以后想要进行变现需要将游戏上架到各个游戏平台,上架游戏平台时会牵涉到接入这个平台所提供的支付或广告接口的问题
现在最常见的游戏的变现手段就是广告和内购,其中广告的比例会多一些,因为不管是微信游戏还是手机市场的游戏要进行内购就需要有版号,所以大部分游戏开发者在运营环节上都会选择广告来作为盈利手段
开发休闲游戏要解决的几个关键技术问题
如何发掘一款有潜力的小游戏的原型?
小游戏用什么模式开发?
没有美工怎么办?
如何让大家爱玩
如何发掘一个有潜力的小游戏原型?
发掘有潜力的小游戏原型主要有两个渠道
一,关注海外游戏排行榜
上图是比较流行的海外游戏开发商排行榜,前两名分别是小游戏之王Voodoo和一个很有名的游戏开发商Ketchapp,它们都是以小游戏开发见长的开发商,它们的游戏在国内不能直接运营,只能通过GooglePlay玩到
这也变相的带来了能挣到人生第一桶金的机会,海外游戏是不能直接拿到国内进行上架运营的,因为国内无法访问国外的游戏平台,而国内平台上架游戏所需的手续非常繁琐,所以这些游戏大多无法进入国内市场
所以可以通过把一些海外游戏作为游戏开发原型进行开发,但不是要开发一款一模一样的游戏,可以做一些微创新
二,关注一下海外玩家经常关注的一些小游戏搜索渠道
很多海外玩家都会关心Steam和UPLAY上面的一些游戏,一些游戏网站也会定期推送一些评分比较好的游戏,还有玩家的社区论坛和各大平台的游戏榜单
排行榜前十热门游戏特点
小游戏进行微创新的四个方法
如何快速从备选游戏中淘汰不合格游戏?
将国外的游戏搬运过来做微创新时,应该如何发挥创意呢?
GameJam做原型
可以通过进行48小时的编程挑战,让游戏公司策划制定十几个,甚至更多的游戏策划案,这些游戏策划案可以是原创的,也可以对游戏原型做微创新,之后就让程序员在48小时以内开发出游戏的玩法,然后从这十几款游戏里选择出两三款比较好玩的游戏
这个阶段只是用来做游戏的玩法验证,所以不需要极致的画面效果,而是看这个游戏能不能反映出我们要做的那个游戏的原貌
投票决定留什么
可以通过团队投票来决定要开发什么样的游戏,这个团队未必就是游戏公司里的团队,也可能是大学里的学习社团,或者开发小组
小游戏用什么模式开发?
小游戏开发模式中需要注意到两个特点
一,拥抱变化
小游戏更新迭代速度比较快,所以要拥抱变化,也就是说小游戏的开发框架要能够适应游戏不断的发展变化
二,快速开发
小游戏的开发要求就是要快,如果拥有一个稳定的团队和成熟的框架技术后,就能非常快速地把这些游戏开发出来
拥抱变化
上图是一个游戏演示案例,上面PPT中的内容分别是这个游戏的数据架构,以及数据架构定好以后产出的配置文件
在游戏开发最开始就要产生游戏数据配置,在一些大型游戏里,这些数据配置是用Excel表格表示的,但对于小游戏来说,游戏本身就不大,使用Excel表格就有些多余了,采用数据架构的方式就可以了
下面是这款游戏的关卡数据配置
我们的关卡是层次配置
关卡由平台管理器构成,每一个平台管理器管理一到两个平台,每个平台又是由圆环管理器和砖塔管理器构成的,砖塔管理器管理所有砖塔,而圆环管理器管理所有的圆弧
关卡中除了平台配置还需要有玩家配置,所以关卡除了要管理平台还要管理玩家配置
好的程序一定是都是数据驱动的,这个概念对于学过一点计算机的同学应该很熟悉
很多同学都以为程序中的对象是在Unity中写的挂在GameObject上的脚本,但随着你写程序写的越来越多,就会发现:
如果所有的脚本都需要挂在Game Object进行控制,程序写起来就会比较混乱
所以在开发之前要确定数据驱动的框架,下面是数据驱动类的三要素
1,要有数据(数据域)
2,要有对数据的表现(表现域)
比如玩家的的模型、子弹的发射速度
3,根据数据动态的创建或销毁表现域的方法
根据数据域动态销毁表现域的方法
我们在上图最上面的代码块中定义了程序的规范,也就是接口,它定义了每个对象都要有对象创建和对象销毁的功能
上图中下面的代码块是一个关卡对象,它在进入游戏时会创建,退出游戏时会被销毁,因为它实现了IDynaObj接口,这个接口中定义了两个规范:这个对象必须要能动态创建和这个对象必须要能动态销毁
关卡对象中的data是平台数据和玩家数据,下面一行的represent是游戏数据的表现,它负责平台和玩家的绘制和逻辑,其中的结构是一层套一层的层次结构,后面的代码就是实现动态创建动态销毁
当游戏数据发生变化时应该如何表现
可以把整个场景中所有的元素都放在一个根结点下面,然后只需要在脚本中写下上图中的代码,就能让根结点广播一条消息,这条消息只会往发送消息对象的所有子节点发送,这样关卡里的每一个对象都能收到消息
开发小游戏的速度是很快的,一个小游戏基本上一周就能开发完,一个月就能上线,所以学习小游戏开发也是通过兴趣变现的最佳途径
想要开发小游戏还要面临的一个问题就是:
当脑子里的玩法不断的涌现时,你的程序是否能适应你的变化,当玩家不断增加时,程序框架能否为玩家提供新的内容?
其实这也是一个游戏成败的关键,要让代码能够快速适应不断变化的玩法可以加入热更新,现在比较流行热更新方案有三种
1,XLua
2,ToLua
3,ILRunTime
这三种方案有什么区别呢?
第一种方案是基于热补丁的更新方式实现的
第二种方案是比较传统的热更新方式
上面这两种方式都有一个缺点,就是需要另外学一门编程语言,这对于大部分小游戏公司来说都不怎么友好,因为招一个只懂C#的程序员的成本肯定比招一个既懂C#又懂Lua的程序员要低
所以前面两种开发方式对小游戏公司不怎么友好,而且它们的性能也没有ILRunTime高,在游戏开发中我更建议大家使用第三种方案,也就是使用ILRunTime进行开发
使用热更新方案后就可以通过热更来增加关卡,调节平台的外观,前面这两项是可以通过资源热更进行更新的,想要更新游戏中的代码逻辑就需要用到代码热更了
小结:为什么要采用数据驱动?
因为采用数据驱动修改数据配置时可以不修改代码,另外一个原因就是可以单独对配置进行热更新
如何学习
开发误区:什么都要用MVC
MVC框架比较重,而小游戏开发要求的是轻和快,所以我们开发游戏用的是由数据、逻辑代码、用户界面绘制、游戏事件系统构成的三加一模式
学习方法
在学习方法上,一定不能只停留在“我知道”上,而是”我会“,因为不管是自己创业,还是进入到一家公司里开发游戏,别人不可能去招一个只懂理论的开发者
学习误区
学习不一定就是要学最先进的,能学会的才是最厉害的技术,有些技术虽然先进,但如果你根本看不懂那对你来说又有什么意义呢?
没有美工怎么办?
游戏开发的过程中,有些地方是需要美工的,而一些小游戏团队也请不起特别好的美工,那么怎样能解决美工问题呢?
可以自己学一点简单的美工技术,自己能掌握一些美术技巧也会有一些好处,比如可以自己对游戏的玩法进行验证,可以自己创建简单的模型来验证玩法
为什么需要美工?
大致都是四点原因
1,不会建模
2,不会做动画
3,不会做游戏里的粒子特效和Shader特效
4,不会调场景
要解决上面几点问题其实只需要做一点点改变就可以了,但这一点点改变其实都是开发过程当中的经验总结
要解决建模问题可以学习一下ProBuilder,如果大家想要制作一些高质量的角色模型或者动画,可以在文末找爱丽丝老师领取学习资料
动画和粒子特效在我们的课程里有相应的解决方案
想要制作出好的游戏场景需要学习一些光照,场景后处理,屏幕特效的用法等知识
如何让大家爱玩
想要知道怎么做出一款让别人爱玩的游戏,就要去研究做得好的游戏有什么特别,下面是我们总结出的几点特点
1,变换的游戏效果
游戏效果包括了视觉效果、听觉效果、打到游戏角色后的掉血、弹幕
如果一款游戏没有任何反应,那这个游戏肯定是失败的
2,游戏的打击感
3,游戏的成就感
在玩RPG游戏时,你每完成一项任务,游戏都会提示一下任务成功了,播放一个动画或者音效,小游戏也是一样的,休闲游戏里的沉浸感就在于易学难精,这是需要策划动脑筋的
所以即使只是小游戏,想要把它做精致也是需要花功夫的
写在最后
更多学习资源请加QQ:1517069595或WX:alice17173获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)
点赞、关注、分享可免费获得配套学习资源