摘要: 问题概述 不用问了,问个毛,没声音,解决加声音。 方案: 核心思想: 构建引擎层音频模块(AudioPlayer) 创建音频组件(AudioComponent) 实现数据驱动的音效配置 为游戏各处添加音效和音乐 音频系统架构: ┌──────────────────┐ │ SDL_mixer │ ← 阅读全文
posted @ 2026-03-05 21:36 wenyiGamecpp 阅读(45) 评论(0) 推荐(0)
摘要: 哈希表 有效字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的 字母异位词,就是两个字符串的字符数量要一样而且字母出现的次数也要一样 这题就可以使用哈希表思想来实现了,原理并不复杂,首先,a~z 一共26个字母,我们恰好可以使用数组来实现,hash[26],用这个数组来 阅读全文
posted @ 2026-03-05 13:50 wenyiGamecpp 阅读(13) 评论(0) 推荐(0)
摘要: 尝试用AI写,发现这玩意确实有点厉害 阅读全文
posted @ 2026-03-05 11:34 wenyiGamecpp 阅读(90) 评论(0) 推荐(0)
摘要: 问题概述 现在我们已经实现了完整的移动系统,但是游戏手感上还是有缺陷的,玩家操作的时候会遇到某些问题。 最直接的就是,在进行平台跳跃的时候,我们跳跃判定是很严格的,比如只有在Idle、walk状态下进行,还有就是在平台边缘极限跳跃的时候,感觉明明按下跳跃了,但是依然失败了。 其次,玩家在下斜坡的时候 阅读全文
posted @ 2026-03-04 20:48 wenyiGamecpp 阅读(36) 评论(0) 推荐(0)
摘要: 链表 链表翻转 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 关键思路: 反转一个链表,只需要改变指向就行了 1.首先定义一个当前节点cur,指向头节点head,再定义一个pre指针,指向nullptr, 阅读全文
posted @ 2026-03-04 15:25 wenyiGamecpp 阅读(26) 评论(0) 推荐(0)
摘要: 问题概述 现在我们实现了敌人的AI系统,接下来我们将完成玩家垂直移动机制—攀爬系统 现在的问题: 玩家无法使用梯子 玩家缺少攀爬状态 边缘梯子顶部处理困难 状态切换复杂 解决方案 1.拓展瓦片系统支持梯子类型 2.物理引擎检测梯子碰撞 3.新增ClimbState攀爬状态 4.实现无缝的状态切换 5 阅读全文
posted @ 2026-03-03 21:11 wenyiGamecpp 阅读(46) 评论(0) 推荐(0)
摘要: 课程来自代码随想录,仅学习交流,这就是梦开始的地方吗*^…^* 阅读全文
posted @ 2026-03-03 16:16 wenyiGamecpp 阅读(18) 评论(0) 推荐(0)
摘要: List 链表 我们知道,数组存储在计算机中占据的是一段连续的内存,所以之前我们在删除某个元素的时候,会对后面所有元素进行前移,以达到一种类似覆盖的模式。 因为内存资源是很宝贵的东西,计算机中有个内存管理器在为我们分配内存,如果我们要存储数据,我们或许会使用数组进行存储,但是数组是连续的,所以如果存 阅读全文
posted @ 2026-03-03 16:14 wenyiGamecpp 阅读(13) 评论(0) 推荐(0)
摘要: 问题概述 现在我们实现了玩家和敌人之间的交互,玩家可以踩踏敌人,但是目前,敌人是静止不动的,这不好,我们希望敌人可以移动、巡逻、甚至追击玩家。 解决方案 策略模式的AI系统,游戏中敌人行为有很多种,有的在地面巡逻,有的在空中,有的会跳跃。如果采用通过EnemyComponent加上复杂的if-els 阅读全文
posted @ 2026-03-02 20:39 wenyiGamecpp 阅读(62) 评论(0) 推荐(0)
摘要: 螺旋矩阵II 给定一个正整数 n,生成一个包含 1 到 n^2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 1 2 3 8 9 4 7 6 5 这题并没有涉及什么算法,就是模拟过程 阅读全文
posted @ 2026-03-02 13:22 wenyiGamecpp 阅读(21) 评论(0) 推荐(0)