目次
検証環境
- Unity 2022.3.21f1
- ZLogger 2.4.1
- ZLogger.Unity 2.4.1
- CsprojModifier 1.2.1
導入
- NugetForUnityをインストール
NugetForUnityで以下をインストール
- ZLogger
Project Settings > Package Manager を設定
- OpenUPM
https://package.openupm.com
com.cysharp
Package Managerで以下をインストール
- CsprojManager
- ZLogger.Unity
次の内容を
csc.rsp
のファイル名でAssets/
直下に作成するasmdef
を定義している場合は、asmdef
と同じフォルダへ配置Unity 2022.2以降
-langVersion:10 -nullable
Unity 2022.3.12f1以降でC#11を使いたい場合
-langVersion:preview -nullable
次の内容を
LangVersion.props
のファイル名でルートフォルダに作成する- C#11を使う場合は
<LangVersion>11</LangVersion>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <LangVersion>10</LangVersion> <Nullable>enable</Nullable> </PropertyGroup> </Project>
- C#11を使う場合は
Project Settings > Editor > C# Project Modifier
- CsprojManagerは、propsファイルで指定した内容を、登録したcsprojに挿入する
- Additional project imports に作成したpropsファイルを登録
- asmdefを定義している場合は、The project to be added for Import に登録
実行
サンプルコードを作って適当なGameObjectに追加する
public class LoggerTest : MonoBehaviour { void Start() { var loggerFactory = LoggerFactory.Create(builder => { builder.SetMinimumLevel(LogLevel.Trace); builder.AddZLoggerUnityDebug(); }); var logger = loggerFactory.CreateLogger<LoggerTest>(); var name = "foo"; logger.ZLogDebug($"Hello {name}!"); Debug.Log($"Hello bar from Unity"); } }
実行結果