2024-01-01から1年間の記事一覧

【Unity】ShaderGraphで使用できる半透明オブジェクト含む背景テクスチャ_CameraTransparentTextureを作成、表示できるパスを追加する(RenderGraph版)

はじめに bravememo.hatenablog.com これのRenderGraph版のやり方を紹介します 環境は Unity 6.0.0b12です コード using UnityEngine; using UnityEngine.Rendering.Universal; using UnityEngine.Rendering; using UnityEngine.Rendering.RenderGraphModule…

【Unity】Input Systemで毎フレームなにかしらのInputActionを行う

はじめに 環境 unity 2021.3 コード InputTestFixtureの中身をunity test frameworkを使用しない形に置き換えたものです 入力実行の流れとしてはInputEventPtr作成→InputSystem.Queueに積む→ InputSystem.Update()で入力実行になります using System; using …

【Unity】エディタ拡張 : Toggleの表示をボタン風にする

やり方 EditorStyles.miniButtonを使用することで表示をボタン風にできます using UnityEditor; using UnityEngine; public class TestEditWindow : EditorWindow { private bool isOn = true; [MenuItem("Tools/テストウィンドウ")] public static void Ope…

【Unity】数値を1kみたい省略した表記に変換する

コード using UnityEngine; public static class MathUtility { /// <summary> /// 桁数を取得 /// </summary> /// <param name="num"></param> /// <returns></returns> public static int Digit(ulong num) { System.Text.StringBuilder Sb = new System.Text.StringBuilder(); Sb.Append(num); return Sb.Length; } ///

【Unity】モデルの頂点カラーや法線を確認する

モデルのメッシュをクリックして下記場所で確認できる

【Unity】グラデーションパラメータをHDRに対応させる

やりかた GradientUsageを使用することでHDRカラーに対応させることが出来ます docs.unity3d.com using UnityEngine; public class ExampleScript : MonoBehaviour { //trueにするとHDRカラー //ColorSpaceを変更することで色空間をガンマかリニアに変えるこ…

【Unity】ProfilerのHighlights使用してGPU負荷を確認する

Unity2023.2から追加されたHighlightsを使用することでGPUの負荷を確認することが出来ます 参考 docs.unity3d.com

【Unity】shurikenエフェクトを最初から再生する

Clearを呼ぶことで再生状況をリセットできます using System.Collections; using System.Collections.Generic; using UnityEngine; /// <summary> /// Shurikenエフェクト /// </summary> public class TestEffectObject : MonoBehaviour { [SerializeField] ParticleSystem eff…

【Unity】TerainのCollisionをOnにしておかないと塗れない

Terain ColliderをONにしておかないと木の配置等できないので注意する必要があります 処理負荷の軽減のためにOFFにしてたらハマったのでメモ

【Unity】VFXGraphを途中から再生する

Simulateを使用すると途中から再生することができます docs.unity3d.com using UnityEngine; using UnityEngine.VFX; public class Test : MonoBehaviour { public VisualEffect effect; // Update is called once per frame void Update() { if(Input.GetKe…

【Unity】値を正規化する

0~100の間で10だったら0.1を返して欲しいとき等特定の値が指定した範囲のどこにあるか調べるとき使用する コード public float NormalizeValue(float value,float min, float max) { var output = 0.0f; output = (value - min) / (max - min); return Math…

【Unity】VFXgraphのInstancingを設定して大量に配置できるようにする

はじめに 環境はUnity 2023.2です やり方 VFXgraphを大量に配置するとFPSがかなり低下します 下記画像は1000個生成したときのものです。FPSが40前後になってます VisualEffectAssetファイルのInstancing設定をCustom batch capacityかAutomatic batch capaci…