Unityでオブジェクトを撃って壊す
小さなCube同士をジョイントでつなげて、銃で撃つと壊れる大きなCubeを作ります。 まず小さいCubeをジョイントでつなげてみます。 どちらもBoxコライダーとRigidbodyが付いています。 白いCubeは落下せず… 続きを読む »
小さなCube同士をジョイントでつなげて、銃で撃つと壊れる大きなCubeを作ります。 まず小さいCubeをジョイントでつなげてみます。 どちらもBoxコライダーとRigidbodyが付いています。 白いCubeは落下せず… 続きを読む »
右クリックで照準器を覗き込むアニメーションを付けます。 まず銃のオブジェクトを選択して、AnimationウィンドウでCreate New Clip…をクリックし、新規アニメーションの名前を付けて保存します。… 続きを読む »
マウス左クリックを押したときに銃弾の発射が始まりますが、左クリックを押してすぐに離すと、銃を撃つ状態のまま戻らなくなります。 デフォルトの何もしない状態から銃を撃つ状態への遷移の矢印のインスペクタを見てみると、遷移の時間… 続きを読む »
銃弾を連射するにはコルーチンを使います。 private IEnumerator Shoot() { while (true) { yield return new WaitForSeconds(rate); Insta… 続きを読む »
ストーンの底が丸いと滑りにくそうなので、メッシュコライダーの底を平らに変形してみます。 Blenderで底の平らなストーンのメッシュを作ります。 ストーンを作ったときの.blendファイルを開いて、Edit Modeで面… 続きを読む »
今まではCubeをストーンに見立てて使っていて、相手の手番のときは色を変えていました。 public Color color2; —- if (num % 2 == 1) { player = false; GetC… 続きを読む »
銃をリロードするときに、角が透けてしまいます。 カメラに近すぎる部分が切れているようです。 カメラには近面と遠面の間のものしか映らないようになっています。 このクリッピング面の位置はカメラのインスペクタで変更できます。 … 続きを読む »
前の記事でインポートした銃のアセットにはデフォルトでアニメーションが付いています。 銃のアニメーターコンポーネントのControllerをダブルクリックすると、アニメーターコントローラーが表示されます。 Aキーを押すと全… 続きを読む »
リアル銃をFPSコントローラーに持たせて撃ってみます。 アセットストアで銃を検索するとたくさんのアセットが出ます。 無料のものを適当にダウンロード&インポートしてみます。 プレハブから一つ選んでシーンに配置しました。 ス… 続きを読む »
勝敗をテキスト表示して、次のシーンを読み込むまでカウントダウンしてみます。 8個目のストーンが投げられた後、そのストーンの速度が0になるとスコアを計算するためのコライダーとスクリプトが付いたオブジェクトがアクティブになり… 続きを読む »
敵のストーンが自動で発射されるようにします。 まず石のプレハブに付けたスクリプトで、最新の石が動きを止めるとゲームの状態が3になるようにしました。 using System.Collections; using Syst… 続きを読む »
手番によってストーンのマテリアルの色を変えます。 ストーンのプレハブに付けたスクリプトでストーンのRendererコンポーネントを得ます。 using System.Collections; using System.C… 続きを読む »
円(ハウス)の中にあるオブジェクトの情報を、円の中心からの距離が近い順に表示します。 空のゲームオブジェクトを新しく作って、Sphere Colliderを付けます。 Is Triggerにチェックを入れます。 非アクテ… 続きを読む »
カーリングの的の画像をペイントソフトで適当に作ってマテリアルに設定しました。この的は「ハウス」と呼ばれます。 ハウスの近くにストーンがあって、そのストーンが動いているときだけ、上から見下ろすようなカメラに切り替えてみます… 続きを読む »
ストーンを複数発射できるようにします。 まずストーンをプレハブ化して、どれかのキーを押すとストーンのインスタンスを作ります。 ストーンのプレハブにスクリプトを付けました。 using System.Collections… 続きを読む »
マウスドラッグでボールをはじくスクリプトを使って、カーリングゲームを作ってみます。 ストーンを滑らせる細長い氷の競技エリアを「カーリング・シート」と呼ぶそうです。それを模した枠付きの細長いオブジェクトと、ストーン用のCu… 続きを読む »
マウスドラッグでボールをはじくスクリプトを作ります。 まず無限に大きな平面を置きます。これはCubeなどと同じような3DゲームオブジェクトのPlaneとは違います。 参考:https://docs.unity3d.com… 続きを読む »
シーンビューの視点を良いところにもってきて、定点のメインカメラを選択します。 GameObject -> Align With View をクリックするとメインカメラからの視点がシーンビューの視点と同じになります。… 続きを読む »
ナビメッシュエージェントは専用のコンポーネントを取り付けて、目的地の座標に向かって動かすので、Rigidbodyをつけたときは、isKinematicのチェックをオンにして、物理的に動かせないようにしておかないといけませ… 続きを読む »
地面からモグラを出現させて、前の記事の方法で玉を当てるFPSミニゲームを作りました。→3Dモグラ撃ちゲーム シーンの床の下にカプセルを配置して、アニメーションを付けます。 Add PropertyでPositionを追加… 続きを読む »