1. 瞄準(zhǔn)器!3D入門實(shí)戰(zhàn)!拇指射箭!Cocos Creator 3D !

        共 931字,需瀏覽 2分鐘

         ·

        2020-08-14 19:59

        瞄哪打哪!超簡單的射線檢測!提供試玩和完整項(xiàng)目!

        效果預(yù)覽

        原理

        Cocos Creator 3D 剛出來時, 寫了一個簡單的拇指射箭(點(diǎn)擊閱讀)?。

        不過,當(dāng)時的瞄準(zhǔn)發(fā)射計(jì)算是以某一個系數(shù)來控制的。

        這感覺不太對。

        還是用一個射線檢測去處理這個瞄準(zhǔn)結(jié)果吧。

        首先,通過攝像機(jī),把瞄準(zhǔn)器的位置轉(zhuǎn)到屏幕坐標(biāo)。

        const?screenPoint?=?this.camera_main.worldToScreen(this.NodePos_bows.node.worldPosition);

        然后,在通過攝像機(jī)做出一條射線。

        const?outRay?=?this.camera_main.screenPointToRay(screenPoint.x,?screenPoint.y);

        最后通過射線計(jì)算出終點(diǎn)位置。

        這邊用分軸思想。

        因?yàn)?code style="font-size: 14px;overflow-wrap: break-word;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(92, 157, 255);">z軸坐標(biāo)是確定的,可以先計(jì)算出z軸的方向長度比例。

        const?targetZ?=?this.NodePos_target.z;
        const?dir_t?=?(targetZ?-?outRay.o.z)?/?outRay.d.z;

        再根據(jù)這個比例,計(jì)算出xy坐標(biāo)就可以啦。

        const?targetX?=?outRay.o.x?+?outRay.d.x?*?dir_t;
        const?targetY?=?outRay.o.y?+?outRay.d.y?*?dir_t;

        小伙伴們學(xué)會了么?

        小結(jié)

        坐標(biāo)轉(zhuǎn)換!攝像機(jī)!射線!

        以上為白玉無冰使用 Cocos Creator 3D v1.1.2 實(shí)現(xiàn) "3D瞄準(zhǔn)器" 的技術(shù)分享。歡迎分享給身邊的朋友!

        知識不過是潛在的力量,只有將它組織成明確的行動計(jì)劃,并指引它朝著某個明確目的發(fā)揮作用的時候,知識才是力量。

        更多



        https://github.com/baiyuwubing/cocos-creator-3d-examples

        點(diǎn)擊閱讀原文”查看精選導(dǎo)航

        “在看”是最大的鼓勵▼

        瀏覽 66
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
          
          

            1. 久久国产影院 | 高潮又爽又黄又无遮挡在观看 | 亚洲AV成人片无码网 | 91老司机福利 | 欧美性爱 - 【水蜜桃】免费高清视频 |