【Unity】レバーで機械をオンオフする

レバーを使って機械をオンオフしてみます。 まずレバーを作ってHingeジョイントを付けます。レバーの根本で、レバーの回転に垂直な方向に軸を設定しました。レバーが元の位置に戻るようにSpringを使います。また、Limit… 続きを読む »

【Unity】C#スクリプトでテクスチャの色を変更する #1

プレイ中にマウスでクリックした場所のテクスチャの色を変更してみます。 まずシーン上のPlaneオブジェクトのマテリアルに設定するテクスチャをスクリプトで新規作成して、白く塗りました。 [SerializeField] G… 続きを読む »

【Unity】FPSキャラのカメラを横に傾ける #1

曲がり角から覗き見るように、一人称視点のプレイヤーのカメラを横に傾けます。今回はカメラの回転だけをやってみました。 Qキーで左、Eキーで右にリーンします。FPSコントローラーでカメラの回転をMouseLookクラスのLo… 続きを読む »

【Unity】マウスドラッグでバルブを回す

マウスカーソルをくるくると円形にドラッグして、バルブのオブジェクトを回してみます。 まずバルブにコライダーとリジッドボディ、ヒンジジョイントを付けます。リジッドボディのAngular Dragで抵抗を設定します。 ヒンジ… 続きを読む »

【Unity】GIMPでMask Mapを作る

UnityのMask Mapを作ってみました。 マスクマップでは、テクスチャのR,G,B,A値をそれぞれ、メタリック、アンビエントオクルージョン、ディテールマスク、スムーズネスに使います。 今回は各値を別々に設定して統合… 続きを読む »

【Unity】机の引き出しにLODグループを設定する

Rigidbodyとジョイントを付けた机の引き出しや扉にLODグループコンポーネントを設定してみました。 頂点数の違う机を用意して、LODグループで近くでは詳細な机を、遠くでは二段階でシンプルな机を表示し、最後は机が表示… 続きを読む »

【Unity】FPSで武器を切り替える

FPSキャラの手を引っ込めたり、持たせる武器を切り替えてみます。 まず前の記事と同様に、ナイフやライターを取り出すアニメーションやライターの火を付けるアニメーション等を作りました。 これらをUnityに持っていって、アニ… 続きを読む »

【Unity】FPSで歩きに合わせて手元を揺れ動かす

一人称視点で歩いているときに足のステップに合わせて手元を小刻みに動かしてみます。 スタンダードアセットには、キャラクターが歩くのに合わせてカメラを上下左右に揺れ動かすためのCurveControlledBobクラスがある… 続きを読む »

【Unity】FPSで手に持った武器で攻撃する #1

一人称視点で手に持った武器で攻撃してみます。 まずBlenderで右腕のモデルにボーンを付けました。 これに前の記事の方法でナイフを持たせてアニメーションを作ります。 今回は、呼吸とともに腕がかすかに上下するアニメーショ… 続きを読む »

【Unity】オブジェクトを隙間なく並べる

頂点スナップ等を使ってオブジェクトを隙間なく並べてみます。 移動ツールとトランスフォームが有効になっていて、オブジェクトを選択してVキーを押している間は頂点スナップモードに切り替わります。 頂点スナップモードでは、シーン… 続きを読む »

【Unity】一人称キャラの手を作る

一人称キャラの手元を作って、カメラの動きに少し遅れてついてくるようにしてみます。 まず、人型のモデルの腕以外を削除して、ボーンを付けて、懐中電灯をもたせました。 今回はこの状態で固定して、ボーンを削除してUnityに持っ… 続きを読む »

【Unity】開閉中のドアにぶつかると自動で後ろに下がる

ドアを開閉中にドアがプレイヤーに当たると、キー入力がなくても自動でプレイヤーを後ろに移動させます。 ドアの開閉中はプレイヤーの移動や回転をロックしているので、ドアが引っかかると一旦ドアの開閉をやめてプレイヤーを移動させて… 続きを読む »

【Unity】ジョイントで引き戸を作る #2 摩擦を設定する

摩擦を設定して、引き戸の動きをもう少しリアルにしてみます。 Configurable Jointを付けて移動制限をして、両側に壁を置いただけでは、勢い良く閉めたときのバウンドの大きさが気になります。 また、少し引き戸を動… 続きを読む »