yotiky Tech Blog

とあるエンジニアの備忘録

2020-11-01から1ヶ月間の記事一覧

C# 8.0 の主な新機能

目次 目次 リリース時期 null 許容参照型 機能 有効化/無効化 csproj ファイルにオプションを指定する #nullable enable|disable|restore [warnings|annotations] ! (null 免除) 演算子 フィールドやプロパティでの利用 null 許容値型との違い 建設中 コード…

C# の新機能

目次 C# 4.0 C# 5.0 C# 6.0 C# 7.0 C# 7.1 C# 7.2 C# 7.3 C# 8.0 C# 9.0 Unity の対応表 Unity Runtime version (Equivalent) C# version Compiler 2017 .NET 3.5 C# 4.0 mcs (Mono) .NET 4.6 C# 6.0 mcs (Mono) 2018.1 / 2018.2 .NET 3.5 C# 4.0 mcs (Mono)…

C# 9.0 の主な新機能

目次 目次 リリース時期 init 専用セッター Records トップ レベル ステートメント ターゲットからの new 型推論 ラムダ式の引数を破棄 ローカル関数への属性適用 パターンマッチングの拡張機能 コード置き場 リリース時期 .NET 5 init 専用セッター public …

Unity - スライダーでズームイン/ズームアウトする

対象のオブジェクトを中心に、スライダーの値でズームインしたりズームアウトするサンプルスクリプト。 スライダーの値に応じてカメラが移動する。 public class Zoomer: MonoBehaviour { public GameObject playerObject; public Slider zoomSlider; public…

Unity - スライダーで対象を中心にカメラを回転させる(三人称視点)

対象のGameObjectを中心にカメラをスライダーの値で回転(三人称視点)させるサンプルスクリプト。 回転可能な角度を設定して正面からの回転角度に制限を設けている。 public GameObject playerObject; public Slider rotationSlider; public float maxAngle…

WPF から Application Insights に Telemetry を送信する

目次 目次 Application Insights 非HTTPアプリケーション向け 検証環境 手順 パッケージのインストール 実装 実行結果 Application Insights Application Insights は Azure Monitor の機能であり、開発者や DevOps プロフェッショナル向けの拡張可能なアプ…

WPF - DesignerProperties

DesignerProperties はデザインモードか判定に使われるクラスですが、手元の環境で上手く機能しなくなっていたので簡単に調査した結果です。 目次 目次 検証環境 内容 使い方 動作確認 WPF (.NET Framework) WPF (.NET Core) 検証環境 Visual Studio 2019 (1…

WPF - CommandLocker

Button にバインディングしたコマンドを共通してロックする機構 CommandLocker。 github.com ロックの種類は、Guidをキーとしたシンプルなロックと、ロックする時に渡した値をアンロックする際にも渡す必要があるトリガーロックの2種類です。 トリガーロック…

C# - 固定サイズのキュー

ラッパークラス 最小限の実装。Queue がラップされるので Queue で必要な機能は全部中継する必要がある。 public class FixedSizeQueue<T> { private ConcurrentQueue<T> queue = new ConcurrentQueue<T>(); private object lockObject = new Object(); public int Si</t></t></t>…

HoloLens2 に FastEnum を導入する

追記 (2020/11/14) 検証環境 補足 導入 FastEnum MessagePack 追記 (2020/11/14) FastEnum 1.6.0 がリリースされました。 1.5.x では System.Runtime.CompilerServices.Unsafe は 4.7.1 以上が必要でしたが、1.6.0 では 4.5.0 以上になっており、要求される…

Unity Editor の MessagePack CodeGen が動かない原因と一時対処

原因 一時対処 参考 原因 最新の MessagePack for C# (執筆時のバージョンは 2.2.60 ) の MessagePack CodeGen ウィンドウでは、ジェネレートが動かなくなっています。中でdotnet tool コマンドを使っていますが、.NET Core ツールについては前回の記事を…

.NET Core ツール

.NET Core ツール インストール グローバルツール ローカルツール ツールを使用する コマンドを確認する グローバルツールを呼び出す ローカルツールを呼び出す プレフィックス dotnet- 参考 .NET Core ツール dotnet コマンドで、tool SDK コマンドを使うと…