Oops! It appears that you have disabled your Javascript. In order for you to see this page as it is meant to appear, we ask that you please re-enable your Javascript!

unity

unityでキー入力で攻撃する方法(3分以内にできます)

投稿日:

Pocket

うも、チャーさんです。

 

あなたはunityでキー入力による攻撃を

したいですか?

 

この記事ではunityでキー入力で攻撃を

する方法を書いてますので、あなたがこれを読めば、

キー入力で攻撃ができるようになります。

 

 

なので、unityでキー入力したら攻撃

というようなものを作りたい場合、

このまま読んでみてください。

 

 

スポンサードサーチ

unityでキー入力による攻撃をするには

 

で結論からですが、

unityでキー入力で攻撃するには、

 

if文

Input.GetKey()関数

攻撃の記述

 

この3つだけで可能です。

 

 

これだけだとイメージ湧きづらいと

思うので参考として具体的なコード出します。

 

コード例は以下です。

 

if (Input.GetKeyDown (KeyCode.A)) {

ここに攻撃の記述;

}

これだけでキー入力での攻撃は可能です。

 

 

あとは上記コードをupdate関数の中に書きましょう。

void Update () {

 if (Input.GetKeyDown (KeyCode.A)) {

  ここに攻撃の記述;

  }

}

 

でこれでunityでキー入力により攻撃

できる理由ですが、コードの解説とともに

説明していきます。

 

 

Input.Getkey()でキー入力を扱おう

 

まず本記事のメイン内容に関わるのが、

Input.GetKey()関数です。

 

例で出したコードでいうと以下の部分です。

Input.GetKeyDown (KeyCode.A)

 

このInputというのはキー入力を扱うものです。

(unityではキー入力に関する機能はもう関数が

用意されてるので特に難しいことをしなくてokです。)

 

 

なのでunityでキー入力で攻撃したい場合、

このInputを使えばできます。

 

GetKeyDownとは

 

でここからもう少し説明なのですが、

ドットで繋がってるGetKeyDownというのは、

キーボードのキーが押されたら、

 

という意味になります。

 

 

GetKeyDownの引数でキー判定

 

そしてGetKeyDownの後ろの()の引数の部分ですが、

例 Input.GetKeyDown (KeyCode.A)

 

この()の中のKeyCode.の後ろの部分が、

どのキーボードを押したらという意味になります。

 

 

例えば上記の(KeyCode.A)だと、

キーボードのAを押せば、という意味になりますし、

 

(KeyCode.S)であればキーボードのSを押せば

という意味になります。

 

なので攻撃に割り当てたいキーをこのKeyCode.の

後に書けばいいでしょう。

 

 

ちなみにInput.GetKey()にはこの記事で紹介した

GetKeyDown以外に他にも色々種類がありますが、

普通に攻撃するだけならGetKeyDownで十分です。

 

色々キー入力に幅をもたせたい場合、

Unity Input GetKeyあたりで調べると出てきます、

なので参考までに。

 

if文と攻撃の記述で完成させよう

 

で話に戻りますが、

あとは、キー入力されたら攻撃なので、

if文の()の条件文の中に入れてやります。

 

if (Input.GetKeyDown (KeyCode.A)) {

  ここに攻撃の記述;

  }

 

上記記述だともしキーボードのAが押されたら、

{}内の記述を実行する、という意味になります。

 

 

であとはあなたがやりたい攻撃記述を

if文の{}の中に書けばOKです。

 

一番簡単に攻撃したのがわかりやすいのは、

Debug.Log(“攻撃した”);

などと記述するのがわかりやすいです。

 

if (Input.GetKeyDown (KeyCode.A)) {

  Debug.Log(“攻撃した”);

  }

 

 

するとキーボードのAを押すと、

攻撃した、とデバッグの画面に表示される

ようになります。

 

デバッグ画面の位置は画面左下

 

ちなみにデバッグの画面は、

unityで画面レイアウトかえてない場合、

画面の下の左(画面枠部分)に表示されます。

 

なのでそこをみると良いです。

ちなみにそこをクリックするとデバッグの画面が

少し大きくなって表示されます。(見やすいです)

 

 

という感じで、攻撃の記述を書けば、

攻撃が可能になります。

 

で、とりあえずキー入力で攻撃

はこれで完成なのですが、

 

 

応用したければアニメーションをつけよう

 

あとはここから応用に入り、

実際にプレイヤーオブジェクトに

攻撃のアニメーションをさせたりすれば、

 

キー入力で実際にプレイヤーが攻撃アニメーションを

してくれて動いてくれるので、

よりゲームっぽくなって面白いでしょう。

 

 

本記事はキー入力で攻撃までなので

アニメーションは割愛しますが、

キー入力で攻撃アニメーションもできるので、

 

知っとくとゲーム作るなら役立つでしょう。

 

 

スポンサードサーチ

unityでキー入力による攻撃までの手順

 

ということでunityでキー入力による

攻撃の説明はしたのでここからは手順だけ

書いときます。

 

わかる人は飛ばしてokです。

 

オブジェクトを用意する

 

で、まずはオブジェクトを用意しましょう。

 

スクリプトをはる

 

次にそのオブジェクトにスクリプトを貼りましょう。

 

Add Componentからやればokです。

 

記述をかく

 

であとは、本記事で紹介した、

記述をupdate関数内に書きましょう。

 

以下の感じ 例

 

void Update () {

 if (Input.GetKeyDown (KeyCode.A)) {

  Debug.Log(“攻撃した”);

  }

}

 

テストする

 

あとは、再生ボタンを押して、

実際にキー入力して動くか試しましょう。

 

動いたらokです。

 

スポンサードサーチ

まとめ

 

ということでまとめです。

 

 

unityでキー入力による攻撃をしたい場合は、

 

if文

Input()関数

攻撃の記述

 

この3つを書きましょう。

 

そうすればunityでキー入力で攻撃できます。

 

 

キー入力して攻撃はゲームで必須なので

この記事を参考にして試してみてください。

 

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

 

チャーさん

 

 

 

 

-unity

スポンサードサーチ

関連記事

no image

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

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

no image

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

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

no image

blenderで作ったモデルをunityにインポートする方法「簡単です」

どうも、チャーさんです。   あなたはblenderで作ったものを、 unityで表示(インポート)したいと、 思っていませんか?   この記事では、あなたが作ったblenderの …

no image

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

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

no image

unityでオブジェクトを移動させたい人は読んでください。

どうも、チャーさんです。   あなたはunityでオブジェクトや、 プレイヤーなど自由自在に移動させたい、 そう思っていませんか?     キーボードの上下左右の矢印ボタ …

no image

unityで敵を移動させる方法(詳細にわかりやすく説明します)

どうも、チャーさんです。   あなたはunityで敵を移動させたい、 そう思っていませんか?   コライダーなどでもできるが、他の方法が ないかと探してませんか?   & …

no image

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

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

no image

unityで攻撃に当たり判定をつける方法

どうも、チャーさんです。 あなたはunityで攻撃に当たり判定をつけたいですか?   この記事では、当たり判定をつける 方法を書いてるので、読めば当たり判定をつけれます。   とい …

no image

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

どうも大石です。   あなたはunityで弾を発射するときの向き をコントロールしたいと思っていませんか?   この記事を読めば、あなたはunityで 弾を敵に向かって発射させれる …

no image

unityでボタンクリックで他のオブジェクトの色を変更するスクリプト

どうも大石です。   あなたはunityでボタンをクリックしたら、 他のオブジェクトの色を変更するという スクリプトを書きたいですか?     この記事を読めば、あなたは …

no image

unityでのダンジョンの簡単な作り方(コードコピペで作れます)

どうも、チャーさんです。   あなたは、unityでダンジョンを作りたいと 思っていませんか?   この記事ではunityでのダンジョンの作り方を 説明してまして、本記事を読めば …

no image

unityでprefabを複製する(スクリプトで)方法

どうも、大石です。 あなたはunityでprefabをスクリプトで複製 したいですか?   この記事を読めば、あなたはprefabをスクリプトで 複製できるようになります。   な …

no image

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

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

no image

unityで動く床にのるとオブジェクトが滑る場合の解決法

どうも、大石です。   unityで動く床を作ったのに オブジェクトが上に乗ると滑って 一緒に付いて行かずに落ちる、、   みたいなことで悩んでますか?     …

no image

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

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

最新記事

チャーさん

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

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

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