MRが楽しい

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

2024-05-01から1ヶ月間の記事一覧

MRTKでHoloLens2の空間メッシュの表示方法や有効無効を動的に切り替える

本日はMRTKの小ネタ枠です。 MRTKで空間メッシュの表示方法や有効無効を動的に切り替える方法を記事にします。 SpatialAwarenessの設定 MRTKを利用してHoloLens2アプリを作成する場合、空間メッシュはSpatialAwarenessの設定で管理されます。 SpatialAwarene…

UniTaskを使って徐々に変化するゲージバーを作成する その2(連続で呼び出された場合は前の処理を省略する)

本日はUniTaskの小ネタ枠です。 UniTaskを使って徐々に変化するゲージバーを作成する方法を記事に残します。 今回は少し応用して連続で呼び出された場合は前の処理を省略するコードを作成します。 前回記事 以下の前回記事の続きです。 bluebirdofoz.hatenab…

UniTaskを使って徐々に変化するゲージバーを作成する

本日はUniTaskの小ネタ枠です。 UniTaskを使って徐々に変化するゲージバーを作成する方法を記事に残します。 前回記事 今回は以下の前回記事で作成したゲージバーのサンプルシーンを利用します。 bluebirdofoz.hatenablog.comUniTaskの環境構築手順は以下を…

Unityで見えない床を作成する

本日はUnityの小ネタ枠です。 Unityで簡単に見えない床を作成する方法です。 見えない床を作成する 重力落下するCubeオブジェクトを配置したサンプルシーンを作成しました。 ここにCubeを受け止める透明な床を作成します。 シーンに通常の床オブジェクトを配…

UnityでGetInstanceIDを使ってオブジェクトの一意なIDを取得する

本日はUnityの小ネタ枠です。 UnityでGetInstanceIDを使ってオブジェクトの一意なIDを取得する方法です。 Object.GetInstanceID オブジェクトの InstanceID を返します InstanceID は常にユニークです。新しく作成されたオブジェクトには負数のインスタンスI…

System.LinqのOrderByとThenByを使ってリストの複数の要素を元にソートを行う

本日は C# の小ネタ枠です。 System.LinqのOrderByとThenByを使ってリストの複数の要素を元にソートを行う方法を記事にします。 OrderByとThenBy System.Linq の OrderBy メソッドはリスト全体の要素を参照して昇順に並べ替えを行います。 並べ替えに使用す…

C#でリストを昇順降順で並び替える

本日はC#の小ネタ枠です。 C#でリストを昇順降順で並び替える方法についてです。 昇順の並べ替え Sort メソッドを使う場合 Sort メソッドを使うとリストの要素を昇順に並べ替えることができます。 名前空間 System.Collections.Generic から利用できます。 L…

foreachで要素とインデックスを取得する その2(ListのForEachメソッドを利用する場合)

本日はC#の小ネタ枠です。 foreachで要素とインデックスを取得する方法です。 今回はListのForEachメソッドを利用する場合です。 ForEachで要素とインデックスを取得する ForEach メソッドでは直接インデックスは取得できないため、この場合も Select メソッ…

foreachで要素とインデックスを取得する

本日はC#の小ネタ枠です。 foreachで要素とインデックスを取得する方法です。 foreachで要素とインデックスを取得する Enumerable.Select メソッドを利用することでforeachで要素とインデックスを同時に取得することができます。 foreach (var (value, index…

Blenderのメジャー機能を使ってモデルの距離や厚みを測る

本日はBlenderの小ネタ枠です。 Blenderのメジャー機能を使ってモデルの距離や厚みを測る方法です。 メジャー機能 Blenderのメジャー機能は指定した2点間の距離や角度を測る機能です。 3Dビューの[メジャー]アイコンをクリックして機能を有効にします。 左ク…

ペイントで色1と色2を使って色の塗分けや色の置換を行う

本日はペイントの小ネタ枠です。 ペイントで色1と色2を使って色の塗分けや色の置換を行う方法です。 色の塗分け 色1と色2を使ってマウスの左クリックと右クリックで色の塗分けが行えます。 [鉛筆]または[塗りつぶし]を使うとき、左クリックで[色1]、右ク…

ペイントの透明の選択を使って任意の色を透明色として切り出しを行う

本日はペイントの小ネタ枠です。 ペイントの透明の選択を利用する方法についてです。 通常の切り出し サンプルとして以下の背景色を白色に設定した画像を作成しました。 [選択]を有効にして通常の切り出しを行います。 星型の図形を範囲選択して四角の図形に…

ペイントのレイヤー機能を利用する

本日はペイントの小ネタ枠です。 ペイントのレイヤー機能を利用する方法についてです。 ペイントのレイヤー機能 ペイントの「レイヤー」ボタンをクリックすると、ペイントで編集中の画像のレイヤーが表示されます。 「+」ボタンを押すことで新規レイヤーを…

ペイントで写真の背景部分を削除して切り抜く

本日はペイントの小ネタ枠です。 ペイントで写真の背景部分を切り抜く方法についてです。 背景の削除 ペイントの「背景の削除」機能を利用することで画像の背景部分を削除できます。 「背景の削除」を実行すると以下の通り、画像の背景部分が自動で判定され…

UnityのSliderを一定間隔ごとにスライドさせる

本日はUnityの小ネタ枠です。 UnityのSliderを一定間隔ごとにスライドさせる方法についてです。 Slider UnityのSliderオブジェクトはHierarchy上で右クリックから[UI -> Slider]で追加できます。 docs.unity3d.com デフォルトではSliderの値は0~1のfloat値…

UniRxを使ってUnityのスライダーUIの値の変化をチェックする

本日は UniRx の小ネタ枠です。 UniRxを使ってUnityのスライダーUIの値の変化をチェックする方法を記事にします。 ObserveEveryValueChanged ObserveEveryValueChangedはUniRxで定義されている全クラスの拡張メソッドです。 この関数を利用することで、様々…

UnityのInspectorビューに自作のデータ形式を表示する

本日はUnityの小ネタ枠です。 UnityのInspectorビューに自作のデータ形式(struct, class, record)を表示する方法についてです。 カスタム製のシリアル化 [System.Serializable]属性を利用することで自作のデータ形式をシリアル化することができます。 これに…

Unity環境での各種データ型の最小値から最大値を確認する

本日はUnityの小ネタ枠です。 Unity環境での各種データ型の最小値から最大値を確認する方法についてです。 各種データ型の最小値から最大値を確認する Unityがサポートするプログラミング言語はC#のため、数値型の利用可能なデータ範囲はC#に依存します。 C#…

UnityのTextMeshProでアウトラインを表示する

本日はUnityの小ネタ枠です。 UnityのTextMeshProでアウトラインを表示する方法です。 Outline TextMeshProのアウトラインの設定はTextコンポーネントを設定したオブジェクトのマテリアルから設定できます。 [Outline -> Thickness]の値を1に寄せるほどアウ…

Unityのスクリプトでユーザ名からYouTubeみたいな自動生成アイコンを作る

本日はUnityの小ネタ枠です。 Unityのスクリプトでユーザ名からYouTubeみたいな自動生成アイコンを作ってみたので記事にします。 ユーザ名からアイコンを自動生成する ランダムな背景色にユーザ名の文字が書き込まれたユーザアイコンを生成するため、以下のI…

C#で3桁ごとにカンマを表示する形式で数値を文字列表示する

本日はC#の小ネタ枠です。 3桁ごとにカンマを表示する形式で数値を文字列表示する方法についてです。 3桁ごとにカンマを表示する形式で数値を文字列表示する 3桁ごとにカンマを表示する形式で数値を文字列表示するには ToString か String.Format を利用する…