用 Pixi.js 仿一个 Brotato (一 设计篇)

简介: 用 Pixi.js 仿一个 Brotato

05d59ff00a9799026bc240d92a57c0b.png

系列文章:

前言

前阵子沉迷 Brotato 无法自拔,刚好掘金又出了个 码上掘金编程挑战赛,就想着用 Pixi.js 仿一个 Brotato,现在刚好活动告一段落,于是准备开一个新坑,算是做一个复习总结吧,也希望能对 Pixi 感兴趣的小伙们有所帮助,国内确实这方面的资料比较少(毕竟 PixiJS 的官网是英文文档)

10d13bf8fbd8afd9d14055a0bbdf891.png

关于 Pixi.js

官网的解释:HTML5创建引擎。最快、最灵活的 2D WebGL 渲染器。

特征

  • 支持WebGL渲染,因为能调用GPU渲染,所以渲染性能高
  • 支持canvas渲染,当设备不支持WebGL时自动使用canvas渲染,也可以手动选择canvas渲染
  • 简单易用的api,提供了很多封装的模块
  • 丰富的交互事件,支持完整的鼠标和移动端touch事件
  • 不侵入你的编码风格,可以自由选择使用它的多少功能
  • 与其他插件或框架无缝集成

详细点说:PixiJS 的核心是一个渲染系统,它使用 WebGL(或者Canvas)来显示图像和其他 2D 视觉内容。 它提供了完整的场景图(要渲染对象的层次结构),并提供交互支持以启用处理点击和触摸事件。 它是现代 HTML5 世界中 Flash 的自然替代品,但提供了更好的性能和像素级效果,超出了 Flash 所能达到的范围。 它非常适合在线游戏、教育内容、交互式广告、数据可视化……任何需要复杂图形的基于 Web 的应用程序。 再加上 Cordova 和 Electron 等技术,PixiJS 应用程序可以作为移动和桌面应用程序分布在浏览器之外。

Pixi API的优势在于它具有通用性:它不仅仅是一个游戏引擎。 因为你可以完全自由地使用它制作自己喜欢的东西,甚至是创建自己的游戏引擎。

流程

  • 创建舞台
  • 创建画布
  • 把画布挂载到DOM上
  • 创建精灵
  • 显示精灵
  • 操作精灵

这里大家先做简单了解,后续会结合案例给大家详细介绍

游戏设计

作为游戏开发的一环,前期游戏规则的制订,流程的设置,以及为后续功能扩展留好坑位十分重要,本篇的主要内容会围绕着游戏设计展开

游戏流程

Brotota 是一个肉鸽类的射击游戏,主要的游戏流程是怪堆里再规定时间内苟活,击杀怪物获得经验,过关升级可以加强属性和购买道具

这里我把流程简化了下,这样一个无限挑战的游戏流程就出来了

e3a1d15fb9cb299cda02b48f56a33e2.png

游戏元素

Brotato 的主角是各种各样的土豆,这里我就将角色设计成各种水果,当然初版只有一种,但只要把这个角色类设计好,后面的就是一个换肤和添加各种特色机制就可以了,怪物同理,其它的都是些公共元素,简单设计下就可以

8ccbefb5dfd6b8631fd7df8bfa84cdb.png

不多不少主要有6个元素,后续篇章将会对这6个部分做逐一的设计与讲解,每个都会以 js 中 class 的形式进行设计 (BroFruit,Board,Count,Role,Bullet,Monster...) ,力求尽可能的逻辑解耦与复用,敬请大家持续关注!

初版试玩~后续会更新更多模块与角色^-^

水果兄弟 BroFruit(仿 Brotato) - 码上掘金 (juejin.cn)

系列文章:

相关文章
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
71 2
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的医院综合管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的医院综合管理系统附带文章源码部署视频讲解等
36 5
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
64 4
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
56 4
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的大学生入伍人员管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的大学生入伍人员管理系统附带文章源码部署视频讲解等
68 4
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
73 3
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp宿舍管理系统的附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp宿舍管理系统的附带文章源码部署视频讲解等
63 3
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的家政平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的家政平台附带文章源码部署视频讲解等
45 3
|
1月前
|
JavaScript 前端开发
JS:一篇文章带你搞懂什么是异步
JS:一篇文章带你搞懂什么是异步