【Unity】レイの当たった場所を掴む
アイテムにつけたスクリプトに、レイの当たった場所を掴んで動かす処理を書いてみました。 まずクリックした時に呼ぶアイテムのメソッドの引数に、レイの当たった位置を渡して、アイテムではそれをローカル空間に変換します。メソッドを… 続きを読む »
アイテムにつけたスクリプトに、レイの当たった場所を掴んで動かす処理を書いてみました。 まずクリックした時に呼ぶアイテムのメソッドの引数に、レイの当たった位置を渡して、アイテムではそれをローカル空間に変換します。メソッドを… 続きを読む »
Rigidbodyとジョイントを付けた机の引き出しや扉にLODグループコンポーネントを設定してみました。 頂点数の違う机を用意して、LODグループで近くでは詳細な机を、遠くでは二段階でシンプルな机を表示し、最後は机が表示… 続きを読む »
ドアをスムーズに開閉させてみます。ドアを掴んでいる間はプレイヤーのカメラをロックして、マウスドラッグでドアを開閉しています。 x = CrossPlatformInputManager.GetAxis(“Mouse X”… 続きを読む »
摩擦を設定して、引き戸の動きをもう少しリアルにしてみます。 Configurable Jointを付けて移動制限をして、両側に壁を置いただけでは、勢い良く閉めたときのバウンドの大きさが気になります。 また、少し引き戸を動… 続きを読む »
左クリックを押している間はアイテムを持ち上げて、右クリックを押すと視線方向にそのアイテムを投げます。 前の記事のスクリプトのアイテムを移動させる箇所に投げる処理を追記します。 // アイテムを移動させる else if … 続きを読む »
一人称視点でオブジェクトを掴んで移動させます。掴んでいる間も、物理演算で他のアイテムや床と衝突するようにします。 前のスクリプトに追記して、近くでアイテムにレイがあたっているときにマウスの左クリックをすると、アイテムを掴… 続きを読む »
他のオブジェクトの表面に沿ってオブジェクトを移動させるスクリプトを変更して、物を持ち上げたり置いたりできるようにします。 using System.Collections; using System.Collection… 続きを読む »
立っているピンを持ち上げている間に、倒れたピンを払いのけます。 まずBlenderでレーンに合わせてバーのようなものを作ってUnityに持ってきました。 バーが上がるアニメーションと、そこから下がって前面に来るアニメーシ… 続きを読む »
倒れていないピンを持ち上げる部分を作ります。 Cubeがアニメーションで下まで動いたら、ピンをCubeの子オブジェクトにして、Cubeが上下に動くアニメーションに合わせてピンも動くようにします。 using System… 続きを読む »
Unityでボーリングゲームを作ります。 スタンダードアセットのFPSコントローラから玉を投げます。プレイヤーの進む方向へ、プレイヤーが早く動いているほど強く玉を投げてみます。 玉のプレハブを作ります。 コライダーのRi… 続きを読む »
Unityでグレネードを投げる #1 爆発させて周りのオブジェクトを吹き飛ばす Rigidbody.AddExplosionForceを使って、手榴弾を作ってみます。前の記事では、常にシーンの中心で爆破させていましたが、… 続きを読む »
Unityでは爆発を表現できる関数が用意されているので使ってみます。 https://docs.unity3d.com/jp/460/ScriptReference/Rigidbody.AddExplosionForce… 続きを読む »
頭を撃つとゾンビが真下に崩れ落ちます。 このままだと倒れ方が不自然なので、銃弾がゾンビに当たったときの力を保存しておいて、ラグドールが生成されたときに、ラグドールの頭にその力を加えることで撃たれた方向や位置によって倒れ方… 続きを読む »
Blenderで作った地球儀のモデルを部位ごとにバラバラに壊してみます。 一つのオブジェクトになっているので、まずBlenderで複数のオブジェクトに分割していきます。 Edit Modeで切り離したい部分だけを選択しま… 続きを読む »
小さなCube同士をジョイントでつなげて、銃で撃つと壊れる大きなCubeを作ります。 まず小さいCubeをジョイントでつなげてみます。 どちらもBoxコライダーとRigidbodyが付いています。 白いCubeは落下せず… 続きを読む »
銃弾を連射するにはコルーチンを使います。 private IEnumerator Shoot() { while (true) { yield return new WaitForSeconds(rate); Insta… 続きを読む »
カーリングの的の画像をペイントソフトで適当に作ってマテリアルに設定しました。この的は「ハウス」と呼ばれます。 ハウスの近くにストーンがあって、そのストーンが動いているときだけ、上から見下ろすようなカメラに切り替えてみます… 続きを読む »
ストーンを複数発射できるようにします。 まずストーンをプレハブ化して、どれかのキーを押すとストーンのインスタンスを作ります。 ストーンのプレハブにスクリプトを付けました。 using System.Collections… 続きを読む »
ナビメッシュエージェントは専用のコンポーネントを取り付けて、目的地の座標に向かって動かすので、Rigidbodyをつけたときは、isKinematicのチェックをオンにして、物理的に動かせないようにしておかないといけませ… 続きを読む »
一人称視点で銃を撃つ銃を撃ってみます。 スタンダードアセットのFPSコントローラをシーンに配置します。 FPSコントローラには頭にカメラが付いています。 このカメラに新しいスクリプトを付けます。 MainCameraは無… 続きを読む »