- 博客(60)
- 收藏
- 关注
原创 跑酷游戏开发笔记1 && 背景,敌人预制体,碰撞 cocos3.8.7
本文详细介绍了2D横版游戏中实现地面滚动和障碍物生成的完整技术方案。地面滚动采用双节点无缝拼接技术,通过计算节点位置和速度实现循环移动。碰撞检测系统利用刚体和碰撞体组件,实现角色跳跃与地面接触判断。障碍物生成系统采用配置化管理,支持多种预制体随机生成,并处理坐标转换确保位置准确。文中深入剖析了关键代码逻辑,包括节点实例化、父子节点坐标转换、随机生成算法等核心机制,并提供了性能优化方案和错误处理方法。该方案已成功应用于蜗牛跑酷游戏开发中,实现了平滑的地面滚动和多样化的障碍物生成效果。
2025-11-07 17:29:26
394
原创 2048游戏开发笔记4 & 音效,动画,问题解决 cocos3.8.7
该代码实现了一个滑动音效播放功能,核心是通过AudioMgr单例类管理音频播放。主要特点: 使用playOneShot方法播放短音效,不会打断其他音频 只在有效滑动方向时触发音效(direction !== None) 通过@property声明音频资源,在编辑器拖拽配置 单例模式确保全局音频管理,不依赖场景节点 实现简单可靠:检查方向有效性+单次播放,避免重复/卡顿问题 (字数:148)
2025-10-31 10:56:45
281
原创 2048游戏笔记3 & 游戏开始与结束 cocos3.8.7
文章摘要:本文详细解析了游戏界面交互与状态管理的实现逻辑。通过按钮事件监听实现游戏开始/重玩功能(startButton.node.on()),利用node.active控制界面显隐。游戏状态由GameManager统一管理,通过GameState枚举实现准备、游戏、结束三种状态的切换,并同步控制棋盘滑动功能(isSwipeEnabled)和UI界面。分数系统采用事件驱动设计(emit('score')),配合localStorage持久化存储最高分。各模块遵循单一职责原则,通过GameManager中介者
2025-10-30 17:04:32
647
原创 2048游戏开发笔记2 & 格子滑动 cocos 3.8.7
/ 滑动方向枚举:统一管理方向类型,避免魔法值Up, // 上滑(枚举值0)Down, // 下滑(枚举值1)Left, // 左滑(枚举值2)Right, // 右滑(枚举值3)None // 无有效滑动(枚举值4)EventTouch处理触摸事件,Vec2存储坐标,Node操作节点。定义枚举:将滑动方向标准化,使代码可读性、维护性提升(避免直接用 0/1/2/3 表示方向)。:标记为 Cocos 可识别组件,允许挂载到节点上。
2025-10-29 14:37:23
649
原创 2048游戏开发笔记1 & cocos3.8.7
本文介绍了使用Cocos3.8.7开发2048游戏的背景制作和格子设置方法。背景制作包括创建整体背景节点、添加标题文本、设置棋盘网格布局和格子节点。格子设置部分提供了TypeScript代码实现,主要功能包括:设置格子尺寸、显示数字、根据数值自动更新背景颜色和文字颜色(数值≥8显示白色,否则显示黑色),并定义了0-2048各数值对应的颜色映射表。代码还实现了获取当前格子数值的方法。整个实现注重了游戏界面的视觉呈现效果。
2025-10-29 13:56:05
219
原创 FlappyBird 笔记3 &游戏结束 cocos3.8.2
本文摘要了游戏开发中的几个关键功能实现: 游戏暂停功能:通过设置_isSpawning标志和禁用Pipe组件来停止管道生成和运动,保留当前状态以便恢复。 奖牌显示系统: 使用@property([Node])声明奖牌节点数组 根据分数区间(每10分一档)显示对应奖牌 最高分限制为30分以上显示最高级奖牌 音频管理系统: 实现单例模式AudioMgr 支持短音效(playOneShot)和循环背景音乐(play) 提供stop/pause/resume控制方法 组件设计原则: 节点(Node)作为基础容器 组
2025-10-27 11:13:57
889
原创 FlappyBird 笔记2 & 小鸟 cocos3.8.2
这篇文章详细介绍了如何实现一个类似《Flappy Bird》的2D游戏核心功能,主要包括以下内容: 小鸟物理运动控制: 通过RigidBody2D组件实现重力效果和点击上升 使用linearVelocity控制小鸟飞行速度 点击时给小鸟向上的速度(10像素/秒) 小鸟动态姿态: 点击时设置30度抬头角度 下落时逐渐低头(-60度限制) 通过rotateSpeed控制旋转速度 碰撞检测系统: 使用Collider2D和RigidBody2D组件 注册BEGIN_CONTACT和END_CONTACT事件 通过
2025-10-23 15:18:56
1040
原创 FlappyBird笔记1 & 背景移动(cocos3.8.2)
本文介绍了CocosCreator中@property装饰器的使用、背景移动和无限循环的实现、单例模式的应用以及管道(竹子)的生成与随机高度设置。@property装饰器用于将变量序列化到编辑器面板,方便可视化调整参数;背景移动通过计算帧间隔时间与速度的乘积实现平滑移动,并利用屏幕边界检测实现无限循环;单例模式确保全局唯一实例,便于统一管理游戏状态;管道生成通过定时器和预制体实例化实现,并通过随机数设置Y轴高度增加游戏变化性。这些技术在游戏开发中具有普遍应用价值,能够提升开发效率和游戏体验。
2025-10-21 14:46:34
1027
1
原创 typescript 基础知识3
本文摘要:文章介绍了编程中的几种常见设计模式和应用技巧,包括:1.正则表达式匹配电话号码格式;2.访问修饰符(public/protected/private)的使用;3.单例模式的两种实现方式;4.代理模式通过委托实现不同计算;5.观察者模式实现对象状态变化监听;6.工厂模式创建不同类型对象;7.链表结构的增删操作。每种模式都配有TypeScript代码示例,展示了面向对象编程中的核心概念和实践应用。
2025-10-20 10:04:42
193
原创 typescritpt 基础知识2
本文介绍了面向对象编程的核心概念,包括类与对象、继承、抽象类、接口、属性寄存器等。重点讲解了类的定义方式(成员属性/方法、静态属性/方法)、继承实现(extends/super)、抽象类与接口的区别(abstract class/interface)以及属性寄存器的使用(get/set)。此外还涉及命名空间、泛型编程和集合操作(元组、数组、字典)等实用技巧,展示了如何通过面向对象方式组织代码结构,提高程序的可扩展性和复用性。
2025-10-16 17:45:26
134
原创 typescript 基础知识1
本文摘要了一段TypeScript代码示例,主要展示了变量声明、数据类型、运算符、流程控制和函数等基础语法。内容包括:1)使用let/const声明变量和常量;2)基本数据类型如string、number、boolean、any;3)数组和枚举类型;4)类型验证和类型别名;5)算术、比较和逻辑运算符;6)条件判断和循环语句;7)函数定义和箭头函数。代码演示了如何进行类型转换、字符串拼接、自增运算以及数组遍历等常见操作,适合TypeScript初学者参考学习基本语法。
2025-10-16 15:59:43
100
原创 BFS(青蛙跳杯子)
是C++标准库中的关联容器,它以键值对(key-value)的形式存储元素,其中每个键都是唯一的。它通常被实现为一棵自平衡的二叉搜索树(红黑树)。这个例子展示了程序如何通过系统性的状态探索,在步数2时找到从。(其他方向要么越界,要么交换后状态相同)程序结束,输出结果:2。
2025-04-13 11:25:16
748
原创 esp826601s固件烧录方法(ch340+面包板)
stm32f10c8t6,esp826601s,面包板,ch340(usb转ttl),st_link(供电)
2025-04-02 16:59:59
814
原创 操作系统期末复习笔记&&进程管理
1.对处理机进行分配,从就绪队列->按照一定的算法选择一个进程并将处理机分配给它运行,实现进程的并发执行。异步性:由于进程间的相互制约,使得进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进。就绪态:进程已经处于准备状态,进程获得了除处理机外的一切所需资源,一旦得到处理机即可运行。动态性:进程的是指是程序在多道程序中的一次执行过程,进程是动态产生,动态消亡的。结构特性:PCB(进程控制):保存进程运行期间相关的数据,是进程存在的唯一标志。短作业优先,当运行时间相同时,谁先到,谁先运行。
2024-12-11 16:37:22
1100
原创 生产者消费者(有限缓冲)问题
/缓冲池有n个缓冲区,每个缓冲区可存放一个数据项。//消耗一个空闲的缓冲区,P就是减去1,也就是空的减1。//信号量mutex 提供缓冲池访问的互斥要求,并初始化为1。//添加一个产品,有几个P就要有几个V,V是加1。//满的缓冲区的数量。//空的缓冲区的数量。7. 在一个线程进行生产或消费时,其余线程不能再进行生产或消费等操作,即保证线程间的同步。//增加一个空闲缓冲区。5. 缓冲区空,消费者不能进行消费。6. 缓冲区满,生产者不能进行生产。从缓冲区取出一个产品;
2024-12-08 12:01:10
267
原创 C++ && STL
1.在C++中,queue 是一种先进先出(FIFO)的数据结构,它通常用于存储需要在某个顺序下被处理的元素。在您提供的代码片段中,V 是一个存储字符串的 queue,代表VIP队列。当您想要输出VIP队列中的所有元素时,您需要遍历这个队列。由于 queue 没有提供直接访问除队头和队尾之外元素的方法,因此您需要使用一个循环来逐个处理队列中的元素,直到队列为空。2.
2024-11-09 11:30:38
25
原创 IndexError: list index out of range报错解决方案
IndexError: list index out of range报错解决方案
2024-03-22 15:03:33
374
原创 HTML5
hr color="red" width="500px" size="10px" align="left">水平线。到一到六级标题。+有序列表。+无序列表。
2024-03-03 16:56:18
427
基于面向对象的车辆租赁管理系统
2025-11-06
gradle-5.4.1的压缩包
2024-09-25
luban在cocos中如何使用
2025-11-21
算法复用到vue前端
2025-11-06
支持rtsp协议的摄像头都有什么型号
2025-10-23
疲劳驾驶监测开发板选型
2025-10-22
疲劳驾驶监测系统摄像头方案选择
2025-10-22
海康摄像头二次开发调用sdk教程
2025-10-19
window11删除文件需要管理员权限设置时无法枚举容器中的对象,访问被拒绝
2025-10-18
JAVA中的spring的IOC和iop区别
2025-09-28
硬件选择,摄像头采集传输
2025-09-28
疲劳驾驶系统如何在微信小程序部署
2025-09-19
代码烧录成功,但是运行结果还是之前的
2025-05-10
esp8266接线问题
2025-05-09
spacedesk平板端无法连接到电脑
2025-05-06
训练gpt-SoTIVS生成的音频没有声音如何解决
2024-12-31
andriod studio 新建的项目运行按键是灰色,无法运行怎么办
2024-09-08
安装andriod studio 时,haxm安装不成功。
2024-09-04
关于#硬件工程#的问题:在安装IRE的时候,但是无法生成解析文件
2024-02-28
linux上VM VirtualBox怎么导出文件到自己的电脑上
2023-10-16
判断int n的第七位(从右往左,从0开始数)是否为1?各位帮个忙呗
2022-12-30
这个题还有更简单的C语言解法吗?各位帮个忙呗。
2022-12-08
该段程序是怎么运行的,哪位帮个忙呗
2022-12-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅