跟视频

E20枪指向、后坐力,换子弹。枪始终指向鼠标指针。后坐力通过后震动和旋转枪头实现。

E19添加准星。亮点,为准星单独创建一个camera,从而实现可以时刻看到准星的效果。

E17武器射击效果。有子弹壳落地效果,枪口射击效果等。亮点:图片转化为精灵,发光效果。第20分钟处为了优化性能,优化了碰撞,使得弹壳不与自身碰撞,只与地板和障碍物碰撞。

E16怪物消灭喷血效果。

E14清完怪后地图重置,角色死后重生。

E13随机怪物生成点。角色不动时,角色位置变为怪物生成点。

E12地图终结。1重构变量到一个类里。2随机障碍物高度。3随机颜色。4设置地图为collider

亮点:Material obstacleMaterial = new Material (obstacleRanderer.sharedMaterial);//这么写是基于obstacleRanderer.sharedMaterial创建一个新Material,新对象跟obstacleRanderer.sharedMaterial没有任何关联,U3D里好多这种写法。

E6敌人的攻击

E7 玩家生命,子弹自动消失,子弹在物体内发射时也算碰撞

E8地图创建,亮点:1代码创建一个容器存放所有物体。2[CustomEditor (typeof(MapGenerator))]。3[Range(0,1)]//nice

public float outlinePercent;

E9地图上创建随机物体。亮点:fisher-yates洗牌算法,可以保证物体随机放置且位置不重复。


E10保证地图全通。亮点:1运算符重载的方法:在结构体里写: 

public static bool operator == (Coord c1, Coord c2){

return c1.x == c2.x && c1.y == c2.y;

}

public static bool operator != (Coord c1, Coord c2){

return !(c1 == c2);

}


E11地图寻路。亮点:carve hold的解决方式一个是减小 agent radius

你可能感兴趣的:(跟视频)