美文网首页
08打砖案例(用射线)

08打砖案例(用射线)

作者: _谭小坤 | 来源:发表于2016-12-22 19:24 被阅读20次

    实现结果##

    实现结果
      总的一个实施结果是,你可以在建立的墙面上点击一个位置,就会有一个小球快速的打击过来,当碰到一起的时候就会有撞击的物理想象
    

    l流程演示###

    1、建立一个砖块的墙面。

    建立一个砖块墙
    建立墙面的思路。用for循环的嵌套,位子,在一个面上有变化,我选择的是x,y这个面,顾z没有变化。墙的合适位置要与地面的位子大小先关联。
    
    墙的代码

    2、发射小球与墙面进行碰撞检测。

    发射小球用来打击墙面
    从哪里发射小球,如何控制小球,小球的碰撞检测,小球的销毁。小球碰撞之后我们要对它进行处理。碰撞3秒之后销毁小球
    
    小球的创建与发射
    添加销毁小球的脚本到创建小球的身上。
    
    销毁小球的脚本

    3、粒子特效

    在小球与墙面碰到的时候,产生一个碰撞的效果。类似,做物体碰撞之后产生的效果。
    
    粒子特效
    粒子特效一般有人专门研究这一块。我们只要把这些资源导入到我们的场景中得到我们想要的结果就行。
    
    粒子特效的导入
    粒子特效的脚本,及如何加载粒子特效资源。
    
    加载粒子特效的脚本

    4、瞄准器的制作。

    制作瞄准器。获取一张瞄准器的图片。在ps中进行图片处理得到Alpha通道的图片。故可以在u3d中得到一个瞄准器的图片。然后就是获取图片就行。
    
    获取图片
                                       实现我们的鼠标中心在瞄准器的中央。
    
    瞄准器与我们鼠标点击点的关系 代码控制鼠标点击的位置是瞄准器的中心 代码的数学逻辑看图

    5、蓄力池的制作

    蓄力池,一张合适的图片(自己弄得好看一点),位置,点击鼠标蓄力的时候,加载力的另一张图片。以及相应的逻辑处理。实现过程就是。点击鼠标左键的时候,蓄力池就开始蓄力,鼠标左键松开的时候就发射获得相应力的子弹出去。
    
    蓄力池的效果 逻辑代码实现处理

    附带逻辑代码###

    01 02 03 物体销毁代码 粒子特效加载代码

    总结###

    1、射线的发射,碰撞,检测处理。
    2、Rect这个类的一些方法处理。确定一个点(x,y),宽度和高度。便可以确定一张图的位置。
    3、Time.realtimeSinceStartup的正确理解 。

    相关文章

      网友评论

          本文标题:08打砖案例(用射线)

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