メモ
今週読んだ記事や知ったことのメモ。
UnityEditor.ShortcutManagementでショートカット関連の機能が扱える
using UnityEditor.ShortcutManagement;
UI Toolkit使用時のドラッグ&ドロップイベント
【Unity】【UI Toolkit】Unityエディタ上でドラッグ&ドロップをハンドリングするイベントまとめ - LIGHT11
DragEnterEvent: ドラッグされた状態のカーソルがUIの領域に入ってきた時のイベント
DragLeaveEvent: ドラッグされた状態のカーソルがUIの領域から出た時のイベント
DragUpdatedEvent: ドラッグされた状態のカーソルがUIの領域に入っている間呼ばれる
DragPerformEvent: ドラッグされたものがUIの領域上でドロップされたときに呼ばれる
DragExitedEvent: ドラッグ&ドロップの処理が終わった時に呼ばれるイベント
Unity Sentisの入れ方
2024/05/18現在だと下記のようにmanifest.jsonへ記載する必要がある
"com.unity.sentis": "1.4.0-pre.3",
UI開発のTips
【Unity】失敗しないUI開発9つのTips【初心者エンジニア向け】 - 渋谷ほととぎす通信
文字列のインターンプール
C#ではstring型変数の文字列変更があると新しいインスタンスが作られる。
同じ文字列なら同じインスタンスを参照するため仕組みがインターンプール。
【C#】インターンプールを用いてstring生成によるヒープのメモリ確保を防ぐ方法(メモリを占有しつづけるのでそこは注意) - はなちるのマイノート
UI Toolkit でコンテキストメニュー(右クリック)を使う方法
【Unity】【UI Toolkit】Unity EditorでContextual Menu(右クリックメニュー)を使う - LIGHT11
UIToolkitでのコピペハンドリング
【Unity】【UI Toolkit】コピー&ペーストなどのショートカットをハンドリングするCommand Eventの使い方 - LIGHT11
スプライトの変更検知
SpriteRenderer.RegisterSpriteChangeCallback でスプライトが変更されたことを検知できる - コガネブログ
ステンシルバッファ
1pixelごとにpixelを描画するか否かの情報を保存する領域。
マスク表現を行うのに使われるらしい。
TimeProviderとベンチマークテスト
neue cc - R3のコードから見るC#パフォーマンス最適化技法実例とTimeProviderについて
時間の抽象化を行う。二点間の時間算出にDateTimeではなくTimestampを使う。 TimeProvider クラス (System) | Microsoft Learn
ベンチマークテストにStopWatchは使わない。 GitHub - dotnet/BenchmarkDotNet: Powerful .NET library for benchmarking
画面の変更前後の解像度取得
Display.main.systemWidth; //変更前 Display.main.renderingWidth; //変更後
メッセージングシステム
オブジェクト間でデータの送受信を行う仕組み。
UniRx,MessagePipe,VitalRouter等。
Unity Timeline
Timeline エディター拡張入門 - Speaker Deck
Unity Muse
All Unity Muse AI capabilities are now available in the Editor, plus 3 new updates | Unity Blog