【C#】R3のReactivePropertyのスニペット

R3 という Reactive Extensions(Rx) のモダンな実装が登場しました。Unity 向けの専用機能としてではなく、通常の .NET 開発環境でも利用可能なため、R3 を使った Observable なメッセージングの仕組みを環境を選ぶことなく利用できるようになりました。 利…

【C#/.NET8版】文字列の先頭だけを大文字 or 小文字に変換する

ものすごく昔に「【C#】文字列の先頭だけを大文字 or 小文字に変換する」という記事を書きましたが、あれからかなり時間が経って(前に記事を書いたのは今から5年前).NETに Span<T> や string.Create という機能が追加されよりパフォーマンス良く実装できるよ</t>…

【C#】ファイル名末尾にサフィックスを追加する

最近タイトルのような似たような実装を何度も書いて面倒だったので実装例を紹介したいと思います。 ファイルで拡張子とファイル名の間にサフィックスを追加する処理を何度も何度も書いてる気がするのでいい加減記事にしようと思って書いた内容です。 あと、…

【C#】System.Threading.Channels<T>の使い方

System.Threading.Channels の使い方を紹介したいと思います。 Channels は一定量のデータを格納するコンテナとして使用でき、入れた内容は取り出すまで保存されます。Channels は非同期操作に対応している FIFO(キュー)構造でスレッドセーフを保証しつつ…

Unity6でエディター編集中のシーン開始を高速化する

Unity でエディター上で作業しているシーンの開始(再生)の高速化の手段として「Enter Play Mode Settings」「Enter Play Mode Options」という設定項目がUnity2019.3頃から追加されています。これをONすると開始が爆速になると話題になりました。この機能…

ASP.NET Core 9.0をWindowsサービス化する

タイトルの通り、ASP.NET Core 9.0 の Kestrel を Windows サービス化してみようと思います。 以前「ASP.NET Core 2.0をWindowsサービス化する」という記事を書きましたがあれから状況が大きく変わっているため現時点の最新環境でどのように実現するのか紹介…

QTTabBarの個人的な設定

フォルダの余白をダブルクリックすると親フォルダーに移動できる機能が使いたくて使用していますが、標準とは少し異なる設定をしているためPC引っ越し時に毎回設定が分からなくなるため私的なメモになります。 基本的に標準のエクスプローラーにタブを追加し…

【Unity】エディターフォントが変更できなくなった件

2025年1月現在、Unity6のエディターフォントの変更ができなくなってしまっていたため状況のメモです。 2019年11月: 以下のフォント変更アセットを作成する https://takap-tech.com/entry/2019/11/30/231258 ↓↓↓ 2021年頃: 特殊なファイルを変更することで変…

【C#】バイナリにローカルパスを含めない設定

C#をビルドしてEXEやDLLを生成するとバイナリの中にビルドしたときのパスが入っていたりするのを除去する方法です。 特に設定しない状態でC#をビルドしたバイナリを一般公開してしまうと、ユーザーフォルダ内で開発していてパスに個人名に関係する名称が含ま…

【C#】あるフォルダ内のファイルを一つにまとめるツール

あるディレクトリ以下の特定のファイルを一つにまとめるツールを作成しました。 ローカルにあるソースコードをGeminiのような大きいトークン数を扱えるAIにファイルで渡して内容をレビューや改善するために、フォルダ内の特定のファイルを全て1つのファイル…

【C#】正弦波と矩形波を作成する

タイトルの通り以下の画像のような正弦波と矩形波を作成するための C# の実装を紹介したいと思います。紹介する実装は、電気の実データに似せるために正弦波と矩形波はノイズ入りの波形を作成することができます。 正弦波 正弦波、ノイズありσ=0.5 矩形波 矩…

VSCodeのエクスプローラーの表示領域が圧迫されるのを防ぐ

VSCodeのエクスプローラーウインドウの画面上部にディレクトリの階層構造が固定表示される機能を停止する方法はスティッキースクロールというらしい。 設定は以下項目。階層構造が深いと肝心のディレクトリが圧迫されて見えなくなるので視認性が悪い場合OFF…