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

【.NET】Mac + Rider + ObfuscarでDLLを難読化

MacとRiderの組み合わせでObfuscarを使ってDLLを難読化する手順についてまとめます。 Obfuscarとは? ドキュメントとサンプル 基本的な使い方 まずDLLを適当に作る Obfuscarをインストールする ObfuscarのConfigファイルを作成する Monoをインストールする …

【Unity】Unity謹製ビヘイビアツリー「Unity Behavior」の使い方まとめ

Unity謹製ビヘイビアツリー「Unity Behavior」の使い方についてまとめました。 Unity Behaviorとは? セットアップ 簡単なツリーを作る 実行する Blackboardを使う Blackboardを書き換える カスタムノードを作成する 列挙型とSwitchノードで状態を管理する …

【Flutter】FlutterでBLoCパターンの実装を行う「flutter_bloc」の使い方まとめ

FlutterでBLoCパターンの実装を行う「flutter_bloc」の使い方をまとめました。 はじめに セットアップ 基本的な使い方 Blocで状態管理クラスを作る 生成済みの状態インスタンスを別のページで使う 複数の状態を使用する 対象の状態をフィルタリングするBlocS…

【Unity】TextMeshProのアセットバンドルをAddressableアセットシステムできちんと管理する

UnityでTextMeshProのアセットバンドルをAddressableアセットシステムできちんと管理する方法です。 はじめに StaticフォントをAddressableに登録する シェーダを別アセットバンドルに切り出す DynamicフォントをAddressableに登録する フォントを別アセット…

【C#】複数のExceptionがまとめられたAggregateExceptionを正しくハンドリングする

C#で複数のExceptionがまとめられたAggregateExceptionを正しくハンドリングする方法についてまとめました。 AggregateExceptionとは? Flatten Handle 参考

【Flutter】Riverpodを使っているウィジェットをWidgetbookでカタログ化する

FlutterでRiverpodを使っているウィジェットをWidgetbookでカタログ化する方法です。 はじめに Riverpodを使ったウィジェットを作る appBuilderを使ってProviderScopeで囲う ProviderScopeのoverrideにプロバイダーのモックを設定 関連

【Rider】【.NET】NuGetパッケージのキャッシュを消す

RiderでNuGetパッケージのキャッシュを消す方法です。 はじめに 方法

【Rider】Unityの機能を使ったDLLをビルドする手順

RiderでUnityの機能を使ったDLLをビルドする方法です。 やりたいこと .NETソリューションとプロジェクトを作成 .NETプロジェクトにUnityEngineを参照させる Unityの機能を使ったプログラムを書く DLLをビルド 動作確認 参考

【Unity】【UI Toolkit】キーボードの押下イベントをハンドリングする

UnityのUI Toolkitでキーボードの押下イベントをハンドリングする方法についてまとめました。 KeyDownEventとKeyUpEvent characterプロパティについて フォーカスについて 参考

【Unity】Timelineアニメーションの効率的な作り方 & OSS『UnityUIPlayables』のメンテを辞めた理由

UnityでTimelineアニメーションを作る際の効率的な作り方についてまとめました。 またこの内容に関連して、個人で公開していたOSS「UnityUIPlayables」をPublic Archiveにしたのでその話も踏まえてまとめます。 Timelineアニメーションの二つの作り方 キーフ…

【Unity】MasterMemoryの文字列自動インターン化の挙動を確認する

UnityでMasterMemoryの文字列自動インターン化の挙動を確認しました。 はじめに 挙動確認用のマスタデータクラスを作る MessagePackとMasterMemoryのコード生成をする MasterMemoryのバイナリをビルドする バイナリをロードしてインターン化を確認する strin…

【Flutter】Riverpod と Flutter Hooks を組み合わせて使う方法とその際の使い分け

FlutterでRiverpod と Flutter Hooks を組み合わせて使う方法についてまとめました。 はじめに インストール Flutter Hooksを使ったアプリケーションを作る Riverpodを使ったアプリケーションを作る Flutter HooksとRiverpodを組み合わせる Consumerを使うケ…

【Unity】ネストされたタイムライン(子タイムライン)をスクリプトから作成する方法

Unityネストされたタイムライン(子タイムライン)をスクリプトから作成する方法についてまとめました。 ネストされたタイムライン? スクリプトから作成する方法 動作確認 参考

【Unity】【UI Toolkit】ボタンのダブルクリックを検知する方法(Hackyな方法)

UnityのUI Toolkitでボタンのダブルクリックを検知する方法です。 はじめに&注意点 方法 参考

【Flutter】ウィジェットのライフサイクルを管理するFlutter Hooksの概要と基本的なフックの使い方まとめ

Flutterでウィジェットのライフサイクルを管理するFlutter Hooksの概要と基本的なフックの使い方についてまとめました。 Flutter Hooksとは? useState: 状態を持つWidgetを簡単に書ける useEffect: 初期化・破棄の処理を簡単に書ける useMemoized: 重い処理…

【Flutter】ウィジェットのカタログを作れるWidgetbookの基本的な使い方まとめ

Flutterでウィジェットのカタログを作れるWidgetbookの基本的な使い方をまとめました。 はじめに インストール〜ビルドまで コンポーネントとユースケースを追加する アドオン ノブ 参考

【Flutter】Riverpodを使う場合の単体テストとウィジェットテストのやり方

FlutterでRiverpodを使う場合の単体テストとウィジェットテストのやり方についてまとめます。 はじめに 単体テスト(Providerのテスト) readとlistenの使い分け ウィジェットテスト Providerのモックを使う NotifierをMockingすることもできる(非推奨) 参…

【Unity】【UI Toolkit】UI Builderを使うとスタイルシート書けない人でも簡単にUSSを作成できる

UnityのUI ToolkitでUI Builderを使ってスタイルシートの書き方がわからない人でも簡単にUSSを作成する方法についてまとめました。 はじめに UI Builder上でスタイルシートを作成する スタイルシートを適用する 関連 参考

【Unity】クリックするだけで思い通りのアニメーションカーブを作れるおすすめアセット『Curvify』の使い方

Unityでクリックするだけで思い通りのアニメーションカーブを作れるおすすめアセット『Curvify』の使い方をまとめました。 Curvifyとは? 基本操作 Timelineに適用する ParticleSystemに適用する フォルダ機能と作成したカーブの共有方法 設定項目 関連 参考

【Flutter】状態管理ライブラリRiverpodの概要と基本的な使い方まとめ

FlutterにおけるRiverpodの概要と基本的な使い方についてまとめました。 Riverpodとは? セットアップ 簡単なアプリケーションを作ってみる 非同期処理で状態を更新する Streamによる非同期処理を扱う 状態のキャッシュについて 参考

【Flutter】【Dart】コードジェネレータFreezedでイミュータブル/ミュータブルなモデルを生成する

Dartでイミュータブル/ミュータブルなモデルを作るFreezedの基本的な使い方をまとめました。 Freezedとは? セットアップ イミュータブルなモデルを作る ミュータブルなモデルを作る List、Map、Setの挙動 モデルをコピーする メンバを自分で定義したい場合 …

【Flutter】【Dart】StreamとStreamControllerをざっと理解する

DartにおけるStreamとStreamControllerの使い方をざっとまとめます。 Streamの概念 Streamの基本的な使い方 Streamのハンドリング色々 Stream Controllerを使ってStreamを作る StreamControllerのStreamを複数回Listenする 参考

【Flutter】ウィジェットテストを行う方法まとめ

Flutterでウィジェットテストをする方法についてまとめました。 準備 簡単なテストを作成する いろいろなFinder いろいろなMatcher pumpメソッドとpumpAndSettleメソッド 参考

【Flutter】単体テストを行う方法まとめ

Flutterで単体テストをする方法についてまとめました。 テストするクラスを作成する 単体テストを書いて実行する Matcherによる判定 メッセージ(reason) 非同期メソッドのテスト グルーピング テスト前後処理 個々のテストの前後処理 テスト対象から除外す…

Google Workspace アドオンの基本的な作り方まとめ

Google Workspace アドオンの基本的な作り方をまとめました。 Google Workspaceアドオンとは? セットアップ〜簡単なアドオンの作成までの手順 マニフェストファイルを理解する addOns oauthScope トリガー UI(カード)を理解する もう少し実践的なアドオン…

【Unity】VContainerで動的に生成したGameObjectにDIする方法

VContainerで動的に生成したGameObjectにDIする方法についてまとめました。 はじめに パターン1: Enemyを生成するクラス(Spawner)にDIする場合 パターン2: Spawnerを介しつつEnemyにDIしたい場合 パターン3: ファクトリメソッドをDIする場合 参考

【Unity】【UI Toolkit】スクロール位置などビューに関わるデータを保存するView Dataの使い方

UnityのUI Toolkitで、スクロール位置などビューに関わるデータを保存するView Dataを使う方法についてまとめました。 View Dataとは? View Dataの使い方 使ってみる 動作確認 参考

【.NET】Roslynを使った構文解析とセマンティック解析のやり方まとめ

.NETでRoslynを使った構文解析とセマンティック解析をする方法についてまとめました。 はじめに セットアップ 構文解析 ノード・トークン・トリビア Nodeクラスの派生型 構文ウォーカー SyntaxTreeを可視化する セマンティック解析 セマンティック解析とは …

【Unity】【UI Toolkit】Unity EditorでContextual Menu(右クリックメニュー)を使う

UI Toolkitで、Unity EditorのContextual Menu(右クリックメニュー)を使う方法についてまとめました。 Contextual Menuとは? Contextual Menuを実装する 動作確認 動的にメニューを追加する 参考 Unity 2022.2.17 Contextual Menuとは? Contextual Menu…

【Unity】OSSのハイパフォーマンスメッセージングシステム「Vital Router」の使い方まとめ

Unityで使えるメッセージングシステムVital Routerの使い方についてまとめました。 Vital Routerの概要と本記事の範囲 セットアップ 基本的な使い方 コマンドを定義する コマンドを発行する コマンドを購読する 依存性注入する シーン構築と実行確認 VContai…