LOFTER for ipad —— 让兴趣,更有趣

点击下载 关闭

游戏开发

3517浏览    447参与
啊骞狗子一天十个喷嚏

11.23 一点日记


最近真的是忙裂了,压力也很大。Taptap独立营还有一周的时间就截止了,这个项目做完后面还紧跟着摩尔庄园那边的合作项目而且只有我一个程序,昨天看了一下代码规范说实话真的有点忐忑,毕竟第一次参加这种正式的项目,不知道能不能做好,不拖累大家。


也得慌忙地复习六级,最近在尝试看Edge游戏杂志,比起看经济学人我还是喜欢看看我自己感兴趣领域的杂志,半猜半理解,iPad上的官方阅读器没有翻译功能,查词有点麻烦。


说实话我还是更喜欢打48小时的Gamejam,只图一个爽字。一个月的项目打到最后十天就已经很疲惫了,后期搭建关卡都是重复麻烦的工作了。前期写基本...

11.23 一点日记


最近真的是忙裂了,压力也很大。Taptap独立营还有一周的时间就截止了,这个项目做完后面还紧跟着摩尔庄园那边的合作项目而且只有我一个程序,昨天看了一下代码规范说实话真的有点忐忑,毕竟第一次参加这种正式的项目,不知道能不能做好,不拖累大家。


也得慌忙地复习六级,最近在尝试看Edge游戏杂志,比起看经济学人我还是喜欢看看我自己感兴趣领域的杂志,半猜半理解,iPad上的官方阅读器没有翻译功能,查词有点麻烦。


说实话我还是更喜欢打48小时的Gamejam,只图一个爽字。一个月的项目打到最后十天就已经很疲惫了,后期搭建关卡都是重复麻烦的工作了。前期写基本功能还能获得很多快乐,后期只觉得自己是一个工具人。


看起来是非常非常忙的十二月呢,各种课程都得对付期末考试和结课作业,救命啊呜呜呜呜(´△`)

Pixpil 皮克皮

Eastward风来之国-9月16日-正式发售

[图片]

久等了,Eastward风来之国将于9月16日在Swtich以及Steam、Wegame等平台正式发售。

国区定价68元,现在预购可享10%优惠。

感谢大家长久以来的支持与陪伴!

定档预告片:https://www.bilibili.com/video/BV1Wq4y1T74c?spm_id_from=333.999.0.0

Steam商店页面:https://store.steampowered.com/app/977880/Eastward



久等了,Eastward风来之国将于9月16日在Swtich以及Steam、Wegame等平台正式发售。

国区定价68元,现在预购可享10%优惠。

感谢大家长久以来的支持与陪伴!

定档预告片:https://www.bilibili.com/video/BV1Wq4y1T74c?spm_id_from=333.999.0.0

Steam商店页面:https://store.steampowered.com/app/977880/Eastward


莹昔

开发日记 2021/7/31

[图片]
[图片]
[图片]
[图片]
[图片]
这一周几乎在摸鱼,一度想要弃坑,但还是强行振作了起来。

主要工作是重画了几乎所有的界面UI,重点是实践了“莲子白-苍绿”“磨石紫-苍蓝”为基调的配色方案。

当然,审美并不能快速提高,该辣眼睛还是辣眼睛。但至少画风开始统一起来了。






这一周几乎在摸鱼,一度想要弃坑,但还是强行振作了起来。

主要工作是重画了几乎所有的界面UI,重点是实践了“莲子白-苍绿”“磨石紫-苍蓝”为基调的配色方案。

当然,审美并不能快速提高,该辣眼睛还是辣眼睛。但至少画风开始统一起来了。

扣肉‭‭‭
轩辕桃子
莹昔

开发日记 2021/7/3

[图片]
[图片]
[图片]

今天把武学系统的查看逻辑肝出来了。顺便补了一些之前的UI。





今天把武学系统的查看逻辑肝出来了。顺便补了一些之前的UI。

莹昔

开发日记 2021/6/30

[图片]
[图片]
[图片]
今天画了封面,大修了ui,增加了信息窗口,看起来顺眼多了。

纠结了很久,还是入了千库的会员。以我目前零基础的美术,要画完几十张地图的背景,纯手画恐怕不太现实……




今天画了封面,大修了ui,增加了信息窗口,看起来顺眼多了。

纠结了很久,还是入了千库的会员。以我目前零基础的美术,要画完几十张地图的背景,纯手画恐怕不太现实……

GAME798

做游戏开发需要学什么,小A同学真实分享!

作者:GAME798

近几年来游戏行业发生了翻天覆地的变化,以至于很多人现在都想加入这个行业,这个行业给大家的第一感觉是高工资,这无形之中就给游戏开发者蒙上一层很厉害的面纱。有的人为了换个环境,有的人是真心喜欢游戏这个行业,有的人是为了多金,但不管哪个方面,游戏行业对他们来说充满了色彩充满了希望。而今天所要说的小A就是当中的一个,今天就说说的A的游戏开发之路希望能给大家带来一些启示。

鎏鱼(yang)

我们开发中的独立游戏《天地人和三国志》,年轻时一身英雄气,越老越不中用的袁本初。

我们开发中的独立游戏《天地人和三国志》,年轻时一身英雄气,越老越不中用的袁本初。

鎏鱼(yang)

‍我们开发中的独立游戏《天地人和三国志》,江东猛虎孙坚。

‍我们开发中的独立游戏《天地人和三国志》,江东猛虎孙坚。

Orion专业户

用Unity简单实现明日方舟

作者:时光

审核:观复·钧天

[图片]

一、前言

这次学校工作室的考核任务(是的还是考核)是复刻一款游戏,给出了三个游戏选择(饥荒/杀戮尖塔/元气骑士)不过我都没有玩过,于是想了想我决定做一个简陋版的明日方舟。之前在b站看到过大佬仅耗时48小时开发出明日方舟的战斗界面,感觉好像也不会很难吧……就去试了!

但是做了之后才发现其实是很有挑战性的一次任务。先上两张游戏界面的图,完整游戏效果请见联盟公众号发布在b站的视频

[图片]
[图片]

二、制作思路

场景:

最开始我的想法包括了五个场景:两个关卡、选择干员的界面、看板界面和登录起始界面(包括一些本地化的内容,工作量挺...

作者:时光

审核:观复·钧天

一、前言

这次学校工作室的考核任务(是的还是考核)是复刻一款游戏,给出了三个游戏选择(饥荒/杀戮尖塔/元气骑士)不过我都没有玩过,于是想了想我决定做一个简陋版的明日方舟。之前在b站看到过大佬仅耗时48小时开发出明日方舟的战斗界面,感觉好像也不会很难吧……就去试了!

但是做了之后才发现其实是很有挑战性的一次任务。先上两张游戏界面的图,完整游戏效果请见联盟公众号发布在b站的视频


二、制作思路

场景:

最开始我的想法包括了五个场景:两个关卡、选择干员的界面、看板界面和登录起始界面(包括一些本地化的内容,工作量挺大的)。后来由于时间不够了就砍成了登录起始界面和一个关卡。

干员:2D骨骼/Trail Renderer

选择什么干员来演示比较合适呢?方舟并没有公开模型,如果要获取对应的gif会比较麻烦,而自己画角色好像也很麻烦。

纠结了半天我决定画三个自己的原创角色,并使用2D骨骼动画制作了相关的站立、战斗的动画(对2D骨骼感兴趣的同学可以在b站上找Michael老师的系列教程参考学习)

在干员战斗的时候你会注意到一些秘制特效,这是用Unity自带的组件Trail Renderer做的。这个组件很强大,如果加上一点代码能得到非常酷的效果。

关卡:2.5D/正交相机+透视相机

关卡界面我是完全按照方舟游戏本体的某一关来搭建的。

我们知道舟游的地图是3D的,但是干员又是纸片人,这种不同维度的结合势必会带来一些问题。几番考虑我决定在2D场景中创建3D的地图(其实是某种意义上的2.5D),正好Unity默认的Cube长宽为1,完美契合了地图格子的对应位置,能够得到下图的效果:

因为想要得到近大远小的效果,所以渲染地图的相机必须是透视而不是正交的,但是这样会导致我方干员贴图在挪动到地图边缘的位置时出现扭曲的现象。为了解决这个问题,我额外引入了另一个正交像机专门用来渲染干员预制件,这样干员在拖拽实例化之后怎么看都像端端正正站立在地图上的。

不过这样也会导致另外一个问题,那就是在靠近边缘的地方干员和格子可能无法很好的对应上。我认为是能找到一个数学模型来对应的,但是有点麻烦…

后来在参考研究48h开发明日方舟的白斗七星大佬的作品时发现他只用了一个摄像机,但是这个摄像机的机位很巧妙,把近大远小的影响压到了最小。

三、具体实现

标题场景比较简单,就是几个UI元素调到还行的布局,在此不多做论述。

进入关卡界面,我们大致可以把这个场景的关键元素分为三个:我方干员、敌方进攻单位和相关的UI数值变动响应。关于这三者,我的结构设计大致如下:

在上一期《用Unity简单实现合成大西瓜》一文中,我在代码结构的处理上非常糟糕,该封装的东西都没封装,导致整个代码结构特别复杂也特别乱。这次在这方面做了一些小小的努力,相对结构也还是能看的吧(笑~)

敌人相关

EnemyWaveController参(zhao)考(ban)了油管上Brackeys老师的教程,EnemyMove则使用了A算法。对于网格地图上的移动,除了A之外还有好几种其他的寻路算法,感兴趣可以上b站找Joe的视频参考学习。

为了减小开销(在频繁销毁生成的资源很多的时候,这点非常重要),敌人的生成和死亡使用了对象池

Player相关

第一次写接口(IPlayer)竟然是用在玩家的攻击和特殊攻击上。因为考虑到每个我方干员都有这两种攻击形式和一些属性,就整了这么个,后来用起来也还挺方便的。

PlayerMgr里的玩家列表对“已上场的干员”、“还未上场的干员”、“攻击范围内的干员”都有着至关重要的作用。UI的玩家图像按钮就是依赖于这个列表

玩家信息则存放的是该干员的部署费用、名字等元素

UI相关

有很多按钮的OnClick事件和一些与数值有关的事件委托。

其中最复杂的地方莫过于拖拽实例化+放置玩家+设置朝向。我的思路大概是这样的:

点击玩家按钮列表,利用eventHandler的drag函数在鼠标的地方实例化出对应干员 à 拖的时候对应的地块颜色变成绿色(调整材质球的颜色) à 松开鼠标,如果在适合的位置就吸附到该格子中心 à 调整朝向,攻击范围也随之改变 à 放置完成

想法挺简单的,写起来有点复杂..相信有更快更简洁的实现方式

四、回顾思考

值得改进的地方有许多,比如从代码角度出发,我的代码还不够精简(尤其是拖拽放置的那个模块),还不够OOP(

此外,从可玩性的角度出发,如果地图和敌人能做到随机生成,那么游戏的可玩性和难度会大大提升的

最后,感谢阅读到这里的你!如果你对这个项目有什么意见和建议欢迎私聊A君探讨

源码已上传GitHub:https://github.com/Guiny-Time/Arknights

ifeng-旋风

[图片]
开始做了 游戏好像明年后年能出?

可以去爱发电找ifeng旋风去赞助我


开始做了 游戏好像明年后年能出?

可以去爱发电找ifeng旋风去赞助我

鎏鱼(yang)

我们的独立游戏《天地人和三国志》人物,蜀汉五虎将马超。喜欢正统战略游戏新作的朋友请关注哈!

我们的独立游戏《天地人和三国志》人物,蜀汉五虎将马超。喜欢正统战略游戏新作的朋友请关注哈!

Orion专业户

用Unity简单实现合成大西瓜

作者:时光(逸仙工作室)

审核:白烟

最近一款名叫“合成大西瓜”的游戏风靡空间,大家在真香之后都笑称自己为“西瓜人”,随后各种恶搞大西瓜的趣图、大西瓜bot更是接踵而至,甚至诞生了“合成大西瓜护肝版”、“合成小葡萄”、“合成大国家”等一系列衍生体......本文将主要探讨如何用Unity做一个“合成大西瓜”。

第一步:素材搜集

素材,或者说贴图展现了水果们的样貌。在这里如果把贴图替换成其他元素,比如说欧【和】派【谐】啦、波兰球啦一类的我们就能得到合成大国家等等的恶搞游戏。

这里为了简单(其实是我不会画)表现一下水果,笔者画了几个球,如图:

[图片]

从左到右分别表示的是葡萄、小可...

作者:时光(逸仙工作室)

审核:白烟

最近一款名叫“合成大西瓜”的游戏风靡空间,大家在真香之后都笑称自己为“西瓜人”,随后各种恶搞大西瓜的趣图、大西瓜bot更是接踵而至,甚至诞生了“合成大西瓜护肝版”、“合成小葡萄”、“合成大国家”等一系列衍生体......本文将主要探讨如何用Unity做一个“合成大西瓜”。

第一步:素材搜集

素材,或者说贴图展现了水果们的样貌。在这里如果把贴图替换成其他元素,比如说欧【和】派【谐】啦、波兰球啦一类的我们就能得到合成大国家等等的恶搞游戏。

这里为了简单(其实是我不会画)表现一下水果,笔者画了几个球,如图:

从左到右分别表示的是葡萄、小可爱、橘子、柠檬、猕猴桃、西红柿、半个西瓜和西瓜。游戏规则是两个等级相同的水果可以合成更高一级的水果,合成出西瓜就算获得游戏胜利。

这里在合成路线上省略了椰子、土豆等中间部分的水果,因为道理是一样的嘛就不画了(说到底还是因为懒惰

第二步:UI

笔者简单设计了一个UI,如图2:

可以看到这个UI主要由三个部分组成。第一个部分是顶端的白色图片,这张图片将用于显示下一个出现的水果的图案;第二部分是左上角的分数,用来统计玩家通过合成获得的分数;第三部分则是左部、右部和底端的边界,都加上了碰撞器,防止水果掉出界面。

这两部分准备好以后就可以开始构思程序了

第三步:编程与实现

基本思路:给每个水果加上2D刚体和2D球状碰撞器,在鼠标点击的位置的x方向上实例化出对应的“下一个水果”。在水果的碰撞事件中两个水果被摧毁的同时生成高等级的水果,得分增加。

所以第一步是让对应的下一个水果实例化在鼠标位置的x方向上。因为涉及到水果的摧毁,所以不能直接实例化水果本体,否则会导致元物体被摧毁而无法继续实例化。所以思路是创建一个元物体的备份,在备份上进行实例化和摧毁的操作。


可以从图3和图4看到,带public访问修饰符的物体就是水果的本体,而下方隐式的物体则是相应水果的备份体。在鼠标点击后,从已经生成的随机数中选择出对应的水果并实例化在鼠标的世界坐标的x方向上。这里的5.0f是一个固定的y坐标,能够获得水果从屏幕顶端落下的效果。

第二步,实现相同水果撞击后摧毁并“合成”出更高一级的水果并加分,以葡萄为例(图5):

这里一共有四个操作:记录碰撞的布尔值变成true、积分增加10分、记录碰撞的位置和摧毁两个碰撞体。

你会注意到我没有直接在碰撞事件里生成下一等级的物体,而是将一个记录碰撞的布尔值改成了true。这是因为两个相互碰撞的水果都带有碰撞器,所以实际上这个方法是被执行了两次,执行的主体分别是碰撞的双方。如果在这个方法里直接实例化下一等级的水果的话,我们将直接得到两个紧贴在一块的水果,并直接到达合成路线的终点——大西瓜。

所以在这里采用了设布尔值的方式,在另一个类的LateUpdate方法里对布尔值进行检测并实例化下一等级的水果就能避免生成两个,如图6。

最后一步的随机生成的“下一个水果”,这个比较简单,就是用一个随机数进行选择就可以了(图7):

以上就是一些基本的思路。这个大概200行代码的重制版的“合成大西瓜”已经能实现原版的大部分功能,但是还缺少了失败判定功能(可以用触发器+FixedUpdate计时(懒得做了,反正我又不会输嘛))和一些激动人心(大雾)的音效,但是效果还是不如原版的好嘞~

ID818782956
游戏菌

中国大学生游戏开发联盟成立,首届中国大学生游戏开发大赛报名开始

作者:游戏菌

中国大学生游戏开发大赛从即日起开始报名,4月报名截止。活动面向全国大学生,不设专业,不设年级!只要是全日制非成人教育的各类高等院校在校专科生、本科生、硕士研究生和博士研究生(均不含在职研究生)都可申报作品参赛!

Friends-Mind

动物朋友同人游戏制作中,浅海篇

‍‍‍‍#动物朋友# #延续小包之旅# #独立游戏# #游戏开发# 

美妙的海底世界,有很多珊瑚礁哦。

随着深度呈現不同的景色喲(˙︶˙) 


企划详情:kemofure.com/Ark

感谢  @FriendsMind 协力开发


[图片]


[图片]


[图片]


[图片]

‍‍‍‍#动物朋友# #延续小包之旅# #独立游戏# #游戏开发# 

美妙的海底世界,有很多珊瑚礁哦。

随着深度呈現不同的景色喲(˙︶˙) 


企划详情:kemofure.com/Ark

感谢  @FriendsMind 协力开发











Orion专业户

简单的2D游戏开发经验分享

作者:时光

审核:円岛

前言

本文主要介绍的是我在参加学校工作室考核(是的)时开发一个简单的2D横板跳跃游戏时的一些思路和开发记录,如果你对游戏开发比较感兴趣并且想成为一个游戏开发者的话,这篇文章或许对你会有一些帮助!如果你是一个游戏开发者的话欢迎来和我交流:D!

1、引擎选择

当决定开发一款游戏的时候,第一步要考虑的是游戏引擎的选择。所以首先要问自己一个问题:我需要用什么游戏引擎来开发游戏?相对主流的两款游戏引擎分别是Unity和Unreal Engine4(UE4),二者各有利弊,比如Unity的3D渲染效果不如UE4,但Unity有许多插件可以使用,开发效率会更高。...

作者:时光

审核:円岛

前言

本文主要介绍的是我在参加学校工作室考核(是的)时开发一个简单的2D横板跳跃游戏时的一些思路和开发记录,如果你对游戏开发比较感兴趣并且想成为一个游戏开发者的话,这篇文章或许对你会有一些帮助!如果你是一个游戏开发者的话欢迎来和我交流:D!

1、引擎选择

当决定开发一款游戏的时候,第一步要考虑的是游戏引擎的选择。所以首先要问自己一个问题:我需要用什么游戏引擎来开发游戏?相对主流的两款游戏引擎分别是Unity和Unreal Engine4(UE4),二者各有利弊,比如Unity的3D渲染效果不如UE4,但Unity有许多插件可以使用,开发效率会更高。

由于本文介绍的是2D游戏的开发,所以我个人觉得Unity是一个更优的选择(其实是因为我们学校工作室考核要求用Unity)。但是说到Unity,你的第一反应可能是胖鼠的某首电音神曲,而对这个作为游戏引擎的这个单词感到陌生。为了让你对Unity产生一点熟悉感,我来举几个用Unity开发的游戏的例子。

许多优秀的2D游戏都是用Unity开发,比如DEEMO(古树旋律)、Plague Inc.(瘟疫公司)、Hollow Knight(空洞骑士)、Gris、Ori and the Will of the Wisps(精灵与萤火意志)、Lobotomy Corporation(脑叶公司)等等。除此之外,一些相对轻量的3D游戏也可以考虑使用Unity开发,比如Monument Valley(纪念碑谷)、The ROOM(谜室)、Outer Wilds(星际拓荒)、The Almost Gone(忆落谜境)、Kerbal Space Program(坎巴拉太空计划)等等。

(上面举例的游戏都很好玩XD!感兴趣可以玩玩看。

(明日方舟也是用Unity开发的!(尝试抓人入教


那么,选择好了游戏引擎接下来应该怎么做呢?当然是从官网上下载Unity(废话)!下载和安装Unity是完全免费的,建议在下载时选择“从Hub下载”(p4中的绿色选项)。Unity Hub非常便于管理项目和许可证(有的时候打不开项目是因为许可证过期,手动激活即可),也可以在Hub中选择安装多个不同版本的Unity自由切换。但是注意,更高级的编辑器版本中的一些功能可能无法在旧的编辑器上使用。


在安装好Unity之后,还有一个很重要的软件需要安装,那就是Visual Studio(VS)。VS是用来写代码的,因为做一个游戏肯定要通过写脚本来实现各种炫酷的功能啦。Unity的脚本编辑语言可以选择C#或者JS,这里建议选择C#(原因会在下文中解释)。如果本身有一定的JAVA编程基础的话是可以比较快上手C#的,因为二者在语法上有点像。

到这里,游戏引擎的选择和基本设置就完成了,我们可以进入下一个步骤——开发了。

2、开发流程

因为要做的是横板跳跃游戏,所以游戏的必备的两个元素已经出来了:地图系统和角色操控系统。在这个基础上开始思考接下来我们需要加入一些什么元素呢?我们可以给游戏加上故事和惊险刺激的战斗,这一切都基于“你想做一个什么样的游戏”。

我的大体思路是:主人公与几个NPC对话之后在商店里购买了武器,接下来用这武器打败了游戏里的大boss(可以吐槽我确实没有什么创新能力,这什么剧情...)。这个思路里面就包含了对话系统、商店系统、物品系统和战斗系统这么几个要实现的模块。于是,我们从思路中明确了我们接下来要实现什么样的功能,可以开始着手写代码了。

关于怎么写代码这一块:实现一个功能的方式有很多种,但是我们要尽量选择最优的那一种方式,所以在游戏开发中引入面向对象编程的思想是非常重要的。比如说可以装进背包格子的物品有一些公有的方法(获取名字、获取用途说明等等),我们可以用一个Iitem接口来存放这些公有的方法。尽量多使用接口或者采用合适的设计模式来编程。

之后需要美术来帮忙。如果自己不会画画的话,Unity的asset store里有很多免费的资源可以用。不过!还是和身边的大触们搞好关系吧(瘫痪

3、技术困难

写代码的时候遇到技术难题是很正常的,俗话说代码十分钟debug两小时不无道理。那么写脚本的时候遇到难题又没有人能问的时候怎么办呢?百度当然非常不错,但是百度广告太多,而且亲测上面有的方法并不是很棒(我当时找控制人物行走的脚本,测试了几个都有非常大的问题)。然后最重要的一点是:在网络上搜索解决方案的时候我们能查到的例子基本都是用C#写的,这也是为什么在上文中建议选择C#为脚本语言而不是JS的原因。

推荐一个好一些的网站(或者直接在谷歌上搜索也可以):

Stack Overflow:https://stackoverflow.com/

此外,你也可以在油管上试试看能不能找到答案。介绍一些不错的游戏开发相关的油管主:

Brackeys(涵盖了非常多内容)

Blackthornprod(内容比上面这位少一些,但都挺实用的)

Code Monkey(有很多关于C#编程的内容)

Telegram上有一个挺活跃的Unity技术交流群,你可以在上面问任何问题(仅允许使用英文)。TG链接:t.me/unityThreeD

给不能翻墙的朋友:

b站- M_Studio:

https://space.bilibili.com/370283072?from=search&seid=10106931170352874846

Siki学院:

http://www.sikiedu.com/

Unity官方手册:

https://docs.unity3d.com/cn/2018.4/Manual/index.html

Unity官方脚本文档:

英文:https://docs.unity3d.com/ScriptReference/

中文:https://docs.unity3d.com/cn/2018.4/ScriptReference/index.html

UnityList(有很多开源项目):

https://unitylist.com/

C#官方文档:

https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/


LOFTER

让兴趣,更有趣

简单随性的记录
丰富多彩的内容
让生活更加充实

下载移动端
关注最新消息