摘要:
0.前言 本次作业基于上一次作业“自动巡逻兵”:在主角上增加了血条,巡逻兵碰到主角会导致主角持续扣血直到主角死亡。地图上的中间一格没有巡逻兵,且主角位于此处时持续恢复血量直到满血。 1. 制作血条预制体 1. 创建一个新滑动条:在Hierarchy处右键,选择UI,选择Slider,发现多了一个Ca 阅读全文
摘要:
网上已经有许多关于巡逻兵的作业博客,但是经过我自己运行后感觉很多要么代码量非常大,要么很简陋bug很多,我决定自己重新全部写一遍,用最少的代码完成本次作业,给后来的学弟学妹一些帮助。所有需要自己写的代码加起来不到三百行。为此我优化了好多天。 运行方式,代码下载后即可直接运行,不过要注意需要打开Ass 阅读全文
摘要:
首先对该游戏框架进行分析:打飞碟这个游戏中只有“飞碟”这一类游戏对象,因此首先需要UFO.cs类用来保存飞碟的gameObject和飞碟的大小、速度、移动方向、颜色等单个飞碟独有的属性。然后,分析该飞碟的行为:它可以被点击、它在视线范围内时遵循抛物线的飞行轨迹、它飞行到视线范围外时自动消失。对于第一 阅读全文
摘要:
本篇博客是对https://www.cnblogs.com/LC32/p/15420714.html代码的进一步改进。 1.增加裁判 首先创建一个JudgeController作为裁判类,并且要求裁判需要通过导演才能得到对应的场景控制器。把原来写在FirstController中的GetAndSet 阅读全文
摘要:
0.前言 本博客为2021学年中山大学3D游戏编程与设计课第二次课程作业。实现游戏“牧师与魔鬼”,并且要求使用MVC架构。与该作业有关的博客文章有很多,但是绝大部分都写的比较简略,即使阅读后仍然难以对整个作业的实现过程有比较清晰的认知,因此我希望根据自己实现过程中的理解写一篇比较详细的博客,给以后有 阅读全文
摘要:
实现的结构和闭散列表完全一致,由于开散列表没有扩容机制,因此在创建散列表时要大概估计适合的散列表大小。 另外就是理论上插入到同一个散列表的键值是不能重复的,否则会造成查询和删除时的错误。(leetcode第一题两数之和是可能存在重复键值的,要考虑如何做特殊处理) #include <iostream 阅读全文
摘要:
可以根据散列表解决散列冲突的方法把散列表分成开散列表和闭散列表: 当发生散列冲突时,使用开放寻址法把冲突的数据项放入别的空的单元中,称为闭散列表,其中寻址方法有线性探测法,平方探测法等。 当发生散列冲突时,使用拉链法,把映射到同一地址的数据元素组织成链表,称为开散列表 闭散列表的装载因子不能大于1, 阅读全文