模拟现实中的洲际导弹

作者: 齊葩 | 来源:发表于2017-03-16 08:49 被阅读207次

    我们先观察一下现实中的洲际导弹

    1:一般都是由发射井,发射车,潜艇,航母,以及其他一些发射平台发射的。

    2:发射角度一般都是垂直的。

    3:发射时的速度是逐步加速的。

    4:到达一定高度或者速度的时候开始转向。

    5:有自己的定位系统

    6:有自己的反拦截系统。

    7:有一定的灵活机动性

    8:等等(我不是做导弹的,这些都是可以看见的,还有一堆看不见的东西请自己发掘)

    有了上面的资料我们就可以去模拟洲际导弹了

    1:需要创建一个洲际导弹类。

    2:洲际导弹的属性一般有 

         a:模型或图片(可能还有特效)

         b:向量(飞行方向)

         c:当前速度

         d:加速度

         e:最大速度

         f:转向速度(旋转速度)

         g:最小旋转速度

         h:最低旋转高度

         i:攻击目标

         j:搜寻范围

         k:飞行时间

         l:飞行时间上限

         m:碰撞体

         n:弹头(不同的弹头爆炸后有不同的效果)

    3:洲际导弹需要有个每一帧都执行的方法来不停的更新自己的属性。比如update

    4:洲际导弹还需要有一个start方法,这个方法里给属性赋予初始值(一般把当前速度赋值为0)。并且启动update方法

    5:update方法里更新数据的顺序

        a:更新飞行时间(飞行时间+=这一帧刷新的时间)

        b:更新飞行速度((当前速度+(当前速度+加速度)*这一帧刷新的时间)与最大飞行速度的最小值)。为什么是(当前速度+加速度)*这一帧刷新的时间而不是加速度*这一帧刷新的时间,因为速度是弧线递增的,不是直线递增的

        c:更新飞行方向(如果最低旋转高度和最小旋转速度都达到了就可以更新飞行方向了,(需要旋转的角度*旋转速度*这一帧的时间)这个值与需要旋转的角度取最小值+当前角度)。如何旋转一个向量点击这里

        d:需要在update 里更新炮弹的位置 (方向*速度*这一帧执行的时间+当前的炮弹的位置)

        e:需要在update里检查敌方的拦截武器(就是发现除了目标以为的东西像自己飞来时,可以采取避让和制造分身的方式等等来躲避拦截)

        f:如果目标消失了就在update里搜寻搜寻范围内的目标。

        g:没有目标时直线飞行

        h:在update里检查炮弹是否与可以发生碰撞的东西发生了碰撞,如果碰撞了就爆炸(爆炸交给弹头处理

        i:检查飞行时间是否达到上限,如果到了就爆炸

        j:爆炸后销毁炮弹

    弹头也需要写一个类(因为有不同的弹头)

    1:弹头属性

        a:爆炸范围

        b:攻击力

        c:可能还有攻击类型,攻击属性,buff,等等。看你是什么弹头了。

    2:弹头有一个方法那就是放爆炸

    3:爆炸时检测是否有敌人在爆炸范围内。有的话一起受到伤害和buff的影响

    讲完收工(是不是简单到爆)

    点击这里可以看到作者的其他文章

    欢迎转载,转载请标明出处

    相关文章

      网友评论

      • 只羡太白剑锋寒:这是洲际导弹制作简明手册么?50年前肯定是机密,不过那时候的技术,除了美苏都挺差的,中英法德日之外更是想都不用想。
        齊葩:@只羡太白剑锋寒 http://www.bilibili.com/video/av583852/ 导弹视频
        齊葩:我是程序员,做游戏的。在游戏里模拟洲际导弹。:blush:

      本文标题:模拟现实中的洲际导弹

      本文链接:https://www.haomeiwen.com/subject/spddnttx.html