SAIMA/Assets//脚本/GameController.cs

85 lines
2.9 KiB
C#
Raw Permalink Normal View History

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
using UnityEngine.UI;
using DG.Tweening;
using TMPro;
public class GameController : UnitySingleton<GameController>
{
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
private float cameraTransDistance = 0;
private float cameraStartX;
public struct Death{
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
public enum DeadReason { Camera , PersonFall }
public DeadReason deadReason;
}
private Horse horse;
private CameraManager cameraManager;
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
private Person person;
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
public bool hasGameOver = false;
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
void Start(){
FindSth();
}
void Update(){
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
// //当同时按下左右扳机,触发重开,仅调试用
// if(Gamepad.current != null && Gamepad.current.leftTrigger.isPressed && Gamepad.current.rightTrigger.isPressed){
// UnityEngine.SceneManagement.SceneManager.LoadScene(UnityEngine.SceneManagement.SceneManager.GetActiveScene().name);
// }
//如果已经游戏结束并且按下手柄Y键则重新开始游戏
if(hasGameOver && Gamepad.current != null && Gamepad.current.buttonNorth.isPressed){
StartCoroutine(RestartCoroutine());
//UnityEngine.SceneManagement.SceneManager.LoadScene(UnityEngine.SceneManagement.SceneManager.GetActiveScene().name);
}
}
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
private IEnumerator RestartCoroutine(){
//仅防止多次触发
hasGameOver = false;
//首先呼出黑幕
BlackController.Instance.Trans();
//等到屏幕全黑
yield return new WaitUntil(() => {return BlackController.Instance.AllBlack;});
//切换场景
UnityEngine.SceneManagement.SceneManager.LoadScene(UnityEngine.SceneManagement.SceneManager.GetActiveScene().name);
}
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
void FindSth(){
horse = FindObjectOfType<Horse>();
cameraManager = FindObjectOfType<CameraManager>();
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
person = FindObjectOfType<Person>();
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
cameraStartX = Camera.main.transform.position.x;
}
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
public void GameOver(Death deathInfo){
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
hasGameOver = true;
//触发马的死亡功能
horse.Death(deathInfo);
任务:开发人马分离系统 分析: 1.其是与马并列的存在 2.具有状态:Normal:骑在马背,Shoot:从发射到着地到平台,Walk:在平台行走,landing:降落,Recover:若成功降落至马背,从刚判定成功到恢复到Normal态的中间态,为Recover态,Dead:判定为失败的瞬间以后都为Dead态。 3.效果要求:到达障碍物前某一位置后,人自动弹射,降落至平台,然后开始匀速移动,脱离平台后降落,之后持续判定是进入Recover还是Dead态。进入Recover态后,修正其偏移,使其回到默认的位置,Dead后,触发GameOver事件。 子任务:使人紧紧跟随马 1.当人处于Normal态,每帧同步人的位置和旋转到马背某处。 效果正常。 DONE 子任务:设计障碍物 1.仅跑道有碰撞体。 2.在障碍物主体之前有触发器,保证用户通过时能检测到,当检测到人进入触发器时,触发人的函数,Shoot()。这个触发仅有一次。 3.当检测到人着陆到平台上,触发人的函数Land()。 4.当检测到人离开平台,触发人的函数FallOff() DONE 子任务:完成人的Shoot、Land、Falloff函数 Shoot: 1.给予刚体一个固定的朝向右上角的速度,使其刚好能抛到平台上。 2.从Shoot到Walk,大约有1~2秒时间,不能让人脸着地前进吧。所以,需要在1秒内修正人的旋转,修正完后锁定刚体Z旋转。 Good Job!效果不错 DONE Land: 1.此时人脚着地处于平台上,让人按照固定的速度一直朝着右边前进即可 比较简单 DONE FallOff: 由于胶囊碰撞体的特殊性,下落时会触发多次FallOff,这是不行的。同时,人在边缘直接坠落非常难看,所以这里加上一段小跳跃。 1.当触发FallOff,给刚体一个右上的速度,模拟跳跃 Good Job,效果很不错 DONE 子任务:完成马接住人的判定和控制系统 1.在马背安置触发器,当检测到玩家进入,触发人的Recover函数 2.完成人的Recover函数,使人在短时间内回到指定的位置和旋转,恢复的最后把人的状态恢复到Normal DONE 子任务:开发,人直接掉落到地面的死亡逻辑 1.直接掉落到地面后,触发GameOver 子任务:测试 1.发现人Recover功能的问题,Recover时的目标点是固定的,但是恢复的过程中马会动,所以这种办法从根本上就有问题。再多写一个动态的追踪比较麻烦,姑且让人恢复得快一点,这样就看不出来什么破绽。 已解决 2.人有时发射不到人马分离的平台上,应该是发射速度太小导致的,已调大。 3.我认为现在创烂障碍物的速度门槛太低了,已适当加快 4.人马分离障碍会突然出现而不是从屏幕右侧进入出现,这是人马分离障碍体积过大导致的。目前只能适当右移障碍物生成点解决。 5.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。 已修复。 暂未发现更多问题。 至此,人马分离障碍物的逻辑基本完成 *修复Bug 1.原先马在触发器也会被阻挡,这是因为马脚供力的算法的错误导致的,要从根本解决需要修改复杂的算法,所以这里使用Trick,将触发器的物理层转移到忽略射线检测层,解决了这个问题。 DONE 2.发现Bug,本来可创烂障碍物的爆破力度会随着马的速度而改变,但现在经常响应不到。原来监听的是马的速度,由于整个数学模型的特殊性,马本体的速度变化极其诡异,所以易导致监听错误。应采用新的监听方式,不再监听马本体速度,而是监听用户过去若干时间内的输入变化,由此来决定爆破力度。 不是!我的代码没问题,是这个插件的作者的代码的问题,非常啥卵。已通过修改插件作者源码解决问题。 DONE
2022-08-19 14:23:35 +08:00
//触发人的死亡功能
person.Death(deathInfo);
//告诉相机马死了
cameraManager.Death(deathInfo);
Squashed commit of the following: commit 9559cc8882161192a43be22670a8ff69db1ea13a Author: Roman <1325980292@qq.com> Date: Sat Aug 27 19:22:38 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 效果不好 DONE 4.实装人马分离音效 DONE *.补充实装人降落到马上的音效 DONE 5.实装创烂障碍物音效 DONE 6.实装圣火点燃音效 DONE 7.实装马磕磕碰碰音效 DONE 8.实装马似音效 DONE 9.实装马着地音效 DONE 10.实装马起跳音效 DONE 11.实装马蹄点地音效 效果不好 DONE 任务:实装特效 1.实装后处理 DONE 2.实装日夜更替 DONE 3.实装树叶飘落 DONE 4.实装圣火粒子 效果不好 DONE 5.实装破碎灰尘 效果不好 DONE 6.实装马蹄灰尘 DONE 7.实装红黑闪特效 DONE 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 已修复 DONE 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 DONE 4.策划要在点燃圣火时镜头放大,体现标题感 URP相机不太好做 ABANDON 5.人的死亡动画逻辑之前没做 DONE 任务:测试并修复Bug DONE 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 已修复 DONE 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 DONE 3.跑步动画和跑步音效完全对不上 加快跑步动画 DONE 4.原爆破给力范围太大,会导致旧的碎片也被波及 已修复 DONE commit cab00851df5e4da70b981c564888c53d86de1f95 Author: Roman <1325980292@qq.com> Date: Sat Aug 27 02:51:21 2022 +0800 短学期Log 任务:替换和实装美术素材 1.在教程场景布置图标和文字提示内容 DONE 2.制作GamePlay中背景元素的动画并实装 DONE 3.替换拆迁障碍物美术素材 DONE 任务:实装音乐和音效 1.为两个场景添加音乐,并且在GamePlay场景不重开音乐。 DONE 2.实装人摔地音效 DONE 3.实装人跑动音效 DONE 4.实装人马分离音效 DONE 5.实装创烂障碍物音效 DOING 6.实装圣火点燃音效 7.实装马磕磕碰碰音效 8.实装马似音效 9.实装马着地音效 10.实装马起跳音效 任务:实装特效 …… 任务:完善没写的零散逻辑 1.在教程场景,若人马分离障碍处没接到人,过一个转场然后复位人和马 **:仍然存在问题,当如此,人的动画失效。这个问题现在不好修,等待人的死亡动画实装后再修 WAIT 2.在教程场景,点燃圣火仅有进入触发器后加载转场然后转移场景的功能,没有点燃圣火的过程,现补充其逻辑 DONE 3.开发GamePlay距离记录和重开系统 …… 修复Bug 1.在教程场景,可破坏障碍物的碎片的层级不对,创烂瞬间会有层级突变的问题。在GamePlay层级,也出现了这个问题。 2.现在的高障碍实在太高了,基本有80%以上的概率导致马翻,应该调低障碍物、或者调大马的跳跃力度。 commit 3f0c9dd791c66e7222d6dbb72d8b762b73f06aed Merge: e6888a7 bc74426 Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:13:00 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/EditorUserSettings.asset # UserSettings/Layouts/CurrentMaximizeLayout.dwlt # UserSettings/Layouts/default-2021.dwlt commit e6888a748dc7188bd3c2f7ce4bceade7402f8cec Author: Roman <1325980292@qq.com> Date: Fri Aug 26 18:11:05 2022 +0800 任务:编写教程和开始场景 分析:分为五个阶段,每个阶段一屏宽。前四个阶段是教程阶段,分别仅放一种障碍(第一个无障碍)和提示,提示参照茶杯头教程关。 每个阶段间有明显间断、镜头固定,但当马通过该阶段的障碍后,镜头右移一个阶段。马不能倒退,相机左侧有空气墙。 到达最终阶段后,按流程点燃圣火进入游戏 设计: 1.搭建核心场景,放置障碍物。 DONE 2.设计教程及开始场景管理器 (1.控制相机,使马每通过一个阶段,相机运动到记录的位置 DONE (2.给相机左侧添加空气墙 DONE (3.管理器要明确记录此时玩家处于哪个阶段 DONE (4.当玩家进入点燃圣火触发器,切断操控,等待动画结束或者一些信号,触发从右向左的渐变黑幕遮挡全屏,随后转场到新场景。 DONE 至此,基本逻辑完成,需要补充大量细节、替换大量美术素材。 修复问题: 1.人马分离障碍连续出现可能导致致命问题,修复使其不能连续出现 DONE 2.GamePlay中,远处的山需要补充运动逻辑 DONE commit 5d922db6142634cdd20aa7801c0b3c1c4994360c Author: Roman <1325980292@qq.com> Date: Wed Aug 24 17:59:05 2022 +0800 任务:制作人物动画逻辑 1.当人物处于Normal时,重复播放骑在马上的动画 2.当人物被射出,播放一次跳上动画,之后停在最后一帧,等待落到平台上。 3.当人物进入Walk态,开始重复播放跑步动画。 4.当人物开始降落,触发一次跳下动画,停在最后一帧 5.当Recover结束,状态恢复为Normal,重回到骑在马上动画 DONE commit d1fe07492af5ce6ea736ef738eb3e38170a08066 Merge: 436eaf0 5e10767 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:42:58 2022 +0800 Merge branch 'Saipo' of https://e.coding.net/gensokyogroup/saima/SAIMA into Roman # Conflicts: # UserSettings/Layouts/default-2021.dwlt commit 436eaf01046248372e887eb8276f38e021915790 Author: Roman <1325980292@qq.com> Date: Wed Aug 24 10:40:51 2022 +0800 为了拉取的提交,少量修改
2022-08-27 21:30:16 +08:00
StartCoroutine(UICoroutine());
}
public RectTransform restartUI;
public TextMeshProUGUI meter;
private IEnumerator UICoroutine(){
//计算相机移动距离
cameraTransDistance = Camera.main.transform.position.x - cameraStartX;
cameraTransDistance /= 5;
//设定UI分数显示为cameraTransDistance
//restartUI = GameObject.Find("重开").GetComponent<RectTransform>();
meter.text = ((int)cameraTransDistance).ToString();
//等待2秒钟
yield return new WaitForSeconds(2);
//UI进入页面
restartUI.DOLocalMoveX(0,1f);
}
}