这几天没更新CSDN,跑去玩Cocos了。自从知道我的粉丝百分之十之八九都是假人,更新确实没什么动力了。主要还是把这边当成一个日记本吧。
选择cocos的原因也很简单。会点js,技术栈比较接近,上手估计也快。简单记录下这几天的内容
主要完成了三个小游戏,按照Bilibili的siki老师的教程来的。讲的确实不错,不过感觉siki老师部分可能也不太熟练,vscode很多快捷键也不清楚,不过指导我cocos已经是绰绰有余了。
下载什么就不说了
1.打砖块
这是第一天的一个3d项目。内容还是比较简单的,用于上手
1.操作
操作上可以对画布右键操作,或者按住alt操作,复制元素可以使用ctrl+D,选择元素移动可以按住ctrl
2.文件
主要的文件为Scences、Materials、Prefabs、Script
分别为场景、皮肤、预制体、脚本。
3.描述
一个普通的打砖块游戏
主要是将球体和方块赋予collider和rigidbody,让其具备碰撞和重力。实现模拟打砖块
这里用的主要是触摸事件和camera跟随。点击屏幕触发方法发射小球和移动屏幕视角跟随
视角跟随:按住屏幕move时,获取你的XY的变化动态变更nodeposition实现视角跟随
prefabs销毁:防止元素过多。当检测到prefab的y掉落平台一定高度,使用node.destroy()销毁
发射小球:touchstart触发发射,touchend触发结束,其中有个node-bulletparent用于堆放小球,小球生成后堆放在这个node防止跟随camera
const bullet=instantiate(this.bulletPrefab)
bullet.setParent(this.bulletParent)
并用给一定的z轴速度
const rgd=bullet.getComponent(RigidBody)
console.log(rgd)
rgd.setLinearVelocity(new Vec3(0,0,-this.bulletSpeed))
2.rollBall
一个小球吃东西的游戏。主要在一个平台上一个小球吃东西。
Prefabs和materials上没有过多新东西。主要还是collider和rigidbody的运用
food这边添加了个自旋转,让他嘎嘎转,运用了node,eulerAngles
移动视角跟随:简单来说就是我玩家怎么动。camera就则呢么动
还设置了lateUpdate,会在update完成之后执行
按键命令注册、销毁在onload ondestory
吃东西-触碰销毁。因为collider和rigidbody会造成碰撞,为了实现触摸就吃,要把istrigger勾上
3.跳动的方块
这个项目大家估计都不陌生。就是跳格子
这一套算是比较完整的项目了,有游戏开始-游戏中-游戏失败的整个过程。
脚本上主要为一个player和map生成,当检测到脚下没有白砖块的时候就是失败了,进行初始化
整体来说cocos还是比较有意思的。但是逻辑性要求感觉有点高,调用的都是内部的api,需要一点时间熟悉~