サポートチケットを作成する
フォローする

Q100455:CaraVR用のLinuxでのVRヘッドセットの有効化

概要

この記事では、LinuxでVRヘッドセットを有効にする方法についてのガイダンスを提供します。これには、CaraVRで動作するように新しいNVidiaドライバを設定する方法、およびsudo / rootとしてNukeを起動しなくても動作するようにヘッドセットを設定する方法が含まれます。


詳しくは

HTC ViveやOculus Rift CV1などのヘッドセットのLinuxサポートには、CaraVRインストールプロセスの一部としてインストールされるOpenHMDサードパーティライブラリのようなドライバーが必要です。ただし、NVidiaドライバが変更されたため、すべてのCaraVRバージョンがモニター 出力ディスプレイデバイス としてヘッドセットを使用できるようにするには、NVidiaの設定ファイルを調整する必要があり ます。

注: 設定ファイルを調整する前に、NVidia GPUドライバが最新のものであることを確認してください。それらを更新するには、以下にリンクされたNVidiaウェブサイトをチェックしてください:

https://www.nvidia.com/Download/index.aspx?lang=ja-in

NVIDIAドライバの設定

設定ファイルを調整するために必要な手順は次のとおりです。

1)sudoまたはrootとして、テキストエディタで次のファイルを開きます。

/etc/X11/xorg.conf

2) セクション "Device" と書かれている設定ファイルのセクションを見つけます

3)次のように、セクションに次の行を追加します。

Option "AllowHMD" "yes"


4)更新したファイルを保存してヘッドセットデバイスを接続します

5)マシンを再起動します

NVidiaの設定ファイルが調整されたので、あなたのVRヘッドセットがNukeとCaraVRを起動することによって動作することをテストすることができます。 Nukeは sudoまたはrootとして起動する 必要があります。 ヘッドセットを使用するオプションがViewerノードのMonitorOutDeviceノブに表示されるはずです。

注: CaraVRでヘッドセットを使用する方法の詳細については、次のリンクで当社のマニュアルを確認することもできます。   あなたの仕事を見直す

ルートまたはスードとしてNUKEを起動せずにヘッドセットを使用する

sudo / rootなしでNukeを起動し、ビューアーノードでヘッドセットを有効にしようとすると、ヘッドセットが機能しない可能性があり、以下のメッセージが表示されます。



この問題は、Linuxがシステムに接続されているUSBデバイスへのアクセス許可をどのように管理しているかによるものです。この問題を克服するための最も簡単な方法は、すべての権限が付与されているので、Nukeをroot / sudoとして起動することです。ただし、Nukeをroot / sudoとして実行すると、既存のパイプラインに干渉する可能性があります。

Nukeをsudoまたはrootとして起動する必要なしにヘッドセットを使用できますが、これには追加の設定が必要です。

ROU Tまたは SUDO なしでOCULUS RIFT CV1を使用する

以下の手順で、Oculus Rift CV1を83-hmd.rules udevファイルに追加します。これにより、「Rift(CV1)」は既に使用中のメッセージが表示されなくなります。

:これらの手順を実行する前に、CV1ヘッドセットを接続したり、Nukeを起動したりしないでください。

1)ヘッドセットを使用したいユーザーのユーザーIDがグループplugdevに属していることを確認し、必要に応じてplugdevという許可グループを作成します。許可グループを作成し、そのグループにユーザーIDを追加する方法については、Linuxの配布資料を参照してください。

2)sudoまたはrootとして 、テキストエディタで / etc / udev / rules.d / 83-hmd.rules 開くか作成して開き ます。

3)ファイルに次の行を追加します。

SUBSYSTEM=="usb", ATTR{idVendor}=="2833", MODE="0666", GROUP="plugdev"

4) ファイルを 保存する

5)sudoまたはRootとして、以下のコマンドを実行します。

sudo udevadm control --reload-rules

6)本機を再起動してください。

7)CV1ヘッドセットを差し込み、Nukeを起動します。

N OTE:Linux上CV1のヘッドセットを使用する場合、それはハァハァビューアのモニタ出力ノブを有効に有効になるまでCV1が黒表示されることに注意してください。

ルートやSUDOなしでHTC VIVEを使う

以下の手順で、HTC Viveを83-hmd.rules udevファイルに追加します。これにより、「HTC Vive」は既に使用中であるというメッセージが表示されなくなります。

1)ユーザーIDがグループplugdevに属していることを確認し、必要に応じてplugdevというグループを作成します。グループを作成し、グループにユーザーIDを追加する方法については、Linuxディストリビューションの資料を参照してください。

2)sudoまたはrootとして 、テキストエディタで / etc / udev / rules.d / 83-hmd.rules 開くか作成して開き ます。

3)以下のコード行をファイルに追加します。これらはSteamVR GitHubページ( https://github.com/ValveSoftware/SteamVR-for-Linux#usb-device-requirements) から派生したもの です。

# HTC Vive HID Sensor naming and permissioning

KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2101", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2000", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1043", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2050", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2011", MODE="0666", GROUP="plugdev"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2012", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", MODE="0666", GROUP="plugdev"

# HTC Camera USB Node

SUBSYSTEM=="usb", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8328", MODE="0666", GROUP="plugdev"

# HTC Mass Storage Node

SUBSYSTEM=="usb", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8200", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8a12", MODE="0666", GROUP="plugdev"

4)ファイルを保存する

5)sudoまたはRootとして、以下のコマンドを実行します。

sudo udevadm control --reload-rules

6)本機を再起動してください。

7)ヘッドセットを接続します(ヘッドセットが既に接続されている場合)、ヘッドセットのデスクトップの背景が見えるように、もう一度接続する必要があります。

8)Nukeを起動し、「HTC Vive」がすでに使用中のメッセージがなくてもヘッドセットを使用できるかどうかをテストします。

「HTC Vive」がすでに使用中であることを示すメッセージが引き続き表示される場合は、ヘッドセットのデバイス/ベンダーIDが異なる可能性があるため、これらのID用のカスタムルールを83-hmd.rulesファイルに追加する必要があります。これは以下のステップを使用して行うことができます。

1)ターミナルを開いて実行します。

lsusb

2)これはあなたに以下のような結果を与えるでしょう:

 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0bda:0181 Realtek Semiconductor Corp.
Bus 002 Device 055: ID 0bb4 : 2744 HTC (High Tech Computer Corp.)
Bus 002 Device 003: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 002 Device 056: ID 0bb4 : 0306 HTC (High Tech Computer Corp.)
Bus 002 Device 057: ID 0424:274d Standard Microsystems Corp.
Bus 002 Device 058: ID 0bb4 : 2134 HTC (High Tech Computer Corp.)
Bus 002 Device 007: ID 0d3d:0040 Tangtop Technology Co., Ltd PS/2 Adapter
Bus 002 Device 059: ID 0bb4:2c87 HTC (High Tech Computer Corp.)
Bus 002 Device 060: ID 28de:2101  
Bus 002 Device 061: ID 28de:2101  
Bus 002 Device 062: ID 28de:2000  
Bus 002 Device 063: ID 0bb4:2c87 HTC (High Tech Computer Corp.)

Bus 002 Device 036: ID 0c45:6340 Microdia Camera

IDセクションがidVendorとして読み取ることができます:idProductは 、これらの値を使用して、/etc/udev/rules.d/83-hmd.rulesファイルのための追加ルールを作成することができます。

3)sudoまたはrootとして、テキストエディタで/etc/udev/rules.d/83-hmd.rulesを開きます。

4)<missingVendor>と<missingProduct>を、 lsusbの結果に表示されている、 83-hmd.rulesファイルにまだ含まれていないデバイスに置き換えて、次の行を追加します。

SUBSYSTEM=="usb", ATTRS{idVendor}=="<missingVendor>", ATTRS{idProduct}=="<missingProduct>", MODE="0666", GROUP="plugdev"

この例では、NukeとCaraVRの権限を許可するために、以下の3行が追加されています。

 # Extra rules

SUBSYSTEM=="usb", ATTRS{idVendor}=="
0bb4 ", ATTRS{idProduct}==" 0306 ", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}==" 0bb4 ", ATTRS{idProduct}==" 2134 ", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}==" 0bb4 ", ATTRS{idProduct}==" 2744 ", MODE="0666", GROUP="plugdev"

5)ファイルを保存する

6)sudoまたはrootとして、以下のコマンドを実行します。

sudo udevadm control --reload-rules

7)本機を再起動してください。

8)ヘッドセットを差し込みます。ヘッドセットがすでに差し込まれている場合は、ヘッドセットのデスクトップの背景が見えるように、もう一度差し込む必要があります。

9)Nukeを起動すると、ビューアのモニタ出力有効化ノブでヘッドセットを有効にしたときにヘッドセットが使えるようになります。

追加のトラブルシューティング

1)OpenHMDの他のバージョンをインストールすると、CaraVRに同梱されているものと干渉する可能性があります。ヘッドセットで問題が発生した場合は、他のバージョンのOpenHMDまたはお使いのマシンにインストールされている可能性のある他のヘッドセットドライバをアンインストールしてください。

2)AllowHMDプロセスが完全に自動的に機能しないことがあります。この場合、Nukeで検出されないヘッドセットを修正するには、ヘッドセットがセカンドモニタとして検出されているが無効になっているNVidia設定を開いてから有効にします。これでこの問題は解決するはずです。Nukeを再起動すると、ヘッドセットがViewerノードのMonitorOutDeviceノブに表示されるはずです。

3)現在、ヘッドセットでビューアをプレビューするとき、CaraVRはデフォルトでビューアをフルスクリーンにしていないようなので、ビューアはその背後のデスクトップの背景を示す左上隅にしか表示されないかもしれません。

我々はこれをバグとして我々の開発チームに記録しました、そしてあなたは以下のリンクを使ってバグの状態を追跡することができます:

TP 370526 - LinuxでヘッドセットがNukeからの出力ビューアをフルスクリーンで表示しない。

この問題を回避するには、マウスカーソルをヘッドセット画面に移動し、ビューポートをダブルクリックします。これにより、ヘッドセットの全画面表示になります。



参考文献

OpenHMDではなくLinux上のSteamVRをヘッドセットドライバとして使用することもできますが、執筆時点では、ValveはCentOS 6/7でSteamVRをサポートしていないため、正式にはサポートされていません。ぬけ。

CaraVR、Nuke、Steam VRをCentos 6/7以外のLinuxディストリビューションにインストールできる場合は、以下の手順を使用してヘッドセットを機能させることができます。

  1. SteamVRがインストールおよび更新されていることを確認し、SteamVRアプリケーションが正常に実行されるまで、SteamVRで必要な構成手順をすべて実行します。
  2. SteamVRを閉じますが、Steamは実行し続けます
  3. ターミナルを開き、同じセッションで、以下の2行を実行し、システムの特定のインストールに合わせて必要に応じて調整します。

/home/username/.steam/steam/ubuntu12_32/steam-runtime/run.sh

/usr/local/Nuke11.2v5/Nuke11.2

注: CaraVRとSteamVRの両方で正式にサポートされている単一のLinuxディストリビューションはないので、CaraVRとSteamVRの併用は十分にテストされておらず、期待通りに動作しない可能性があります。ただし、OpenHMDではなくSteamVR対応ヘッドセットのフレームレート、歪み補正、および視野設定の点で、パフォーマンスが向上する可能性があります。

この記事は役に立ちましたか?
/

We're sorry to hear that!

Please tell us why.
0人中0人がこの記事が役に立ったと言っています

コメント