URP用UnlitShaderテンプレート
前書き
毎回 URP
用の Unlit Shader
を探してたのでメモ。
環境
Universal RP 14.0.8
解決方法
Shader "URP/URPUnlitShaderBasic" { Properties { _MainTex ("Main Texture", 2D) = "white" {} } SubShader { Tags { "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" "IgnoreProjector" = "True" } Pass { HLSLPROGRAM #pragma target 2.0 #pragma vertex vert #pragma fragment frag #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" struct Attributes { float4 positionOS : POSITION; float2 uv : TEXCOORD0; }; struct Varyings { float4 positionHCS : SV_POSITION; float2 uv : TEXCOORD0; }; CBUFFER_START(UnityPerMaterial) sampler2D _MainTex; float4 _MainTex_ST; // (Tiling.x, Tiling.x, Offset.x, Offset.y) float4 _MainTex_TexelSize; // (1/w, 1/h, w, h) CBUFFER_END Varyings vert(Attributes IN) { Varyings OUT; OUT.positionHCS = TransformObjectToHClip(IN.positionOS.xyz); return OUT; } // フラグメントシェーダーの定義。 half4 frag(Varyings IN) : SV_Target { float4 col = tex2D(_MainTex, IN.positionHCS); return col; } ENDHLSL } } }
VFX Graphがカリングされる問題
前書き
Unity でVFX Graph
がオクルージョンカリングで表示されなくなったのでメモ。
環境
Unity2022.3.2f1
Visual Effect Graph 14.0.8
Unity2022.2でAssemblyDefinitionでコンパイルが終わらない問題
環境
Unity 2022.2.5f1
結論:解決せず
Unity 2022.2
のScript Updater
の不具合の可能性が高そうだった。
forum.unity.com
手元のEditor.log
ではコンパイル中の出力後
*** Tundra build failed (2.49 seconds), 2 items updated, 1408 evaluated
と出力されていたが、以降のログはなし。
最後に
依存解決のためにAssemblyDefinitionを数珠つなぎ的に解決してたのに詰んでしまった。
GitHubでContributorを消す方法
WindowsでminicondaとJupyterを導入する方法
前書き
miniconda と Jupyter を入れるときのメモです。
導入方法
コンソールを開く
Anaconda Prompt (miniconda3)
を開く
パッケージの一覧を見る
conda list
で一覧を見られる。
パッケージを入れる
conda install xxxxx
を使って好きなパッケージを入れる。
xxxxx
はパッケージ名。
個人的にはnumpy
とmatplotlib
は必須。
Jupyterを入れる
Jupyterをインストール
Anaconda Prompt (miniconda3)
でpip install jupyter notebook
でインストール。
ipykernelをインストール
そのままでは python にアタッチされないのでconda install notebook ipykernel
でインストール。
Jupyterを開く
Anaconda Prompt (miniconda3)
からjupyter notebook
と打って起動。
UnityのEntitiesプロジェクトをビルドする方法
前書き
Entities 0.50.0
を使用したプロジェクトのビルド方法のメモです。
注意点
今後のアップデートで方法が変わる可能性があります。
前準備
プロジェクト設定でプレビューなパッケージを有効にするよう設定します。
Edit > Project Settings > Package Manager のEnable Preview Packages
にチェックを入れます
Entities Platforms Pacage をインストール
Entities
を使用したプロジェクトは専用ビルドツールが必要でPackageManager
からインストールします。
PackageManager
のAdd package from git URL...
を選択し、com.unity.platforms
と入力するとインストールが始まるので少し待ちます。
ビルド方法
ビルドには専用アセットが必要なため作成します。
Assets > Create > Build Configuration > Empty Build Configuration を選択するとアセットが作成されます。
作成したらビルドしたいシーンを追加しビルドします。
ビルドのボタンはインスペクタウィンドウの右上にあります。
Build Configurationの説明
このアセットはBuild Settings
とPlayer Settings
の一部のパラメータをオーバーライドして変更します。
BuildConfiguration
にAddComponent
でオーバーライドしたいパラメータを選択します。
Shared Configurations
に別のビルドアセットをアタッチすることで設定を共有することができます。
変更箇所は Prefab のように青線が表示されます。
プロファイラに接続したい場合はClassicBuildProfile
のConfiguration
をDebug
もしくはDevelop
にします。
おまけ
platformsのパラメータ詳細はドキュメントに記載されていないため全てアタッチした状態の画像を載せておきます。
黄色い三角マークはThis component is not used by the build pipeline.
と表示されるので設定しても使われないかもしれません。(未検証)
Riderでdllの依存関係を見る
この記事はUnityのカレンダー | Advent Calendar 2021 - QiitaとUnityゲーム開発者ギルド2 Advent Calendar 2021 - Adventarの23日目です。
前書き
UnityではAssembly Definition
をフォルダに追加すると、そのフォルダ別にdll
が分割される機能があります。
クラスの循環参照が抑えられコードが綺麗に保てたり、コンパイル範囲が小さくなり変更時のビルドが早くなったりします。
そのdll
を依存関係を図で見る機能をご紹介します。
環境
Rider2021.3 (2020.2 over)
方法
Tools
> Architecture
> Show Project Diagram
で表示されます。
開発中の個人ゲームのdllを表示してみた図
(依存関係がかなり怪しいですね・・・)
最後に
クラスのダイアグラムはまだ実装されてません。そちらを見たい方はVisualStudioで見るのが良さそうです。