【Unity】HDRPでカスタムポストプロセスを使う
HDRPでカスタムポストプロセスを使って画面をグレイスケールにしてみました。 まず、Projectウィンドウで右クリックから、Post Process Volumeとシェーダーを新規作成します。 シェーダーのCustom… 続きを読む »
HDRPでカスタムポストプロセスを使って画面をグレイスケールにしてみました。 まず、Projectウィンドウで右クリックから、Post Process Volumeとシェーダーを新規作成します。 シェーダーのCustom… 続きを読む »
参照型の場合、変数の寿命ではなくガベージコレクタによってメモリが回収されます。このガベージコレクションのために一瞬動作が遅くなることがあります。 そこで、このメモリの確保のときに発生するGC Allocをプロファイラーで… 続きを読む »
ビルドしたゲームをプロファイラーに接続してパフォーマンスを計測してみました。 まずEdit > Project Settings… > Resolution and PresentationのRun In B… 続きを読む »
How to profile and optimize a game | Unite Now 2020を参考にプロファイラーを使ってパフォーマンスをチェックしてみました。 まず、パフォーマンスに影響を与えるのは、FPSと… 続きを読む »
ゲームビューのヘッダーの右の方にあるStatsをオンにすると、シーンで描画されるポリゴン数を含む統計情報が表示されます。これらは変動します。 また、FBXファイルの中にあるメッシュを選択すると、インスペクタにそのメッシュ… 続きを読む »
Unityのオーディオミキサーを使ってみました。 オーディオミキサーはProjectウィンドウで右クリックから新規作成できます。 作られたオーディオミキサーをダブルクリックすると、Audio Mixerウィンドウが開きま… 続きを読む »
デフォルトでは、シーンの読み込みと同時にオーディオデータもロードされますが、スクリプトで好きなタイミングにロードやアンロードができるようにしてみました。 オーディオファイルをインポートして、オーディオクリップのインスペク… 続きを読む »
FPSプレイヤーが顔を傾けたりしゃがんだりしているときに、懐中電灯の位置も同じように変えてみました。 懐中電灯として使うスポットライトは、ピボットである空のゲームオブジェクトの子になっています。カメラの動きに少し遅れてつ… 続きを読む »
今までは同じメッシュのオブジェクトに別のコンポーネントやタグなどが付いていた場合に、それをプレハブ化しておいて、置き換えるようにしていましたが、同じオブジェクトにコンポーネント等を追加、削除するようにしてみました。 もと… 続きを読む »
HDRPのライトの強さをスクリプトで変更してみました。 HDRPのライトの単位は、タイプによって様々です。例えばポイントライトには4つの単位があります。 インスペクタで600ルーメンに設定して、スクリプトでIntensi… 続きを読む »
光が漏れる部屋の外側にライトプローブを配置してみました。 ライトプローブはライトの変化するところに置くのが良いそうなので、漏れている光の周りに適当に配置してキャラを歩かせました。 すると、場所によっては漏れている光の外側… 続きを読む »
真っ暗な部屋に小さなライトを置いてみました。ライトはBakedに設定されているので直接光もベイクされます。 このライトプローブの効果を、同じようにCubeにLight Probe Proxy Volumeを付けて確認して… 続きを読む »
ライトプローブを配置してライトマップをベイクしたあとに、ライトプローブからどのような光を受けるかをシーンビューで確認してみました。 そのために、Cubeを新規作成して、敵などと同じ大きさになるようにスケールを調節して、L… 続きを読む »
メッシュをカットする #1の方法でドラッグアンドドロップで作ったPlaneの表側と裏側でメッシュをカットしてみました。 そのために新しいメッシュの頂点と三角形の配列を2つずつ作ります。頂点の配列には頂点の位置が、三角形の… 続きを読む »
ドラッグアンドドロップでメッシュをカットしてみます。そのために今回はドラグアンドドロップしたところを境界にして、メッシュの頂点カラーを変えてみました。 まず、クリックとドロップした場所のスクリーン上のマウス位置と、その中… 続きを読む »
メニューを開いてマウスカーソルを表示するときは、FPSキャラクターの移動や回転を制限したいですが、リーンでカメラを横に傾けたままメニューを開いたときにカメラが傾いたまま止まってしまいます。 そこで、マウスカーソルを動かし… 続きを読む »
違うフロアにいるとき等にナビメッシュエージェントの目的地にプレイヤーの位置を毎フレーム設定すると、エージェントの移動がカクついてスムーズにプレイヤーを追尾しません。 毎フレーム目的地を入れて、経路が変わることが原因でしょ… 続きを読む »
VFXグラフで勢いよく吹き出す血しぶきを作ってみました。 まず、速度を設定した後に、XZ方向とY方向に別々の値をかけて、上方向の速度と広がりを設定できるようにします。 はじめは、Set Velocity Randomブロ… 続きを読む »
建物の床などナビメッシュが上下に重なってしまうところでは、プレイヤーがいる階のナビメッシュ上の点がただしく取れないときがあるので、階を判別して目的地を探す方法を変えてみました。 まず、階ごとに別々のエリアを設定します。 … 続きを読む »
電球などの明かりを作る時は、エミッションさせたモデルの中にポイントライト等を起きますが、電球のオブジェクトのメッシュレンダラーでContribute Global Illuminationのチェックを入れていると、中の光… 続きを読む »