[請益] unity物件拾取、場景物件互動的實現

看板GameDesign作者 (kons)時間3年前 (2020/11/27 18:39), 3年前編輯推噓3(304)
留言7則, 4人參與, 3年前最新討論串1/1
不好意思,又來請教大家了;專案是top-down視角的2D平面遊戲。 目前想實現的方式是,透過按鍵來與場景上的物件互動, 例如撿取物品、或使用場景上的物件、與其他人物開啟對話、開門開寶箱等。 看網路上的教學都是使用Raycast的方式去偵測物件, 在想有沒有不使用Raycast的方式來實現。 目前的想法是,因為我是棋盤式移動方式,物件也都會有一個整數座標, 所以想讓角色按下某個按鍵時,就拾取跟角色同座標的物件,或者產生互動。 例如一個石頭在(2,2),我的角色也站在(2,2), 按下按鍵就取得(2,2)這個座標上的石頭。 但問題是,我要怎麼讓程式知道,在這個座標上有那些物件? 或是有什麼推薦的做法嗎?謝謝。 -- 身為一個魯蛇,今後我再也不跟女生告白了。 因為量子力學告訴我們,在進行決定狀態的動作之前, 每個女生都是處於喜歡我不喜歡我兩種疊加的曖昧狀態中。 ~~ 薛丁格的正妹Line ID:kons0815 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.177.32.178 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1606473543.A.22C.html

11/27 20:13, 3年前 , 1F
存map或是dictionary, 對應棋盤得物件跟座標對應
11/27 20:13, 1F

11/27 22:11, 3年前 , 2F
objectInfo[] objects = locationObjects[x][y]
11/27 22:11, 2F

11/27 22:19, 3年前 , 3F
先實作objectInfo的類別,記錄場景物件需要的資料
11/27 22:19, 3F

11/27 22:20, 3年前 , 4F
初始化一個locationObject的容器,存座標有多少物件
11/27 22:20, 4F

11/28 13:34, 3年前 , 5F
陣列學一下,每個物件先把自己塞進資料庫裡再反過來抓
11/28 13:34, 5F

11/28 13:35, 3年前 , 6F
不求太精準想偷懶也是可以直接用collider去抓碰撞啦
11/28 13:35, 6F

11/28 21:20, 3年前 , 7F
就自己算啊 物件dictionary之類
11/28 21:20, 7F
感謝,偷懶使用2d collider去抓碰撞了 ※ 編輯: kons (180.177.32.178 臺灣), 11/29/2020 23:23:40
文章代碼(AID): #1VmDT78i (GameDesign)