【C#】WMIでOSのメモリ使用量を取得する

WMI(Windows Management Infrastructure)という機能を使うとWindowsのシステムの各種情報を取得することができます。今回はこの機能を使用して 確認環境 Windows10 VisualStudio 2019 .NET Framework 4.7.2 / .NET 5 プロジェクトの設定 WMI の機能を使用…

【Unity】スクリプトを変更するたびにコンパイルが走らないようにする

Unity を使用中にエディタでスクリプトを編集 → 保存すると Unity 上でスクリプトのコンパイルが実行され、その都度作業が中断されるのを防止する設定です。 スクリプトのコンパイルが走ると画面右下のチェックマークが回転するプログレスに変化して Unity …

VisualStuiodでCSSを階層インデントしない

VisualStudio でCSSを編集していると、CSSの名前に「.」とか「:」が入ると自動でインデントされてしまいますがこれをオフにする方法です。 例えばこんな感じになります。 .btn { top: 50%; left: 50%; height: 100%; color: #BFC3C7; font-size: 16px; paddi…

【Windows11】文字サイズを変更するとタイトルバーの高さおかしくなる

Windows11 では文字サイズを大きくすることができます。以下のサイトのように設定から大きくすることができます。 https://paso-kake.com/it/windows11/10982/ この設定でフォントを、大きくする → 元のサイズに戻す、操作後にタイトルバーの高さが大きくな…

【C#】Taskのキャンセル

2022-10-04 C# 標準の Task のキャンセルの方法です。 以下のように bool のフラグを使ってキャンセルするのは方法が簡単ですが、Task が想定するキャンセルの作法をの紹介になります。 簡易キャンセル フラグ使うほう。以下条件の時は別にこれでも大丈夫で…

【C#】INIファイルを読み書きする(DllImportなし)

INI ファイルを C# で読み書きするために DllImport で Windows の User32.dll 使うのは確かに簡単ですが汎用性に欠けると思うので、純粋な C# のみかつ、.NET 4.6 くらいからコピペで使えるライブラリを作成してみました。 ライブラリの性能 確認環境 形式…

【C#】正規表現で一致した部分を取得する

C#の正規表現で、パターンに一致した部分を取得することをグループ化する、などと呼びます。この正規表現のある条件に一致した部分を取得する方法の紹介です。 確認環境 VisualStudio2019 C# 9.0(バージョン不問 名前空間 using System.Text.RegularExpress…

【C#】TryParseExactとParseExactの使い方

すぐ忘れて何度も調べることになるのでメモ DateTime.TryParseExact と DateTime.ParseExact の使い方です。 確認環境 VisualStudio2019 C# 9.0 すごい昔からあるからバージョン不問 DateTime.TryParseExact 具体的なフォーマットを指定する場合以下のように…

【C++】無効値を指定可能なstd::optionalの使い方

C++17から使えるようになった値型にもnullのような無効な値を指定できるnulloptの使い方です。 宣言 ヘッダー宣言 #include <optional> // 使うときはこれを宣言する 判定方法 std::optional を受け取ったときの判定方法 // (1) サンプル用のクラス class Sample { pub</optional>…

【C#】TypeCodeを使った高速な型判定を行う?

ライブラリなどの比較的低レイヤー寄りの実装をしていると受け取った、ジェネリックな型や、object 型で受け取った変数がどの型なのかを判定するケースがありますが、タイトルの通り TypeCode を使うと Type を使った判定より、効率的かつ高速な処理にできる…

【Unity】2D用のNavMeshでTimeMap以外の領域や障害物をベイクする

2D 用の NavMesh の導入方法とタイルマップへの適用方法は記事がいくつかあるので、導入~タイルマップに適用するまでは比較的簡単にできると思います。ただ、実際にトップダウン系のゲームなどで使用する場合、障害物を設置したり経路を動的に足したりでき…

【Unity】2Dゲームでプレイヤーがオブジェクトに回り込んだ時にシルエットを表示する

トップダウンやクォータービューなどの見下ろし型の2Dゲームで、プレイヤーの操作キャラクター(もしくは敵キャラなど)が、高さのあるオブジェクトの後ろに回り込んだ時にオブジェクトに隠れて見えなくなった時、どこに居るのかが分からなくなってしまう事…