MRが楽しい

MRやVRについて学習したことを書き残す

NuGet Galleryからdllファイルを直接取得する

本日はNuGet Galleryの小ネタ枠です。 NuGet Galleryからdllファイルを直接取得する方法を記事に残します。 NuGet Gallery NuGetは.NET開発向けのパッケージマネージャーです。 NuGet Galleryはパッケージ作成者と使用者のための中央パッケージリポジトリで…

UniTaskのDelayFrameやYieldを使ってUnityで指定フレーム待機する

本日は UniTask の小ネタ枠です。 UniTaskを使ってUnityで指定フレーム待つ方法についてです。 UniTask UniTaskの環境構築手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com 指定フレーム待機する UniTask.Delay を利用すると指定のタイミング…

VisualStudioでPC向けのUWPアプリを作成する

本日はVisualStudioの小ネタ枠です。 VisualStudioでPC向けのUWPアプリを作成する手順を記事にします。 UWPプロジェクトを作成する VisualStudioを起動し、[新しいプロジェクトの作成]を選択します。 プロジェクトのテンプレートから[UWP]で検索します。 [空…

MetaQuestでOSのバージョン確認とアップデートを行う

本日はMetaQuestの小ネタ枠です。 MetaQuestでOSのアップデートを行う方法を記事にします。 MetaQuestでOSのアップデートを行う メニューから[クイック設定 -> 設定]を開きます。 設定一覧が表示されるので[システム]を選択します。 タブの一覧から[ソフトウ…

SideQuestを利用してPCからMetaQuestにadbコマンドを実行する

本日はMetaQuestの小ネタ枠です。 SideQuestを利用してPCからMetaQuestにadbコマンドを実行する方法を記事にします。 前提条件 以下の記事の手順に従ってSideQuestのインストールを実施してください。 bluebirdofoz.hatenablog.com adbコマンドを実行する Si…

Riderで特定コードのGitログの差分を確認する

本日はRiderの小ネタ枠です。 Riderで特定コードのGitログの差分を確認する方法を記事にします。 Riderの環境構築 JetBrains Rider の環境構築手順は以下を参照ください。 bluebirdofoz.hatenablog.com Riderで特定コードのGitログの差分を確認する Riderで…

HoloLens2でOpenIDConnectの認可コードフローを試す

本日はHoloLens2の小ネタ枠です。 HoloLens2でOpenIDConnectの認可コードフローを行う方法を記事にします。 Web認証ブローカー UWPプラットフォームのアプリではOpenIDやOAuthなどの認証プロトコルを扱う場合にWeb認証ブローカーが利用できます。 learn.micr…

EntraIDを使ってOpenIDConnectの認可コードフローを試す その2(認可コードフロー)

本日はAzureの小ネタ枠です。 EntraIDを使ってOpenIDConnectの認可コードフローを試したのでAzurePortalで行った設定手順を残します。 前回記事 以下の前回記事の続きです。 bluebirdofoz.hatenablog.com 認可コードフローを試す 初めに以下のURLをブラウザ…

EntraIDを使ってOpenIDConnectの認可コードフローを試す その1(EntraIDの設定)

本日はAzureの小ネタ枠です。 EntraIDを使ってOpenIDConnectの認可コードフローを試したのでその設定と実施手順を記事に残します。 OpenIDConnect OpenIDConnectはOAuth2.0に基づいて策定されたユーザの認証プロトコルです。 本記事ではOpenIDConnectに関す…

HoloLens2でファイルピッカーを使って端末のファイルを参照する

本日はHoloLens2の小ネタ枠です。 HoloLens2でファイルピッカーを使って端末のファイルを参照する方法についてです。 Windows.Storage.Pickers.FileOpenPicker UWPプラットフォームで利用可能なFileOpenPickerはファイルを選択して開くことができるUIを表示…

HttpListenerを使ってリダイレクトURLを受け取る

本日はC#の小ネタ枠です。 HttpListenerを使ってリダイレクトURLを受け取る方法についです。 HttpListener.GetContextAsync HttpListener.GetContextAsyncは非同期でHttp通信の受信要求を待機します。 本関数の実行前にHttpListenerに受信待機するURLプレフ…

UniRxのObserveOnMainThreadを使ってメインスレッドで処理を行う

本日はUniRxの小ネタ枠です。 UniRxのObserveOnMainThreadを使ってメインスレッドで処理を行う方法です。 前提条件 UniRxの環境構築手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com ObserveOnMainThread ObserveOnMainThreadはObservableの処…

UniRxのFirstやTakeを使ってボタンの押下をawaitを使って待機する

本日は UniRx の小ネタ枠です。 UniRxのFirstやTakeを使ってボタンの押下をawaitを使って待機する方法を記事にします。 ボタンの押下をawaitを使って待機する UniRxのOnClickAsObservableメソッドを使うことでButtonのクリックイベントをIObservableに変換で…

Unityのスクリプト編集でifdefのターゲットをUWPに切り替える Riderの場合

本日は Unity の小ネタ枠です。 Unity のスクリプト編集で ifdef のターゲットを UWP に切り替える手順を記事にします。 本手順はコードエディタにRiderを利用するケースです。 Playerプロジェクトの指定 初めにビルド設定をPlayerプロジェクトで指定するプ…

UniRxのAsObservableを使ってMRTKのボタンの押下イベントを受け取る

本日はUniRxの小ネタ枠です。 UniRxのAsObservableを使ってMRTKのボタンの押下イベントを受け取る方法です。 前提条件 UniRxとMRTKの環境構築手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com bluebirdofoz.hatenablog.com AsObservable AsObs…

UniRxのOnClickAsObservableを使ってボタンの押下イベントを受け取る

本日はUniRxの小ネタ枠です。 UniRxのOnClickAsObservableを使ってボタンの押下イベントを受け取る方法です。 前提条件 UniRxの環境構築手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com OnClickAsObservable OnClickAsObservableはUniRxで拡…

UniRxのContinueWithを使ってIObservableを一度だけ差し替える

本日はUniRxの小ネタ枠です。 UniRxのContinueWithを使ってIObservableを一度だけ差し替える方法を記事にします。 前提条件 UniRxの環境構築手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com UniRxのContinueWithを使ってIObservableを一度だ…

UniRxのSelectManyを使ってリストの要素やIObservableを返す

本日はUniRxの小ネタ枠です。 UniRxのSelectManyを使ってリストの要素やIObservableを返す方法を記事にします。 前提条件 UniRxの環境構築手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com UniRxのSelectManyを使ってリストの要素やIObservabl…

UnityのStarterAssetsを開くとモデルが紫色になる問題の対処

本日はUnityの小ネタ枠です。 UnityのStarterAssetsのサンプルシーンを開くとモデルが紫色になる問題の対処方法です。 StarterAssets Unity Technologiesが提供する一人称視点のプロジェクトの無料アセットです。 Input SystemやCinemachineなどゲーム作りに…

LinqのSelectManyを使って複数のリストを1つのリストにする

本日はC#の小ネタ枠です。 LinqのSelectManyを使って複数のリストを1つのリストにする方法を記事にします。 SelectMany SelectManyは複数の配列を1つの配列に平坦化します。 learn.microsoft.com // サンプルとして複数のリストを保持するリストを作成する L…

Unityで読み込み中のシーンをアンロードする

本日はUnityの小ネタ枠です。 読み込み中のシーンをアンロードする方法についてです。 シーンをアンロードする UnloadSceneAsync関数を使ってシーンをアンロードできます。 シーンはシーン名、シーンパス、ビルドインデックスで指定できます。 docs.unity3d.…

Unityで読み込み中の全てのシーンの参照を取得する

本日はUnityの小ネタ枠です。 Unityで読み込み中の全てのシーンの参照を取得する方法についてです。 全てのシーンの参照を取得する 読み込み中のシーンの参照を全て取得するにはSceneManager.sceneCount関数とSceneManager.GetSceneAt関数を利用します。 for…

Unityで編集(Editor)モードでもスクリプトのライフサイクル関数を実行する

本日はUnityの小ネタ枠です。 Unityで編集(Editor)モードでもスクリプトのライフサイクル関数を実行する方法についてです。 ExecuteAlways ExecuteAlways属性をクラスに設定するとスクリプトが編集モードと再生モード時の両方で実行されるようになります。 d…

TortoiseGitとGitHubのSSH接続の認証を設定する

本日はTortoiseGitとGitHubの小ネタ枠です。 TortoiseGitとGitHubのSSH接続の認証を設定する手順を記事にします。 SSHの秘密鍵と公開鍵の作成 初めにSSHの秘密鍵と公開鍵を作成します。 今回はPuTTYgenを使って作成を行いました。 PuTTYgenを起動し、[Genera…

Windows11環境で右クリックからTortoiseGitの全てのメニューを表示する

本日はWindowsとTortoiseGitの小ネタ枠です。 Windows11環境で右クリックからTortoiseGitの全てのメニューを表示する方法についてです。 Windows11環境の右クリックメニュー 最新のWindows11環境ではエクスプローラ上の右クリックで表示されるメニューがカテ…

Unityで同じオブジェクトに同一のスクリプトを複数設定できないようにする

本日はUnityの小ネタ枠です。 Unityで同じオブジェクトに同一のスクリプトを複数設定できないようにする方法についてです。 DisallowMultipleComponent DisallowMultipleComponent属性を利用すると同じオブジェクトに2つ以上同一のコンポーネントを設定でき…

UnityのInspectorでEnum値の選択値を一部表示しない

本日はUnityの小ネタ枠です。 UnityのInspectorでEnum値の選択値を一部表示しない方法についてです。 InspectorNameAttribute Enum型でInspectorNameAttribute属性を使用するとInspectorに表示される項目名を変更できます。 空文字を指定することで項目自体…

Unityのスクリプトにアイコンを設定する

本日はUnityの小ネタ枠です。 Unityのスクリプトにアイコンを設定する方法についてです。 IconAttribute クラスにIconAttribute属性を設定して、UnityEditor上で表示される各種アイコンを指定できます。 docs.unity3d.com サンプルコード 作成したスクリプト…

UnityのInspectorビューのフィールド入力をエンターキーを入力したタイミングで確定させる

本日はUnityの小ネタ枠です。 UnityのInspectorビューのフィールド入力をエンターキーを入力したタイミングで確定させる方法です。 DelayedAttribute DelayedAttributeを指定すると、float/int/string型のフィールドはエンターキーを押したとき、またはフィ…

UnityのInspectorビューでスライダーを使って数値を入力する

本日はUnityの小ネタ枠です。 UnityのInspectorビューでスライダーを使って数値を入力する方法です。 Inspectorでスライダー操作を使って値を入力する Inspectorでフィールドの値をスライダーで入力したい場合はRange属性を利用します。 [SerializeField, Ra…