【Unity小技巧】全局事件监听——观察者/订阅发布模式
前言这里的「事件」指的是宏观的事件,而不是具体的事件,例如:按钮点击事件、碰撞事件等等,这些都属于事件;这一篇文章要解决的问题就是怎么处理这些事件的关系,比如你得到 100 个胡萝卜可以获得「萝卜收集者」的称号,如果你得到 1000 个胡萝卜,就可以得到「胡萝卜大师」的称号,那么应该怎么实现呢?可能 ...
阅读更多
比较完美的对话系统(二)剧本生成器
前言上一篇已经实现了比较理想化的对话系统,但是还有一个问题没有解决。使用数据驱动就会导致可读性很差,没办法让策划用 excel 表去配置游戏中的剧本,为了解决这个问题就需要制作一个「剧本生成器」。 所幸的是本人的本职工作就是 WEB 开发,制作一个可视化的网页版剧本生成器并不难。 上一篇文章:比较完 ...
阅读更多
比较的完美对话系统
前言从 cocos creator 开始到现在用 unity 制作了很多个失败的作品,并非一无所获。虽然玩家们不知道我们到底做了什么,但实际上我们没有发布出来的失败作品差不多有五六个。如果我推翻重构的也算上去,大概失败了有十次以上吧。 基本每一个项目都离不开对话系统,因此对话系统反反复复重置也有好几 ...
阅读更多
从零开始的像素画学习(三)临摹玛丽露
前言距离第一次画皮卡丘已经过去了 4 个月,由于游戏的进度停滞不前所以打算做点别的什么事情转换心情。这次要画的是玛丽露,使用临摹的方式。 参考图像参考图为宝可梦官方图鉴: PS 设置参考图首先新建一张透明底的空白图,用来作为画布;其次再打开上面的参考图,要让参考图一直显示在旁边,需要点击顶部导航栏 ...
阅读更多
记一次濒死体验——死亡烤鸭套餐
前言刚刚刷微博,看到有关急性胰腺炎的报道,回想起一件事,我觉得有必要记录下来。可能大家觉得死亡离自己是很远的一件事,我也这么觉得。但是去年的一件事改变了我的想法——我第一次经历到了濒死的体验。 那天晚上那天晚上,如同往常一样点外卖。因为附近的一家烤鸭很好吃,所以我连着好几天都点他们家的。 那是片皮的 ...
阅读更多
【Unity小技巧】Cinemachine 实现视野跟随
前言Cinemachine 是 Unity 的一个和摄像机相关的开箱即用包。完全不需要写代码,只需要在可视化的界面进行简单的配置即可实现视野跟随的功能。 安装 Cinemachine在 Unity 的顶部菜单栏中,选择 Windows(窗口)然后点击 Package Manager(包管理)。 接 ...
阅读更多
【Unity小技巧】像搭积木一样简单,组件化的开发思想!
前言昨天和今天都在研究平台小游戏的跳跃、攀墙等等基本功能。然后意外的发现了一个值得研究的项目:https://github.com/mixandjam/Celeste-Movement这个项目是模仿《蔚蓝》实现操作手感的优化。然而最重要的不是里面如何优化操作手感,而是这位老外的开发方式非常值得学习。 ...
阅读更多
【Unity小技巧】横版平台游戏之跳跃手感优化
通常的跳跃一般的跳跃是通过下面的代码实现的: 1rb.velocity = new Vector2(rb.velocity.x, jumpForce); 上述代码给刚体施加一个竖直方向的速度 jumpForce,从而使物体进行竖直上抛运动。这样的运动轨迹比较单一,即物体的跳跃高度与给定的 ...
阅读更多
【Unity小技巧】横版平台游戏之残影效果
前言小时候玩的《泡泡堂》里面有非常酷炫的“幻影效果”。商城售价¥9.8,最早去网吧 5 毛钱就能玩一个小时,后来涨到一块钱。十块钱意味着可以去网吧玩 10-20 个小时,所以这个幻影当时是狠下心才买的,效果如下: 这个效果十分酷炫,如果能加入到自制的平台跳跃游戏里,就更酷了! 如何实现幻影效果?幻 ...
阅读更多
【Unity小技巧】横版平台游戏之单点判定法接触地板检测
前言地板接触检测实际上是一个比较复杂的事情。因为角色可能会在地板上方,也可能在左侧或者右侧,甚至是在地板的下方(即头撞到平台上)。 因此碰撞检测不能简单地使用 OnCollisionEnter2D,OnCollisionEnter2D 只能简单的判定两个物体发生了碰撞,但是不能判定具体是碰到左边还 ...
阅读更多