unity

unityで弾の発射の向きを敵に向ける方法(自動)

投稿日:

Pocket

うも大石です。

 

あなたはunityで弾を発射するときの向き

をコントロールしたいと思っていませんか?

 

この記事を読めば、あなたはunityで

弾を敵に向かって発射させれるようになります。

 

 

イメージとしては発射台が敵の方に向き、

弾を発射してくれるとう感じです。

 

ということで敵がいる向きに弾を発射させたい

なら読んでみてください。

 

 

スポンサードサーチ

unityで弾の発射の向きを敵に向ける方法

 

で結論ですが、

 

向きをコントロールするには、

transform.LookAt()関数と、

transform.forwardを使えば可能です。

 

transform.LookAt()関数とは、

オブジェクトが、指定したオブジェクトの

方向を向くようになる関数です。

 

 

この関数を使うと、

 

同時に合わせてベクトル

(オブジェクトをクリックした時にでる、

赤と緑と青の矢印のやつ(x,y,zの軸))も動き、

 

z軸が指定したオブジェクトの方を向きます。

 

 

赤いキューブを発射台に見立ててまして、

灰色キューブが敵です。

ベクトルが敵の方を向いてますね。

 

でtransform.forwardとは、

オブジェクトのz軸に向かって進むという

記述です。

 

 

なので例えばこの記述を使い弾をInstantiateし、

発射するとz軸方向に弾が飛んでいきます。

 

上記で出した画像でいうと、敵に向かって弾が発射され

飛んでいきます。

 

 

ということで、この2つを使えば、

 

弾の発射の向きを自動でコントロール

してくれるようになり、

 

敵オブジェクトに向かって、

弾が発射されるという動きになります。

 

 

コード的には弾の方のスクリプトの

update()の中に、

transform.position = transform.position + transform.forward

 

と書けば弾はz軸に向かって進んでくれます。

 

 

また発射台にあたるオブジェクトを用意し、

スクリプトには、

 

if文でキーを押せばInstantiateで弾を発生させる記述と、

transform.LookAt(enemy.transform.position);

 

をupdate()内に書いておけばいいです。

 

 

(前もってGameobject型の変数enemyを宣言し、

敵オブジェクト(弾を打たれる方)を

取得しておきましょう。)

 

 

上記のように設定しておけば、

弾の発射の向きは、常に敵の方に向かう

ようになり、

 

敵に向かって弾が発射されるようになります。

 

 

スポンサードサーチ

まとめ

 

ということでまとめになりますが、

unityで弾の発射の向きをコントロール

したいなら、

 

transform.LookAt()関数と、

transform.forwardを使いましょう。

 

すると敵に向かって弾が発射されるように

なりますよ。

 

 

それでは読んでもらってありがとうございました。

 

大石

 

 

-unity

==========

Unity用の3Dモデルを探してる方、欲しい方ご注目!

自作のUnity用3Dモデルを販売(基本的に無料版あり)してますので、
以下のリンクより一度ご覧ください。

Unity用3Dモデルを見てみる

==========


スポンサードサーチ

関連記事

no image

unityで矢印キーでオブジェクトを移動させるには(3d)

どうも、チャーさんです。 あなたはunityで矢印キーで3dオブジェクトを 移動させたいですか?   この記事では矢印キーによる3dオブジェクトの 移動を実現する方法を書いてるので、 読めば …

no image

unityでオブジェクトを回転させる方法「1分でできます」

どうも、チャーさんです。   あなたはunityでオブジェクトを回転させたいですか?   unityでゲームなど作るとオブジェクトを 回転させたい場面がありますよね。   …

no image

unityで敵を索敵する方法

どうも、大石です。   あなたはunityでプレイヤーが敵を索敵する 機能をつけたいですか?   この記事を読めば、敵を索敵する 機能を簡単に作れますよ。   ということ …

no image

unityでターン制のゲームを作るにはコレを使いましょう

どうも、チャーさんです。 あなたはunityでターン制ゲームを作りたい そう思っていませんか?   この記事ではunityでターン制のゲームを 作る方法を書いています。   なので …

no image

unityでオブジェクトの色をスクリプトから変更する方法

どうも大石です。   この記事ではunityでオブジェクトの色を スクリプトから変更する方法を書いてますので、   この記事を読めばあなたはスクリプトから オブジェクトの色を変更で …

no image

Unityでオブジェクトに重力を1分以内につける方法

  どうも、チャーさん(@chaa___san)です。   あなたはUnityでオブジェクトに重力をつけたいですか?   この記事ではUnityでオブジェクトに、 重力を …

no image

unityで地形を作る方法「初心者でもできるように丁寧に説明してます」

どうも、チャーさんです。   あなたはunityでいい感じの地形を作りたい。 でも、やり方がわからない。と悩んでいませんか?   この記事では、unityで地形を作る方法を、 ステ …

no image

unityでコンポーネントを取得する方法を詳しく解説

どうも、チャーさんです。 あなたはunityでコンポーネントを取得する方法を 探していますか?   この記事ではコンポーネントを取得する方法、 その際の変数宣言の書き方や、 コンポーネント名 …

no image

unityでマウスの座標を取得する方法(超簡単です)

どうも、大石です。   あなたはunityでマウスの座標を取得したい ですか?   この記事を読めば、あなたはすぐに マウスの座標を取得できますよ。   スポンサードサー …

no image

unityアセットの使い方を初心者でもわかるように説明。

  どうも、チャーさんです。   あなたはunityのアセットの使い方が、 わからず困ってませんか?   この記事ではunityのアセットの使い方を、 1から説明してます …

no image

unityでoculus questの開発をしたい方必見!手順まとめました

どうも、チャーさんです。   あなたはunityでoculus questの 開発をしたい、そう思ってませんか?     この記事ではunityでoculus quest …

no image

unityで敵に近づくと追いかけてくるコードとコードの解説記事

どうも、チャーさんです。   あなたはunityで敵に近づくと、 プレイヤーを追いかけてくるという機能を つけたいと思っていませんか?   この記事ではそれを実現するコードと方法や …

no image

unityで他のオブジェクトを取得する方法

どうもチャーさんです。   あなたはunityで他のオブジェクトを 取得したいがわからず困ってますか?   この記事では、unityで他のオブジェクトを 取得する方法を書いてます。 …

no image

unity上でblender作成モデルが透ける時の解決法

どうも、チャーさんです。   あなたはunityにblenderで作ったモデルを 持ってきたものの、面が透ける現象が起こって 困っていませんか?     この記事は、透け …

no image

unityでオブジェクトをスクリプトで削除する方法

どうも、チャーさんです。   あなたはunityでゲームオブジェクトを、 スクリプトなどから削除したいですか?   この記事では、関数を使い、 ゲームオブジェクトを削除する方法を書 …

最新記事

チャーさん

プログラミング・筋トレ・unity系の記事などを書いてます。

大学卒業後→開業→個人事業主7年目ぐらいです。webサイト制作したり、unityでゲーム開発しております。

youtubeもやってまして、主にプログラミング動画とかunity系の動画をあげてるので見てください。