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

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

はじめに bravememo.hatenablog.com これのURP14版のやり方を紹介します 環境は Unity 2022.2です コード 下記クラスを作成したら前の記事のようにRendererFeatureに登録すれば_CameraTransparentTextureを使用することができます using UnityEngine; using …

【Unity】MaterialのSetBool拡張メソッドを作成する

はじめに MaterialにSetBoolはないみたいなのでSetBoolの拡張メソッドを作成していきます forum.unity.com コード using System.Collections; using UnityEngine; public static class MaterialExtension { public static void SetBool(this Material materi…

【Unity】ShaderGraphでUI用シェーダーを作成する

はじめに Unity2023.2からShaderGraphでUI用シェーダーが作成できるようになったので紹介していきたいと思います 環境は Unity 2023.2です Universal Render Pipeline を使用しています。 やり方 Canvas ShaderGraphを作成することでUI用シェーダーを作成す…

【Unity】ShaderGraphでコメントをつける

はじめに 今回はShaderGraphでコメントつける方法を紹介します 環境は Unity 2023.2です やり方 右クリック→Create Sticky Noteを選択することでコメントが書けるNoteが生成されます ここにコメントを書くことができます Noteを右クリックすることで文字の大…

【Unity】VFXGraphでTimeScaleの影響を受けないようにする

はじめに 今回はVFXGraphでTimeScaleの影響を受けないようにする方法を紹介します 環境は Unity 2022.3です やり方 VisualEffectAsset内にあるIgonreTimeScaleをオンにするとそのエフェクトはTimeScaleの影響を受けなくなります 個別のエフェクトをスローさ…

【Unity】VFXGraphでスクリプトからスロー再生させる

はじめに playRateを使用することでエフェクトの再生速度を変えることができます コード エフェクトを0.5倍速するテストコードです using System.Collections; using UnityEngine; using UnityEngine.VFX; public class TestScene : MonoBehaviour { public …

【Unity】すべての子や孫から指定した名前のオブジェクトを取得する拡張メソッド

はじめに Transform.Findだと子のオブジェクトしか検索できないのですべての子や孫から指定した名前のオブジェクトを取得する拡張メソッドを作成していきます コード using System.Collections; using System.Collections.Generic; using UnityEngine; using…

【Unity】Publicな変数を編集できないようにするCustom Attributeを作成する

はじめに Publicな変数を編集できないようにするReadOnlyなCustom Attributeを作成します スクリプト using UnityEngine; using UnityEditor; public class ReadOnlyAttribute : PropertyAttribute { } [CustomPropertyDrawer(typeof(ReadOnlyAttribute))] p…

【Unity】ShaderGraphでグローバル変数を使用する

はじめに 今回はShaderGraphでグローバル変数を使用する方法を紹介していきます。 環境はUnity 2022.3です Universal Render Pipeline を使用しています。 やり方 スクリプト側でグローバル変数を設定します using System.Collections; using System.Collect…

【Unity】指定したパス内にあるテクスチャのパスをすべて取得する

はじめに 今回は指定しパス内にあるテクスチャのパスをすべて取得する方法を紹介します 環境は Unity 2021.3.25f1です コード Directory.GetFilesでパス内にあるファイルを取得できるのでそれを活用します using System.Collections; using System.Collectio…

【Unity】VFXEventAttributeとcustom spawner blockを使用してスクリプトの値をVFXGraph内で使用する

はじめに スクリプトの値をVFXGraph内で使用する方法を紹介します 環境は Unity 2022.3.1です コード custom spawner block内にあるVFXSpawnerStateのvfxEventAttributeでSet○○を呼ぶことでCustoumAttributeの値をセットすることができます パラメーター名は…

【Unity】VFXGraphでパーティクルをGameObjectに追従させないようにする

はじめに 今回はVFXGraphでパーティクルをGameObjectに追従させないようにする設定方法を紹介します 初期設定だとすべてのパーティクルが追従してしまう 環境は Unity 2022.3.1です 追従させないようにする SpaceをWordに設定させます これで追従しないよう…

【Unity】VFXGraphでShaderGraphを使用する

はじめに 今回はVFXGraphでShaderGraphを使用する方法を紹介します バージョンごとにやり方が違うのでそれぞれ紹介します ShaderGraph側の設定 Graph SettingsからSupport VFX Graphを有効にします 参考 docs.unity3d.com VFXGraphでShaderGraphを使用できる…

【Unity】VFXGraphで使用できる自作ブロック (custom spawner block)を作成する

はじめに 今回はVFXGraphで使用できる自作ブロック (custom spawner block)を作成する方法を紹介します 環境は Unity 2022.3.1f1です 作成方法 VFXSpawnerCallbacksクラスを継承することでCustom spawner blockを作成することができます using System.Collec…

【Unity】ShaderGraphでオブジェクトを回転させるシェーダーを作成する

はじめに 今回はオブジェクトを回転させるシェーダーを作成していきます。 環境は Unity 2022.3.です Universal Render Pipeline を使用しています。 ノード作成 頂点シェーダーでRotate About Axis ノードを使用することで特定の軸で回転させることができま…

【Unity】VFXGraphを最初から再生する拡張メソッド

はじめに 今回はVFXGraphを最初から再生する拡張メソッドを作成していきます。 環境は Unity 2021.3.25f1です コード using System.Collections; using UnityEngine; using UnityEngine.VFX; /// <summary> /// VFXGraphの拡張メソッド /// </summary> public static class Visu…

【Unity】指定した型の公開しているVFXGraphのプロパティを取得する

はじめに 指定した型の公開しているVFXGraphのプロパティを一括で取得する方法を紹介します。 環境は Unity 2021.3.25f1です スクリプト作成 visualEffectAssetクラスのGetExposedPropertiesですべてのプロパティを取得できます。 docs.unity3d.com using Sy…

【Unity】ShaderGraphで点滅させるシェーダーを作成する

はじめに 今回は点滅させるシェーダーを作成していきます。 環境は Unity 2022.3です Universal Render Pipeline を使用しています。 ノード作成 点滅させるやり方としてFractionノード使用することが多いですがWaveノードを使用しても実現できます ざっくり…

【Unity】エディタでUnityにログインしているかの確認方法

Unity 2020の確認方法 エディタ右上で確認できます Unity 2021の確認方法 エディタ左上で確認できます

【Unity】作成したInputActionをGetKeyDownみたいに使用する

はじめに 作成したInputActionの使用方法がコールバックを登録する使い方しか出てこずif(GetKeyDown~みたいに使用する方法がみつからなかったのでメモ 環境は Unity 2021.3.25f1です スクリプト作成 actionsから指定したInputActionを取得できるのでそれを…

【Unity】Graphic.canvasでは非アクティブなCanvasを取得しない

はじめに 環境は Unity 2021.3.25f1です Graphic.canvasでは非アクティブなCanvasを取得しない Graphic.canvasはGetComponentsInParent(false)で検索、取得するので非アクティブなCanvasは取得できないみたいです。 using UnityEngine; using UnityEngine.UI…

【Unity】ShaderGraphでTextureを作成できるShaderGraphBakerの紹介

はじめに 今回はShaderGraphでTextureを作成できるShaderGraphBakerの紹介していきます。 環境は Unity 2021.3.25f1です Universal Render Pipeline を使用しています。 インストール まず最初にAdd package from git URL...で下記の2つを追加します URL : c…

【Unity】Timelineの自作Makerをエディタ時も実行されるようにする

はじめに 今回はTimelineの自作Makerをエディタ時も実行する方法を紹介していきます。 環境は Unity 2021.3.25f1です Universal Render Pipeline を使用しています。 ノード作成 INotificationOptionProviderのTriggerInEditMode(ビット演算)を有効にすると…

【Unity】ShaderGraphでノード整理するための小技「RedirectNode」の紹介

はじめに 今回はRedirectNodeの紹介をしていきます 環境は Unity 2021.3.25f1です Universal Render Pipeline を使用しています。 やり方 線に対してダブルクリック、または右クリック→Add RedirectNodeを選択することで使用できます 線に対して中継地点を持…

【Unity】ShaderGraphで作成したUnlitシェーダーにFogを適用させる

はじめに ShaderGraphで作成したUnlitシェーダーはUnity標準のFogが適用されてないので適用させる方法を紹介します Fogが適用されてない。LitだとFogは適用されます 環境は Unity 2021.3.25f1です Universal Render Pipeline を使用しています。 ノード作成 …

【Unity】ShaderGraphのTexture2DプロパティからTilingとOfsetを設定する

Unity 2020まではTilingとOfsetをプロパティにする場合以下のように組む必要があります Unity 2021(Shadergraph12.0)からはTexture2Dプロパティ内にあるUse Tiling and Ofsetを使用するとTexture2Dプロパティ単体でTilingとOfsetも外部に公開してくれるよう…

【Unity】ShaderGraphでNormalMapの強度を変更する

はじめに 今回はShaderGraphでNormalMapの強度を変更する方法を紹介していきます 環境は Unity 2021.3.25f1です Universal Render Pipeline を使用しています。 ノード作成 NormalMapの強度はNormal Strength ノードで変更できます 完成 ランキング参加中Uni…

【Unity】Animationを最初から再生する拡張メソッド

はじめに 今回は画】Animationを最初から再生する拡張メソッドを作成していきます。 環境は Unity 2021.3.25f1です コード using System.Collections; using UnityEngine; /// <summary> /// アニメーションの拡張メソッド /// </summary> public static class AnimationExtensi…

【Unity】Cinemachineで作成したLookatが異なるカメラを遷移させたときに回転の遷移がおかしくなる時の対処法

はじめに 今回はCinemachineで作成したLookatが異なるカメラを遷移させたときに回転の繊維がおかしくなる時の対処法を紹介していきます 下記画像みたいにきれいに遷移してくれないことがある 環境は Unity 2021.3.25f1です Universal Render Pipeline を使用…

【Unity】Localizationを使用して言語を切り替えたけどテキストが変わらなかったときに確認するところ

はじめに 今回は】Localizationを使用して言語を切り替えたけどテキストが変わらなかったときに確認するところを紹介します 環境は Unity 2021.3.25f1です Localize String Eventを使用した場合 Update Stringが設定されてることを確認してください GetLocal…