[請益] Unity中prefab角度跟Instantiate不同

看板GameDesign (遊戲設計)作者 (JKT48)時間10年前 (2015/08/08 14:14), 編輯推噓0(006)
留言6則, 3人參與, 最新討論串1/2 (看更多)
大家好 新手在玩Unity做一個飛機的遊戲, 飛機可以射出飛彈打擊目標等等 現在做到一個地方一直卡關, 所以上來請問前輩 是這樣的我現在要做一個追蹤型的飛彈可以直接追蹤目標 2D遊戲 從TOP角度來看 右邊是+X 往上是+Z 現在有幾個情況 飛彈模型剛從網路上抓下來的時候是橫的 o======> 我可以比他加入一些要素以後變成Prefab Prefab也可以轉角度 y轉-90度可以變成這樣(大概看得懂就好= =) ^ i i o 之後從Prefab拉近螢幕角度都沒問題 因為飛彈本來就是要往上射 但是我在寫腳本的時候 可能角度那邊一直被搞混 目前是在主角飛機的scripts按下一個鍵以後 先尋找tag=enemy的敵人 if(target = GameObject.FindGameObjectWithTag("BossEnemy")) { Vector3 relativePosition = player_transform.position - target.transform.position; //開始生子彈 Instantiate(rocket_transform, player_transform.position, Quaternion.LookRotation(relativePosition)); } 我把元素都分行, 希望大家都看的懂 再配合我子彈自己的scripts: this.transform.Translate(new Vector3(0, 0, -speed * Time.deltaTime) ); 到目前為止, 子彈可以生成沒錯, 軌跡也有自動搜尋敵人的功能 但是為什麼子彈就是會一直橫的去找敵人飛機啊Q_Q 就是跟一開始模型的rotation一樣 不管我Prefab怎麼設定都沒用... 我試著用this.transform.rotation去改角度, 可是發現越改越亂 不是飛彈自己亂繞就是追蹤功能不對 不知道有沒有前輩能夠指點我一下是我哪邊弄錯了? 或是我該找哪個方向的資料... p.s 我有試著執行遊戲然後再暫停遊戲 去看生成的那些子彈 我想我應該是 物體生成角度 跟 物體本身的角度 搞混了? 因為我看每個飛彈的角度在Y方向加90度就是我要的 可是不知道該在哪邊改這個東西 新手發問 請見諒 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.177.125.175 ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1439014460.A.CFB.html

08/08 14:25, , 1F
再包一層空物件 因為你的物件本身帶角度
08/08 14:25, 1F

08/08 14:28, , 2F
前輩可以在說明詳細點嗎? 我爬網站也有人說包空物件
08/08 14:28, 2F

08/08 14:30, , 3F
但我不太懂這樣是什麼意思 謝謝
08/08 14:30, 3F

08/08 14:32, , 4F
是有一點父物件跟子物件的關係?
08/08 14:32, 4F

08/08 18:16, , 5F
應該類似子 父關係 先創一個empty把子彈丟進去調整試
08/08 18:16, 5F

08/08 18:16, , 6F
試看
08/08 18:16, 6F
文章代碼(AID): #1LnPuypx (GameDesign)
文章代碼(AID): #1LnPuypx (GameDesign)