免费国产网站_秋霞午夜一区二区三区视频_99热在线看_日韩精品久久一区二区_午夜看一级毛片_天天鲁在视频在线观看

  • 您的位置:首頁 > 新聞動態(tài) > Unity3D

    Unity3D的射線碰撞檢測方法總結(jié)

    2019/12/12??????點(diǎn)擊:

    射線檢測故名就是通過射線去檢測是否和碰撞器產(chǎn)生了交集,和碰撞器與碰撞器發(fā)生交集一樣,如果檢測到了會返回一個(gè)真。
    射線的用法很多:比如檢測是否跳躍,通過向地面投射射線控制在地面時(shí)候可以跳起。
            射擊游戲中可以通過定長射線去判斷目標(biāo)物體是否被擊中等

    主要用到的工具類有:

    • Physics
    • RaycastHit 光線投射碰撞
    • Ray 射線


    第1種方法:Physics.Linecast 線性投射
    從開始位置到結(jié)束位置做一個(gè)光線投射,如果與碰撞體交互,返回真。

     Debug.DrawLine(transform.position, Line_floor.position, Color.red, 1f);
     bool grounded  = Physics.Linecast(transform.position, Line_floor.position, 1 << LayerMask.NameToLayer("Ground"));
     if (grounded)
     {
         Debug.LogError("發(fā)生了碰撞");   
     }
     else {
         Debug.LogError("碰撞結(jié)束");
     }
    第二種方法在場景中投下可與所有碰撞器碰撞的一條光線。可控制投射方向和投射長度。
    Vector3 fwd = transform.TransformDirection(-Vector3.up);
    bool grounded =  Physics.Raycast(transform.position,fwd, 10 );
    if (grounded)
     {
       Debug.LogError("發(fā)生了碰撞");   
     }
    else 
    {
        Debug.LogError("碰撞結(jié)束");
     }
    第三種方法:在場景中投下可與所有碰撞器碰撞的一條光線,并返回碰撞的細(xì)節(jié)信息。



    RaycastHit hit;
    bool grounded = Physics.Raycast(transform.position, -Vector3.up, out hit);
    // 可控制投射距離bool grounded = Physics.Raycast(transform.position, -Vector3.up, out hit,100.0);
    if (grounded)
    {
    Debug.LogError("發(fā)生了碰撞");
    Debug.LogError("距離是:" + hit.distance);
    Debug.LogError("被碰撞的物體是:" + hit.collider.gameObject.name);
    }
    else {
    Debug.LogError("碰撞結(jié)束");
    }
    
    注意:這里返回的碰撞器的信息是依次的,先返回第一個(gè)碰撞的,第一個(gè)碰撞結(jié)束后才返回第二個(gè)。


    第四種方法:Physics.RaycastAll 所有光線投射。

    投射一條光線并返回所有碰撞,也就是投射光線并返回一個(gè)RaycastHit[]結(jié)構(gòu)體。


    RaycastHit[] hits;
    hits = Physics.RaycastAll(transform.position, -Vector3.up, 100.0F);
    int i = 0;
    while (i < hits.Length)
    {
    Debug.LogError("發(fā)生了碰撞");
    RaycastHit hit = hits[i];
    Debug.LogError("被碰撞的物體是:" + hit.collider.gameObject.name);
    i++;
    }


    第五種方法:控制碰撞的層,可以設(shè)置射線的長度,并且用debug查看射線的長度。

    使用層的時(shí)候,要注意,要給別的對象也附上層的名字,不能用缺省,會出問題。


    RaycastHit hit;
    // Debug.DrawLine()
    bool grounded = Physics.Raycast(transform.position, transform.up, out hit, 10000f, 1 << LayerMask.NameToLayer("Diren"));
    Debug.DrawRay(transform.position, transform.up * 10000f, Color.red);
    if (grounded)
    {
    Debug.LogError("發(fā)生了碰撞");
    Debug.LogError("距離是:" + hit.distance);
    Debug.LogError("被碰撞的物體是:" + hit.collider.gameObject.name);
    
    }
    else {
    Debug.LogError("碰撞結(jié)束");
    }
    第五種:Physics.OverlapSphere 相交球。
    返回球型半徑之內(nèi)(包括半徑)的所有碰撞體 collider[]??捎糜谑叭∥锲酚?。此方法在VR交互時(shí)為了提高用戶體驗(yàn),使用較多。
    Collider[] col =  Physics.OverlapSphere(transform.position,1f, 1 << LayerMask.NameToLayer("zhuangbei"));
    if (col.Length > 0)
    {
    foreach (Collider zhuangbei in col)
    {
      zhuangbei.gameObject.GetComponent().material.color = Color.red;
    }
    }




    主站蜘蛛池模板: 99久久精品免费看国产高清_一级录像片_91pro在线观看_99热久久精里都是精品6软件介绍_日韩三级中文字幕_日韩av在线第一页 | 亚洲精品无码午夜福利中文字幕_91福利视频一区_看欧美黄色录像_国产传媒在线免费观看_欧美同性男同志VIDEOSBEST免费_国产日韩无 | 久久国产影视_国产精品玩偶在线观看_日韩人妻中文无码一区二区三区_深夜免费福利视频_精品久久久999_午夜黄色小视频 | 九热这里只有精品_唐安琪扒开腿让男人桶_欧美一区二区三区大片_小俊大肉大捧一进一出好爽_欧美自拍一区_学生妹亚洲一区二区 | 久久艹逼视频_天堂天躁狠狠躁夜躁2022_美女扒开腿让男人桶爽揉_jiuse地址_久久精品xxx_亚洲极色 | 日日夜夜人人_大地影视中文第二页的背景故事_成人福利_久草成人在线视频_免费草比视频_韩国毛片免费观看 | 四虎影视网站_日本性生活一级片_国产精品视频一区二区免费不卡_免费无码毛片一区二区A片_中国少妇内射XXXXⅹHD_国产精品一区12p | 哪里可以看毛片_中文字幕仓人妻偷偷久久_亚洲欧美国产双大乳头_激情五月婷婷在线_99久久精品一区二区毛片吞精_91性九色 | 日产精品一区二区三区在线观看_日韩精品高清在线_亚洲乱码伦AV_欧美人xxxx_www日韩精品_久久成人免费 | 麻豆日产六区_亚洲成人av高清_日本黄色激情_浪荡女天天不停挨CAO日常视频_91网页_五月激情久久 | 九热这里只有精品_唐安琪扒开腿让男人桶_欧美一区二区三区大片_小俊大肉大捧一进一出好爽_欧美自拍一区_学生妹亚洲一区二区 | 成人日韩在线视频_亚洲色偷偷av_久久人人人_日韩在线一二三区_久艹av_国产精品视频在线免费观看 52gao在线视频_欧美视频一级_av成人免费网站_久久精品国产一区二区_国产中文字幕在线_91美女高潮出水 | 女人体a级1963免费_麻豆映画在线观看_91久久久www播放日本观看_久久www人成免费产片_久久在线视频_91亚洲精华国产精华精华乳 | 欧美一级裸片_日本www免费_青青草大香焦在线综合视频_日日操日日射_亚洲午夜国产一区99re久久_色婷婷亚洲婷婷八月中文字幕 | 亚洲精品资源在线_国产精品一区二区欧美黑人喷潮水_久久精品99国产精_好男人WWW社区视频在线资源_少妇的渴望HD高清在线播放_chinesexxxx极品少妇 | 欧美精品XXXX_久艹在线免费观看_夜夜夜夜夜操_韩日成人_在线播放h_成人区视频 | 午夜在线观看视频_韩国日本福利在线_最新日本视频_在线观看欧美精品_免费播放片ⅴ免费人成视频_成人av片在线观看 | 一区二区不卡在线_大地资源网中文第一页_操操操国产_国产三级在线_黄色变态网站_国产对白叫床东北女人 | 国产一级淫片免费视频_国产极品视频_艹逼网站无需付费在线看视频_日本特一级黄色片_国产一区高清在线观看_麻豆国产av超爽剧情系列 | 日本疯狂爆乳xxxx_国产在线视频一区二区三区98_青青久视频_国产农村乱色xxxx_完全免费在线视频_亚洲精品99久久久久中文字幕 | 免费观看视频91_久久91热_www.麻豆传媒_国产剧情资源在线视频_午夜毛片网_成全高清免费观看MV动漫 | 私人午夜影院_国产啪亚洲欧美精品无码_中文无码字幕中文有码字幕_黄色av观看_超碰人人搞_国产精品久久久久久久午夜 | 小泽マリアAV无码观看_国产福利在线小视频_在线成人小视频_不忠少妇_香蕉啪视频在线观看视频久_亚洲国产精品成人无码A片软件 | 美女扒开内裤无遮挡18禁_视频一区视频二区中文_免费精品国产人妻国语_久久天天综合网_日本一级淫片a免费播放_99亚洲乱人伦aⅴ精品 | 国产美女精品一区_免费看国产片在线观看_芭乐视频在线播放_囯产乱色国产精品免费视频_超碰97色_伊人日韩 | 国产精品一区毛片_在线啊v_兔子先生视频在线播放_国产AV区男人的天堂_午夜免费激情视频_91丝袜在线 | 一级a一级a爰片免费免免_永久精品网站_办公室娇喘的短裙老师在线视频_avv天堂网_久久久久88色偷偷_亚洲国产成人久久综合一区 | 亚洲精品久久久久AV无码_午夜激情av在线_成人性午夜免费视频网站_亚洲AⅤ无码一区二区波多野_无码午夜福利免费区久久_中文字幕精品亚洲无线码一区 | 99这里只有精品99_国产丰满麻豆videos天美_国产一区不卡在线_365天天色综合网_日本大尺度吃奶呻吟视频_超碰caoporn香蕉 | 美女扒开内裤无遮挡18禁_视频一区视频二区中文_免费精品国产人妻国语_久久天天综合网_日本一级淫片a免费播放_99亚洲乱人伦aⅴ精品 | 台湾佬亚洲_在线看免费淫片_亚洲国产成人在线观看_国产精品久久无码不卡黑寡妇_欧洲女人牲交视频免费_91精品免费久久久 | 奶水都出来了[14p]_久久99精品久久久久国产越南_在线播放无码高潮的视频_日韩av有码_国产性夜夜春夜夜爽有声小说_久草精品视频在线播放 | 成人黄色三级毛片_亚洲福利免费_在线另类播放_黄色的视频在线观看_国产一区二区91_国产毛片精品一区二区 | 日日夜夜狠狠_国产精品羞答答_亚洲中文字幕人成乱码_久久精品国产99久久6动漫欧_九一久久精品_欧美v国产v亚洲v日韩九九 | 亚洲欧美在线视频_亚洲自拍首页_无码国产69精品久久久久孕妇_久久99久久99精品免视看动漫_麻豆午夜福利国产高潮偷啪_精品国产91久久久久久浪潮蜜月 四虎视频在线精品免费网址_青草青草久热国产精品_免费在线亚洲_www一片黄_最色www_国产女上位疯狂榨精合集 | 亚洲资源视频_国产情侣真实露脸在线_四色av网站入口_日本一区二区三区日本免费_国产91天堂素人系列在线播放_欧美gv在线 | 四虎影视1304t_碰超免费人妻中文字幕_婷婷九月丁香_大伊香蕉精品视频在线天堂_天天艹久久_91精选 | 强奷很舒服好爽好爽_美女色诱视频大全免费_av亚洲产国偷v产偷v自拍_亲子乱v一区二区三区免费看_日韩精品人妻中文字幕在线有码_亚洲精品无码久久久久av麻豆 | 黄动漫在线免费看_奇米影视一区_亚洲伊人成无码综合网_国产色无码专区在线观看_搡老熟女老女人一区二区_围产精品久久久久久久 | 97无码色网视频_黄色精彩视频_女警一级毛片免费视频观看_国产午夜无码福利在线看网站_高潮免费视频_一级伦理在线 | 欧美色道_久久免费综合视频_18禁免费无码无遮挡网站_女人被狂爆到高潮免费视频_国产毛片777777_日韩福利小视频 |