지원 티켓 만들기
팔로우

Q100455 : CaraVR 용 Linux에서 VR 헤드셋 사용

개요

이 기사에서는 Linux에서 VR 헤드셋을 사용하는 방법에 대한 지침을 제공합니다. 여기에는 CaraVR과 함께 작동하도록 최신 NVidia 드라이버를 구성하는 방법과 Nuke를 sudo / root로 시작할 필요없이 헤드셋을 구성하는 방법이 포함됩니다.


추가 정보

HTC Vive 및 Oculus Rift CV1과 같은 헤드셋에 대한 Linux 지원에는 OpenHMD 타사 라이브러리와 같은 드라이버가 필요합니다.이 라이브러리는 CaraVR 설치 프로세스의 일부로 설치됩니다. 그러나 NVidia 드라이버가 변경되어 모든 CaraVR 버전이 모니터 출력 장치 로 헤드셋을 사용할 수 있도록 NVidia의 구성 파일을 조정해야합니다 .

참고 : 구성 파일을 조정하기 전에 NVidia GPU 드라이버가 최신 버전인지 확인하십시오. 업데이트하려면 아래 링크 된 NVidia 웹 사이트를 확인하십시오.

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

NVIDIA 드라이버 구성

다음은 구성 파일을 조정하기 위해 다음 단계가 필요합니다.

1) sudo 또는 root로서 텍스트 편집기에서 다음 파일을여십시오.

/etc/X11/xorg.conf

2) 구성 파일 섹션에서 "장치" 섹션을 찾으십시오.

3) 다음과 같이 섹션에 다음 행을 추가하십시오.

Option "AllowHMD" "yes"


4) 업데이트 된 파일을 저장하고 헤드셋 장치를 연결하십시오

5) 시스템 재부팅

이제 NVidia 구성 파일이 조정되었으므로 Nuke 및 CaraVR을 시작하여 VR 헤드셋이 작동하는지 테스트 할 수 있습니다. Nuke가 sudo 또는 root로 작동해야하고 헤드셋을 사용할 수있는 옵션이 이제 Viewer 노드의 MonitorOutDevice 노브에 나타나야합니다.

참고 : CaraVR과 함께 헤드셋을 사용하는 방법에 대한 자세한 내용은 다음 링크에서 설명서를 확인할 수도 있습니다.   작업 검토하기

NUKE를 ROOT 또는 SUDO로 실행하지 않고 헤드셋 사용

sudo / root없이 Nuke를 실행하고 뷰어 노드에서 헤드셋을 활성화하려고하면 헤드셋이 작동하지 않고 아래 메시지가 표시됩니다.



이 문제는 Linux가 시스템에 연결된 USB 장치에 대한 사용 권한을 관리하는 방법에 기인합니다. 이 문제를 극복하는 가장 간단한 방법은 Nuke를 root / sudo로 실행하는 것입니다. 모든 권한이 부여되지만 Nuke를 root / sudo로 실행하면 기존 파이프 라인을 방해 할 수 있습니다.

Nuke를 sudo 또는 root로 시작할 필요없이 헤드셋을 사용할 수 있지만 추가 설정이 필요합니다. 자세한 내용은 다음과 같습니다.

ROOT 또는 SUDO 없이 OCULUS RIFT CV1 사용

다음 단계에서는 "Rift (CV1)"이 이미 사용 중임 을 나타내는 83-hmd.rules udev 파일에 Oculus 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 헤드셋을 연결하고 핵무기를 시작하십시오.

N OTE : Linux에서 CV1 헤드셋을 사용하는 경우, 그것은 핵무기 뷰어의 수 모니터 출력 노브에서 활성화 될 때까지 CV1 검은 색 표시 점에 유의하시기 바랍니다.

뿌리 또는 수도가없는 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) "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 권한을 허용하기 위해 아래 세 줄이 추가되었습니다.

 # 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) 현재 헤드셋에서 뷰어를 미리 볼 때 뷰어는 기본적으로 뷰어를 전체 화면으로 보이지 않으므로 맨 아래 왼쪽 구석에 바탕 화면 배경을 표시 할 수 있습니다.

우리는 이것을 개발 팀의 버그로 기록했으며 아래 링크를 사용하여 버그 상태를 추적 할 수 있습니다 :

TP 370526 - 헤드셋에서 Linux의 누크 (Nuke) 출력 뷰어가 전체 화면으로 표시되지 않습니다.

이 문제를 해결하려면 마우스 커서를 헤드셋 화면으로 이동하고 뷰포트를 두 번 클릭하여 헤드셋에서 전체 화면으로 만들어야합니다.



더 읽기

OpenHMD가 아닌 헤드셋 드라이버로 Linux에서 SteamVR을 사용할 수도 있습니다. 그러나 서면 작성 당시에는 CaraVR에 지원되는 Linux 배포판 인 CentOS 6/7에서 SteveVR을 지원하지 않기 때문에 공식적으로 지원되지 않습니다. 핵.

Centa 6/7 이외의 Linux 배포판에서 CaraVR, Nuke 및 Steam VR을 설치할 수있는 경우 아래 단계를 사용하면 헤드셋이 작동 할 수 있습니다.

  1. SteamVR이 설치되고 업데이트되었는지 확인하십시오. SteamVR 응용 프로그램을 성공적으로 실행할 수있을 때까지 SteamVR에서 필요한 모든 구성 단계를 수행하십시오.
  2. SteamVR을 닫지 만 Steam을 계속 실행하십시오.
  3. 터미널을 열고 같은 세션에서 아래의 두 행을 실행하여 시스템의 특정 설치에 필요한만큼 조정하십시오.

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

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

참고 : CaraVR과 SteamVR에서 공식적으로 지원되는 단일 Linux 배포판이 없으므로 SteamVR과 함께 CaraVR을 사용하는 것은 완전히 테스트되지 않았으므로 예상대로 작동하지 않을 수 있습니다. 그러나 OpenHMD가 아닌 SteamVR 지원 헤드셋의 프레임 율, 왜곡 보정 및 시야 설정에서 더 나은 성능을 제공 할 수 있습니다.

도움이 되었습니까?
/

We're sorry to hear that!

Please tell us why.
0명 중 0명이 도움이 되었다고 했습니다.

댓글