-
Notifications
You must be signed in to change notification settings - Fork 0
texwood0935/memo-
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
一个不正经的日志 10.1 今天尝试先将基本的菜单做好 完成了几个场景之间的切换,以及BGM的调节 个人感觉今天最难的部分就是BGM的调节。 用拉条来调节BGM大小还算是件容易的事,但是让BGM在场景之间连续播放并且保持音量不变,就没有那么简单了 虽然上网搜索了,但是网上不同的答案太多了,大多都不理想。虽然都说要用DontDestroyOnLoad();但是切换完场景之后就会多生成声音源,导致有声音叠加。 而且,不同场景之间切换,BGM还会重头开始播放。虽然也尝试了用标签来解决,但是没用。。。 后来修改了代码,让BGM为static,让它只能实例一个,解决了问题。 同时也学到了单例模式,让那个static变量储存音量信息,实现了在设置中调整音量。 ——2019.10.01—19:09 完善了场景UI(其实就是鼠标附在上面,按钮有其他效果) 发现了之前关于音乐开关的一个Bug,并且修复了它。 开始着手建立小蛇冒险的关卡制作。 音效决定等到关卡都制作完毕,再统一添加。 发现脚本可以优化,但是决定等到关卡都制作完毕,再优化。 接下来的时间安排: 10.02上午: 制作小蛇移动,以及墙壁、道具 10.02下午: 制作与小蛇一起移动的镜头,以及道具、墙壁的随机生成 10.02晚上: 感觉白天完不成上述,晚上是完成没有完成的 然后一天制作一个关卡。 ——2019.10.02—1:03 10.02 上午到现在,完成了蛇头跟随鼠标的移动; 蛇头的移动是通过给蛇头上的刚体组件施加不同方向的速度完成的; 而在蛇头的旋转上,尝试了许多方法,最后发现用四元数改变蛇头朝向效果较好。 ——2019.10.02—10:58 完成了基本的道具的生成,以及小蛇吃到道具道具的消失、生成新的道具; 因为小蛇身体的生成和移动还没有完成,所以道具的功能尚未实装; 这部分内容下午再完成。 ——2019.10.02—12:31 完成了部分道具的功能(因为死亡功能还未完成,所以盾牌功能尚未实装); 完成了小蛇身体的跟随和移动,一开始想用让当前身体位置覆盖前一个身体位置来完成,但是由于小蛇移动是由鼠标确定的,所以这样做有问题 最后通过记录蛇头历史位置解决了这个问题。 做摄像机跟踪的时候,发现不能将游戏场景放到canvas里。。。重新制作了游戏场景,实现了摄像机的跟踪。 死亡机制和计分机制尚未完成。 虽然想让地图随机生成,但是道具和墙壁存在分布不均、重叠的情况。打算等到全部游戏关卡完成后,再优化。 ——2019.10.02—21:26 (补充:重新制作场景的时候,发现身体随蛇头移动时会疯狂抖动。。。估计是因为帧数不稳定的原因,把Update改成FixedUpdate以后就好了) 其实是昨晚的日志,虽然是从昨晚跨越到凌晨,然后10.03早上才写的) (P.S. 后来的补注:对于物理效果,最好放到FixedUpdate里面,因为它被调用的时间间隔是相同的) 完成了游戏过程中设置菜单、结束游戏后,重开游戏菜单。以及计分制,计分方法和示例有所不同。 10.03 完成了小蛇闯关的第一个关卡。对于碰撞体之间的了解更深刻了。 因为和Risk差不多,所以没什么难点要解决的。 ——2019.10.03—13:16 完成了第二个关卡。因为之前做RISK的时候,偷懒了,rigidbody2D用的是Kinematic,结果报应来了。。。 因为要实现蛇碰撞墙壁的效果,把蛇改成了Dynamic了,结果蛇的移动和头部的旋转出问题了。 后来修改了Move方法,改好了。具体就是修改了原来旋转用的四元数方法,然后再多了两个二维向量。原来是用三维向量来记录,后来发现这样计算距离和标准化会出问题。 然后改成用一个二维向量实时记录方向,另一个记录历史方向,以免鼠标位置在判断距离外时蛇头乱动。 不过还有小瑕疵,蛇吃食物时会闪一下,不清楚是不是渲染顺序的问题。 不过关于场景道具thron,我把它设置成一碰就死的了。 ——2019.10.03—19:17 发现一个十分严重的BUG,从游戏跳回主菜单,再从主菜单跳回相同游戏场景的话,FixedUpdate(),不运行了!!! 好了,问题解决了。。。原来是因为在设置里面暂停的时候timescale设成了0,重新加载场景的时候也没有改回1。。。 算是明白了,FixedUpdate的运行与否还与timescale的值有关。。。天知道我怎么反应过来的。网上和官方文档竟然都没有提到这点的。 可能有提到的吧,不过可能要搜timescale相关内容才能搜到吧(没有这样搜过,不打保票能搜得到)。 10.04 上午开始着手做无限方块关卡。但是没有做出些啥。 因为发现其实蛇只是在上下动,左右动的只是背景,所以要另写蛇动脚本。。。 一开始打算做成UI界面的,但是发现这样做屏幕缩放,方块无法很好地跟着一起缩放。 而且还会有各种各样的其他问题,最后只能放弃这种方案。 结果又只能重新来,下午继续了。 ——2019.10.04—14:20 把关卡3完成了。 做的时候还是遇到了各种各样的问题。 4号上午之所以想用GUI来完成这个关卡,是因为这样将数字文本贴在物体上方便。 但是由于GUI图标的位置、大小是会随着屏幕大小改变的,而我怎么设置,都无法让方块和屏幕一起缩放起来看着正常。。。所以这个方案弃用了。 后来发现可以在脚本里设置,让方块显示数字。但是,数字显示的样式不好改。于是又弃用这个方法了。 所幸,后来发现了3D Text这个物体,解决了数字显示的问题。但是又出现的新的问题——数字会随着位置不一样,而时能看得见,时而看不见。 一开始推测,是渲染的问题,想用代码修改MeshRenderer的层级,但没用。 后来估计是ZFighting的问题,稍稍修改了Text的高度解决了。 其实一开始是想通过修改高度解决的,但是一开始改的太过了,导致。。。(反正是透视视角嘛,懂的) 还发现了一个奇怪的问题,原因还没有查明。有时候重开游戏,场景(尤其是背景板,材质都黑了一圈)会显得很暗。 不清楚是灯光还是材质的问题。而且关键是,这个BUG时而出现,时而不出现。。。想查看的时候,又好了。。。 ——10.05—1:18 10.05 第四个关卡还未完成。 因为蛇身体变色的原因,蛇身体的跟随与之前的关卡不同了,之前是让蛇身体顺着来,现在让他倒着跟随蛇头(即新生成的身体紧随蛇头) 但是这样有问题,有一部分蛇身位置没变。后来发现是因为历史位置长度不够了。。。修改了代码,当历史位置长度大于一定值之后才生成蛇身。解决了问题。 不过由于一些历史遗留问题,蛇整体都十分大,所以。。。蛇身变色的时候显得有一部分提前变了一样。 剩下的内容,下午再继续做 ——10.05—12:59 (预计今天就能把游戏关卡的内容全部完成了,速度快的话,今天应该还能把音效加上去) (明天要是还有精力的话,就把Risk的随机生成优化一下,并且加入换装系统) (如果再有时间的话,把智慧草也完成了吧(感觉智慧草像是自动寻路。。。),可能还加个小地图?当然前提是还有时间和精力) 明天再加音效吧。。。 10.06 基本任务差不多完成了。。。还有一些小细节要调整。 下午再调了。 顺带说说加音效时一个比较头疼的问题吧,如果时按下按钮场景转换的话,音效会没有播完就被摧毁了。 有两个方案:一个是让他转换场景时音效物体不被摧毁,一个是转换场景时让音效播完再转换。这里选择了第二种。。。 ——2019.10.06—13:03 测试了一下,发现一个很严重的问题,游戏中返回键无法返回。 原因是因为TimeScale设置为了0。。。协程和Invoke都无法运行。。。(网上竟然没有提到协程也要保证TimeScale为1) 基本的完成了,之后再看看要不要做选做和拓展吧。 10.07 用A* Pathfinding Project 插件,做了一个智慧草寻路。不过由于时间不足了,所以寻路时,蛇头会歪、没有线和倒计时提示。 修改了随机地图的生成,让蛇附件不生成物体。
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published