- 博客(4)
- 收藏
- 关注
原创 第六章 StarBiter
一、敌人生成敌人生成通过EnemyMaker进行控制,通过输入同时可以存在的最大数量以及敌人总数控制敌机的生成。创建敌机行动脚本,为不同敌机设定不同的行动方式。为敌机编队创建队长,并设置队长死亡后队员的行动事件。为每个敌人添加状态事件EnemyStatus,控制敌人状态的改变,储存不同状态时的特效。二、索敌激光的碰撞检测1.角度处理需要注意的是生成的mesh是在两个帧画面之间形成的,时间很短不会形成钝角,因此我们只要优角。//准备工作if (Mathf.Abs(StartAn
2021-08-23 21:14:22 102
原创 第四章 DarkWater
一、模拟水的阻力潜水艇需要具备以下特点1、对玩家操作不能快速做出反应2、持续操作鼠标才能进行转弯设计在水中的衰减率attenuate,潜艇进行转弯时除了自身要提供角加速度,同时角速度还会受到衰减率的影响,通过改变角加速度使潜艇速度缓慢变化。当玩家松开鼠标角速度因为衰减率的存在缓慢降低,实现潜艇反应慢,和鼠标持续操作进行转弯的特点。[SerializeField] private float downAccelerate = 0.5f;//衰减加速度,玩家松手private float
2021-08-23 11:38:47 88
原创 第三章 地牢吞噬者
一、人物、怪物移动(1)、人物移动1.读取人物移动方向move_direction(以下简称mdir,类型为Vector3)2.按下按键后人物不会立马改变移动方向,而是通过判断是否可以沿着该方向移动,方法为射线检测按下方向是否有障碍物,如有则禁止向该方向移动,并继续沿当前方向mdir移动,如果没有则储存该方向,判断人物在地图方格中央时向该方向移动。public bool WallCheck(Vector3 direction){ Vector3 tpos = transfr.
2021-08-23 11:26:54 195
原创 第二章 迷你拼图
一、碎片拖拽1.透视变换和逆透视变换鼠标存在于屏幕中属于二维坐标系,而我们想要拖动的碎片存在于三维坐标系内,想要进行拖拽操作必须将二者置于同一坐标系下,这里我们使用逆透视变换的方法,将鼠标光标变换至三维坐标系中。需要注意的是用过下面这种方法得到的光标坐标只是当摄像机处于Orthographic(正交相机)模式下投影得到的世界坐标,当相机处于Perspective(透视相机)模式下,我们将有新的方法进行鼠标坐标的定位,详情请参考第六章-噬星者。//将屏幕上的光标坐标投影到世界坐标mous
2021-08-22 16:25:00 128
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人