pixi 小游戏_pixi2d小游戏跳一跳源码/pixi教程,基于pixi-spine的2d游戏
jump-gammer
这很简单,先这样再这样(= = 哈哈哈,做的时候就各种红了)。这个项目是我上一年参加虎牙小程序比赛,留下的(不知道现在虎牙小程序凉凉了没)。 那时候遇到了各种部署上去的问题,通宵了两晚修改pixi和pixi-spine的源码,遗憾的是错过了比赛提交的时间节点。所以这就是, 那个stone(人物踩在上方的,落脚物)为什么是HuyaLogo的原因。
所以把这个项目拉出来,修改成web页面,http升级成websocket,做个基本游戏的示范教程吧。
项目示例,欢迎提issues。
预览图
Demo Getting Started
# npm i
# npm run serve
git clone 服务器url
# npm i
# tsnd --respawn ./src/serve-1.0.1.ts
完成,哪里报错改哪里(比如服务器url,需要直接修改下)。
工具
mvc或者mvvm框架,自己喜欢就行,用自己熟悉的。
PixiJS,PixiJS是啥? PixiJS是一个超快的2D渲染引擎。它自动侦测使用 WebGL 或者 Canvas。开发者无需专门学习 WebGL 就能感受到强大的硬件加速的力量。 emm,反正就是一个很厉害的东西(某厂哒哒最喜欢PixiJS了,我一开始研究他们的H5,他们就是用PixiJS实现各种好玩的交互的)。
pixi-spine,骨架。使制作好的动画可以加载于Pixi,可以调用方法来进行动画播放。
TypeScript,静态类型检查工具,游戏状态类型多,一定一定要用,不然修改对象类型根本无从下手。
git,版本管理工具,顺便要说的是,要遵循常用Gitflow工作流程,大型的游戏一个人根本开发不来(虽然这不是大型游戏,但是建议哦,从小做起)。
docker/cdn,部署项目用的,这个项目是基于cdn的,喜欢折腾自己的可以像这个游戏的服务器一样使用docker+travis。
night-watch,e2e测试,本游戏需要4个玩家,不想心累的可以写e2e测试。
微信分享,微信获取名称,自己手写吧。
教程
游戏需求
游戏需要四位玩家,每位玩家只能控制三个位置,所移动到的位置如果有且仅有一位玩家到达,那么获得该位置得得分,否制大家都获得不了分数。 游戏房主在创建房间的时候,如果退出房间,该房间解散,玩家们需要重新选择房间或创建房间。
状态考虑的东西就有点多了。
工具配置
Sprite
Sprite是啥?可以当作一个图片的对象(texture纹理)。
生成一个sprite
const SPRITE = new PIXI.Sprite.from('xx.png')
// or
PIXI.Loader.shared.add("assets/spritesheet.json").load(setup)
function setup() {
let sheet = PIXI.Loader.shared.resources["assets/spritesheet.json"].spritesheet;
let sprite = new PIXI.Sprite(sheet.textures["image.png"]);
}
AnimatedSprite
动画序列帧Sprite,比如我们碰撞的时候需要眩晕效果,跳跃的时候需要尘埃效果,这个时候就可以使用播放序列帧的方法,达到动画的效果。
public parseTexture(textures: PIXI.Texture, x: number, y: number) {
const animationSprite = new PIXI.AnimatedSprite(textures)
animationSprite.animationSpeed = 0.2
animationSprite.width = 50
animationSprite.height = 50
animationSprite.x = x
animationSprite.y = y
animationSprite.gotoAndPlay(Math.random() * 2)
}
PIXI-SPINE
人物sprite
创建人物Sprite,人物?人物起码会动吧?面部表情?身体动作?那我们是不是要建造一个容器,容器里面包括无数sprite或者无数子容器,比如人物的手、脸部、头部等。 emmm,这也太难了吧?光是把sprite组合起来就已经麻烦了,而且还要按照规律来移动手臂,身体,脸部表情。 怎么办?pixi-spine走起。
stone sprite
跳跃AnimatedSprite
灰尘AnimatedSprite
气泡AnimatedSprite
Action
移动路线
移动方向判断
碰撞
stone与人物保持x距离
人物碰撞(性能优化,条件性判断碰撞)
碰撞相关特效展示
游戏进入流程图
游戏规则
服务器逻辑状态处理
pixi 小游戏_pixi2d小游戏跳一跳源码/pixi教程,基于pixi-spine的2d游戏相关推荐
- mfc使用cef源代码实现_如何获得微信小游戏跳一跳源码以及源代码组合包括哪些...
很多小游戏都是由源代码编写而成的,那大家知道源代码组合包括哪些吗?手机游戏源代码怎么使用的呢?还有,如何获得微信小游戏跳一跳源码?下面就由奇瑰网小编带大家来了解一下相关的内容吧. 源代码组合包括哪些 ...
- 如何拷贝工程_如何获得微信小游戏跳一跳源码以及源代码组合包括哪些
很多小游戏都是由源代码编写而成的,那大家知道源代码组合包括哪些吗?手机游戏源代码怎么使用的呢?还有,如何获得微信小游戏跳一跳源码?下面就由奇瑰网小编带大家来了解一下相关的内容吧. 源代码组合包括哪些 ...
- c语言小游戏跳一跳代码及注释,如何获得微信小游戏跳一跳源码以及源代码组合包括哪些...
原标题:如何获得微信小游戏跳一跳源码以及源代码组合包括哪些 很多小游戏都是由源代码编写而成的,那大家知道源代码组合包括哪些吗?手机游戏源代码怎么使用的呢?还有,如何获得微信小游戏跳一跳源码?下面就由奇 ...
- 微信小程序 wxapkg 反编译 获得微信小游戏跳一跳源码
前言 昨天 V2EX 上的一篇通过抓包来获取微信跳一跳源码的文章走红,文章连接点击这里 我也在通过文章中的方式进行了抓包,但是并未探测到小游戏的下载连接,可能微信对此已经进行了修复.而且上文中提供的下 ...
- 跳一跳python源码下载_教程 跳一跳源码
这个压缩包为跳一跳工具源码 (安卓版) 仅供代码爱好者交流研究, 且不可用作其他用途,否则后果自负!!! 本来想分享一点数据分析领域-回归预测模型解读与实际工作中发挥用处 后来看到朋友圈被跳一跳霸屏, ...
- [内附完整源码和文档] 基于Java实现的数独游戏
一.本游戏背景介绍 相传数独源起于拉丁方阵(Latin Square),1970年代在美国发展,改名为数字拼图(Number Place),之后流传至日本并发扬光大,以数字智力游戏智力拼图游戏发表.在 ...
- 全套源码丨超实用的双人联机对战游戏开发分享,拒绝踩坑!
在手游市场高度同质化的趋势下,随着各家手机厂商纷纷布局智慧大屏.平板.PC 等不同形态的设备,强调系统与生态侧的场景协同就成为了发展刚需,多终端协同游戏针对游戏体验本身,带来玩法上的更多可能性. Co ...
- 微信小游戏《飞机打方块》源码分享
微信小游戏<飞机打方块>源码分享 游戏使用CocosCreator v2.4.2开发 源码:https://gitee.com/propertygame/cocos-creator3.x- ...
- C++小游戏笔记——射击小行星(附源码)
C++小游戏笔记--射击小行星(附源码) 游戏展示图 一.飞船 1.飞船的绘制 2.飞船的角度 二.小行星 1.小行星的绘制 2."凹凸不平"效果的形成 3.小行星的分裂 三.子弹 ...
- FC小游戏合集网页版HTML源码
FC小游戏合集网页版HTML源码,上传到服务器即可访问,包含游戏文件在里面,操作键网页上有列出. 源码下载:FC小游戏合集网页版HTML源码-小程序文档类资源-CSDN下载
最新文章
- c语言链表找姓,急啊!!!求救了 C语言编一个链表,输出姓名和学号就好
- Git使用教程之本地仓库的基本操作
- 不间断电源ups标准_什么是ups不间断电源,ups电源的重要性。
- Luogu P5652 基础博弈练习题 (博弈论、图论)
- pythonencode_python的encode和decode误读总结
- IntelliJ IDEA添加jar包
- 论文阅读:FaceBoxes: ACPUReal-timeFaceDetectorwithHighAccuracy
- VB更改任何标题程序源代码
- CSS 实现半透明边框效果实战
- Blender程序化建模教程【Python】
- 微信支付服务商分账-请求单次分账
- 鼠标的光标变成了下划线
- python人脸识别解锁电脑_Python 实现在 App 端的人脸识别!手机解锁人脸识别!
- 华能集团牵手阿里云 打造“互联物+”阳光采购样板工程
- 400G如何引领下一代数据中心网络?
- python扫雷总结与体会_心得体会 扫雷拓展心得
- java学习之JDO
- 大学生静态HTML网页设计--公司官网首页
- 电容在电路中各种作用的基本常识
- 第一次 之 挑灯夜战
热门文章
- Java加密套件强度限制引起的SSL handshake_failure
- NLP关键词提取方法总结及实现
- 【MySQL】MySQL安装图解
- jenkins 命令执行 (CVE-2018-1000861)复现
- (statistic)你所不知道的P值--对统计学的批判
- 怎么用计算机算e的次方,如何在计算器上计算e的x次方?
- 电脑连不上网络,报红叉,网络适配器报黄色警告,错误代码56,解决办法
- 江苏高考时间2021成绩查询,小高考时间2021具体时间江苏-江苏小高考成绩查询公布时间及网站...
- CPP使用命令行解压7z文件
- hdu-5745 La Vie en rose bitset