仮想と物理とエトセトラ

xRや物理とかごった煮の備忘録的技術ブログ

MLAPIをHoloLensでつかう その4 (物体操作をHost, Clientの両方で行う)

今回は前回の続きです。 xr-physics-work-etc.hatenablog.com 前回では、物体操作はHostからしか行えませんでした。 このままでは都合が悪いことも多いので、誰でも操作できるように、Clientからも物体の操作を行えるようにします。 物体の操作を管理する ML…

MLAPIをHoloLensでつかう その3 (物体の操作を共有する)

今回は前回の続きです。 xr-physics-work-etc.hatenablog.com HoloLensを使った共有に重要な物体の操作に関する共有を行います。 Spawnする物体を用意する 今回はCubeをSpawnし、それを操作します。 まずは、Spawn対象であるCubeを用意します。 Hierarchy上…

MLAPIをHoloLensでつかう その2(ユーザの位置共有をしてみる)

今回は前回の続きです。 xr-physics-work-etc.hatenablog.com 今回もMLAPIのチュートリアルに沿いつつやっていきます。 docs-multiplayer.unity3d.com NetworkManagerを設定する Hierarchy上で空のGameObjectを作成し、NetworkManagerに名前を変更します。 …

MLAPIをHoloLensでつかう その1(環境構築)

今回はUnityのマルチプレイ用ライブラリであるMLAPIを、HoloLensで使用するための環境構築をメモします。 MLAPIはUnetに代わり、Unity公式でサポートされているライブラリです。 docs-multiplayer.unity3d.com PhotonのPUN2と異なり、PhotonクラウドやPhoton…

ConstraintManagerで自作の制約を加える

今回はMRTKの勉強です。 Object Manipulatorや、Bounds Controlを使用する際に一緒にアタッチされる、Constraint Managerの活用について確認します。 docs.microsoft.com Constraint Managerについては、やや古いですが下記が詳しいです。 hololabinc.github…

HoloLensからBluetooth接続可能な端末を確認する

Bluetooth接続をHoloLens上で取り扱う方法のうち、接続可能な端末の情報を確認する方法をメモします。 将来的には、Bluetooth接続で別端末と情報をやり取りする方法の習得を目指します。 APIは下記のAPIを主に使用します。 docs.microsoft.com 1. 準備 接続…

Hololensの既存アプリをHolographic Remoting対応させる

今回は、既存のHololensアプリをHolographic Remoting対応させる方法をメモします。 Holographic Remotingとは、通常のHololensアプリと異なりレンダリングや物理的な処理をPC側で実行し、レンダリング結果のみHololens上で確認できる機能です。 各種処理をP…

Unreal Engine4を使ってみる1(インストール)

今回は、Unreal Engine4 (UE4)を使用し始めるためのインストール手順を記載します。 UE4はUnityとは別のゲームエンジンで、MRTKに対応しています。 docs.microsoft.com エフェクトなどのレンダリングに長けていたり、ゲームエンジン自体にマルチプレイ(Holo…

Unityで外部のzipファイルから複数枚画像を取り出す

今回は小技です。 ※物理枠の動作確認がうまくいっていないので、こちらでお茶を濁す 外部ファイルとして、zip中の画像をバイト列で取り出し、テクスチャとして取得します。 準備 今回は、zipファイル中の画像をバイト列のリストとして取り出すクラス(ZipImag…

電場をHololens上で再現する(その1 必要な要素を洗い出す)

今回は試験的に物理枠です。(xRばかりでブログ名詐欺のため) この枠では、Hololensで物理的な挙動を可視化することを考えていきます。 特に電磁気学などの場の力や流体力学など、目に見えない事象は理解が難しいため、可視化の需要はあると思います。 電磁気…

Photon(PUN2, Photon Voice 2)環境で音声共有を行う

今回は前回のPhoton Voice 2の続きです。 xr-physics-work-etc.hatenablog.com Hololens2を用いてPhotonを介した音声共有を行います。 1. 音声共有のための設定を行う 音声共有のためには、以前作成したScene上のPhoton ManagerオブジェクトとPlayerプレハブ…

Photon(PUN2)環境に音声共有(Photon Voice 2)を追加する

Photonで音声共有機能を追加する方法です。 今回は、既存のPhoton(PUN2)プロジェクトに、後からPhoton Voice 2を追加する環境構築までを記事にします。 1. Photon Voice 2とは doc.photonengine.com Photon Voice2とはPhotonを用いて音声共有するためのア…

Photon(PUN2)で関数実行を共有する

Photonの続きです。 xr-physics-work-etc.hatenablog.com 今回は関数の実行を複数ユーザで共有します。 例として、ボタンを押すことでカウントアップするカウンタを作成します。 1. ボタンを用意する MRTK Toolboxから任意のボタンを用意します。 今回は「Pr…

Photon(PUN2)での物体操作権限移譲

今回は下記の続きで、他人がSpawnしたオブジェクトを操作する方法です。 xr-physics-work-etc.hatenablog.com 1. PhotonViewの設定をする まず、PhotonViewの権限移譲に関する設定をします。 前回作成したCubeプレハブの「PhotonView」スクリプト中、OwnerSh…

Photon(PUN2)での物体位置の共有

今回は下記の続きで、表示した物体位置の共有です。 xr-physics-work-etc.hatenablog.com 基本的にはユーザ位置共有と同じですが、多用する機能のため記載しておきます。 1. Spawnするプレハブを用意する まずは共有する物体をプレハブとして用意します。 今…

Photon(PUN2)+MRTKアプリをOculus Questで使う

Photonのやや番外編として、Oculus Questで同じアプリを使ってVR, MR間での共有を試しました。 MRTKはver. 2.5からOculus Questをサポートしました。 PhotonもOculus Quest(というよりAndroid)をサポートしているため、同じアプリでHololens2との共有が可…

Figma Toolkitを試してみる

今回はMRTKを用いたアプリケーションのイメージボード作成や、サンプル画像作成に使える「Figma Toolkit」を試してみます。 docs.microsoft.com 1. アカウント作成 まず、Figma自体のアカウントを作成します。 Figmaはブラウザ上で使用できるUIデザインツー…

Photon(PUN2)での簡単な共有(ユーザ位置の共有)

今回は下記の続きで、入室したユーザ位置共有の手順のメモです。 xr-physics-work-etc.hatenablog.com 前回の設定で、入室時に「Player」オブジェクトを生成し入室したことはわかりましたが、ユーザ位置に追従していません。 今回は、各ユーザの頭の位置に「…

Photon(PUN2)での簡単な共有(ルームへの入室まで)

今回は下記の続きで、共有までの手順のメモです。 xr-physics-work-etc.hatenablog.com 今回は、実際にPhoton Cloudと通信し、ルームを作成、ユーザオブジェクトを作成するまでを行います。 Unity上でのMRTK側の設定はあちこちで解説されているので省略。 最…

Photon(PUN2)の導入準備

Photon(PUN2)の導入方法(準備)を書き留めておきます。 今回はPhoton Cloud中心に、一部設定はPhoton Serverにも触れて記載します。 ※Photon Serverを構成できるようなPCは手元にないですが。。。 前提 今回使用した各パッケージとバージョンは以下です。 U…

はじめに

1年前に触れたROSをほとんど忘れていたことに衝撃を受け、備忘録作成を決意。 会社の先輩に感化され、技術ブログという形をとることにしました。 xR系と物理学(流体や電磁気など)を絡めつつ、気になった技術とか、作業の備忘録的に(ごった煮な感じで)書…