게임

S3D & WibbleWobble

게이머들의 수많은 요청에 따라, 저희는 하드웨어를 개조하고 드라이버를 업그레이드하여 새로운 WibbleWobble 기술과 완벽하게 호환되도록 하고 있습니다. 이 기술을 사용하면 개발자가 해당 모드를 제공하지 않은 경우에도 최신 게임을 진정한 입체 3D로 플레이할 수 있습니다. 빠른 모니터와 호환 장비가 있다면 WibbleWobble로 강력하고 생생한 게임 광경을 즐기십시오.

WibbleWobble Core
Discord 커뮤니티

이것이 무엇인가

WibbleWobble은 평범한 평면 게임을 "세계로 통하는 창"과 같은 입체 3D로 바꿔줍니다. 머리 움직임 추적을 통해 현실 세계처럼 게임을 볼 수 있습니다. 값비싼 특수 3D 모니터가 필요하지 않습니다. 소프트웨어와 저렴한 3D 안경이 진정한 마법을 만들어냅니다...

장점

이전에는 PC에서 사용할 수 없었던 Steam의 방대한 VR 게임 라이브러리에 접근할 수 있습니다. 그 게임들은 비싼 VR 헤드셋에서만 작동했습니다 - 예를 들어 전설적인 Half-Life: Alyx 같은 게임 말이죠. 대형 최신 게이밍 디스플레이에서 뛰어난 품질의 3D 쇼를 보게 될 것입니다. 120FPS 이상의 높은 프레임 속도, 아름답고 선명한 이미지, 생생한 색상. 그리고 가장 큰 장점을 잊지 마십시오 - 디스플레이가 매우 좋아지고 저렴해졌습니다. 최고의 모니터 개요

내부 작동 방식
호기심 많은 게이머를 위한
기술이 어떻게 구축되고 작동하는지에 대한 대중적인 수준의 설명입니다. 관심이 없다면 읽을 필요가 없습니다 - 건조한 내용입니다.

게임이 3D를 그리는 방법
게임에서 3D 이미지를 생성하는 일반적인 방법은 장면을 두 번 렌더링하는 것입니다 - 왼쪽 눈과 오른쪽 눈을 위해 각각, 장면 중심을 기준으로 카메라를 가상으로 이동시킵니다. 이는 리소스가 많이 들고 게임 엔진의 내장 지원이 필요합니다. 모든 게임이 이 작업을 수행할 수 있는 것은 아닙니다. WibbleWobble은 두 가지 다른 경로를 제공하며, 그 차이는 근본적입니다 - 이미지 품질과 이미지 아티팩트 세트를 모두 결정합니다.

경로 1: ReShade Client - 평면 프레임에서 스테레오 합성
게임은 하나의 일반적인 뷰를 렌더링합니다. SuperDepth3D ReShade 효과는 해당 프레임과 장면의 깊이 버퍼를 가져와 깊이에 따라 픽셀을 이동시켜 두 번째 시점을 재구성합니다. 게임 엔진은 스테레오에 대해 전혀 알지 못합니다. 성능 면에서 저렴하며 거의 모든 DX11/DX12 게임에서 작동합니다. 대가는 방법 자체에 내재된 아티팩트입니다. 이에 대해서는 아래 "단점" 섹션에서 설명합니다.

경로 2: OpenVR Client - 진정한 3D 렌더링
WibbleWobble은 SteamVR에 가상 VR 헤드셋으로 등록됩니다. VR 지원 게임 또는 VR 모드가 있는 게임은 실제 헤드셋이 하는 것처럼 동공 간 거리만큼 분리된 두 대의 카메라에서 장면을 두 번 렌더링합니다. IPD, 눈당 해상도 및 초점 거리는 VR Config에서 설정됩니다. 여기서 WibbleWobble은 아무것도 합성하지 않습니다: 준비된 스테레오 쌍을 가져와 프레임 순차적으로 화면에 출력하고 셔터 안경을 동기화합니다. 이는 성능 비용이 더 많이 들지만 3D 형상은 절대적으로 정확합니다. 윤곽선을 따라 구멍이 없고, "판지" 효과가 없으며, 각 눈은 고유한 반사와 하이라이트를 얻습니다. 본질적으로 이것은 헤드셋 없이 일반 모니터에서 3D 안경으로 VR 게임을 플레이하는 방법입니다.

재투영(Reprojection) - 시야 확장 메커니즘
재투영은 단안 모드를 포함한 두 모드 모두에서 작동합니다. 고성능 셰이더가 게임 프레임을 가져와 작업 공간의 형상에 매핑합니다: 단일 모니터, 4개 모니터 또는 곡면 스크린에 매핑합니다. 헤드 트래킹(OpenTrack)을 통해 이미지가 머리를 따라 이동하고 모니터는 가상 세계로 통하는 창 역할을 시작합니다 - "VR 물고기 탱크" 효과입니다. 재투영의 목적은 다중 모니터 사용을 위한 올바른 세계 규모와 올바른 시야(FOV)를 얻는 것입니다. 재투영은 완전히 끌 수 있으며(Client Config -> Reprojection: Disabled) 스테레오 출력, BFI 및 업스케일러만 사용할 수 있습니다 - 단일 디스플레이의 일반적인 시나리오입니다.
* 프로젝트 작성자가 여러 패널에 걸쳐 "세계를 확장"한다는 아이디어에 대해 지나치게 낙관적이었다고 말해야 합니다. 강력한 그래픽 카드조차도 이를 위한 충분한 성능이 없습니다. 단일 4K 디스플레이에 충분한 속도가 나온다면 운이 좋은 것입니다. 여러 디스플레이에서는 작동하지 않을 것입니다...

FOV(시야): 시야각입니다. 가상 카메라가 프레임에서 캡처하는 세계의 섹터를 결정합니다. 수직 및 수평으로 별도로 도 단위로 측정됩니다. 작은 FOV(40-50°)는 망원 렌즈처럼 보입니다: 큰 물체가 있는 좁은 섹터입니다. 큰 FOV(100-120°)는 액션 카메라처럼 광각입니다. 측면을 많이 볼 수 있지만 가장자리가 늘어나고 물체가 더 멀리 더 작게 나타납니다. 이것은 WibbleWobble의 핵심 매개변수입니다. 프로그램은 물리적 모니터에 올바르게 투영하기 위해 게임이 프레임을 그린 각도를 알아야 합니다. 그렇기 때문에 Game Config에는 FOV Vertical과 FOV Horizontal이라는 두 개의 필드가 있으며, 한 가지 요구 사항이 있습니다: 값이 게임 자체에 설정된 값과 일치해야 합니다. 한 값을 변경하면 다른 값이 창의 종횡비에 맞게 자동으로 다시 계산됩니다.

FOV가:
너무 크면 세계가 장난감처럼 보이고 물체의 크기가 왜곡됩니다
너무 낮으면 세계가 거대해 보이고 모든 것이 당신 위에 우뚝 솟은 것처럼 보입니다
3D에서는 깊이가 크기와 함께 깨지고 눈의 피로가 발생합니다

"세계로 통하는 창"으로서의 헤드 트래킹
OpenTrack 방법을 사용하여 애플리케이션 핸들러는 머리의 위치를 추적하고 모니터가 3D 장면으로 통하는 가상 창을 렌더링하도록 투영을 이동시킵니다. 이것은 시차 효과를 만듭니다. 머리를 움직이면 이미지가 약간 이동하여 마치 실제로 창문을 통해 보고 있는 것처럼 느껴집니다.

프레임 순차 스테레오 출력
애플리케이션은 게임에서 프레임이 준비되는 대로 가변 속도로 수신합니다. 그런 다음 클라이언트는 60Hz에서 재생을 위해 프레임 속도를 조정합니다. 스테레오 쌍의 소스는 SuperDepth3D, VR 모드 또는 기성 3D 콘텐츠일 수 있습니다. WibbleWobble은 side-by-side 또는 checkerboard 형식(Client Config -> Source Format)으로 이를 수락하고 FrameBufferDecode에서 디코딩합니다. 그런 다음 렌더러는 셔터 안경을 동기화하면서 이를 120Hz 프레임 순차 스트림으로 변환합니다. 다음 이미터가 지원됩니다: NVIDIA 3D Vision, Open3DOLED, DLP 프로젝터, 3D Ready 및 수제 Arduino/VESA IR 이미터.

모션 블러 및 크로스토크 방지
모션 블러는 디스플레이에 의해 생성되는 흐림 현상입니다. 최신 LCD 및 OLED 패널은 프레임 지속 시간 동안 픽셀을 켜진 상태로 유지합니다 - 샘플 앤 홀드 모드입니다. 픽셀이 켜져 있고 한 위치에 고정되어 있는 동안 눈은 본능적으로 움직이는 물체를 계속 따라갑니다. 결과적으로 이미지가 망막 자체에 "번져" 보입니다. 디스플레이의 각 개별 프레임이 완벽하게 선명하더라도 말이죠. 픽셀이 켜져 있는 시간이 길수록 번짐이 강해집니다. 이 결함은 미세한 디테일을 숨기고 3D 모드에서 이미지를 더욱 저하시킵니다.

픽셀이 켜져 있는 시간을 줄이기 위해 WibbleWobble은 두 가지 도구를 제공합니다:
블랙 프레임 삽입 - 유용한 프레임 사이에 검은 프레임을 삽입합니다 (Client Config의 Black Frame Insertion Interval 매개변수).
Blur Busters의 CRT 빔 시뮬레이터 - CRT의 전자빔 스캔을 모방하는 셰이더입니다: 전체 프레임이 아닌 라인별로 이미지를 차단합니다. 더 나은 결과를 제공하지만 디스플레이에 까다롭습니다: 감마 2.2 또는 2.4, ABL/APL 비활성화, OLED는 SDR 모드가 필요합니다. FALD 및 MiniLED 패널에서는 백라이트 관성으로 인해 제대로 작동하지 않습니다.

이 두 모드는 동시에 활성화해서는 안 됩니다. CRT Sim을 사용할 때는 Client Config의 Black Frame Insertion Interval 매개변수가 0이어야 합니다. 게임이 디스플레이가 프레임을 출력하는 속도보다 낮은 속도로 실행될 수 있으며 프로그램이 누락된 프레임을 디스플레이 속도까지 채운다는 점을 별도로 강조할 가치가 있습니다. 그러나 이것은 새로운 중간 이미지의 생성이 아닙니다 - 준비된 이미지의 반복입니다. 즉, 리샘플링 방법이 제공하는 부드러움은 전혀 없습니다.

크로스토크는 한쪽 눈을 위한 이미지가 부분적으로 다른 쪽 눈에 도달하는 현상입니다. 결과적으로 시청자는 물체 옆에 이중 윤곽선이나 반투명 "고스트"를 보게 됩니다. 이는 3D 이미지의 품질을 저하시키고 깊이감을 감소시킵니다. 이를 방지하기 위해 블랙 프레임 삽입 및 Blur Busters CRT 빔 시뮬레이터 지원이 내장되어 있습니다. 포괄적인 크로스토크 억제를 위해 영리한 모드가 사용됩니다: 게임 이미지는 60Hz로 그려지고, 안경은 120Hz로 동기화를 수신하며, 화면 출력은 프레임 반복으로 240Hz로 실행됩니다.
WibbleWobble은 각각 게임에 추가되는 고유한 클라이언트와 함께 두 가지 작동 방법을 지원합니다. 이는 호환되는 게임 유형을 위해 설계되었습니다. 아래 표는 이러한 방법의 주요 속성을 요약합니다.
방법 목적 3D 소스 장점 단점
ReShade Client DirectX 11 / 12 게임용 깊이 버퍼 + SuperDepth3D 높은 호환성
낮은 GPU 부하
VR 불필요
아티팩트 가능성
3D 품질이 게임에 따라 다름
OpenVR Client VR 게임 및 VR 모드가 있는 게임 진정한 스테레오 쌍 완벽한 형상
최대 3D 품질
올바른 반사 및 조명
SteamVR 필요
높은 GPU 부하

WibbleWobble을 사용하는 사람

입체 3D 게임 애호가 또는 2019년에 NVIDIA가 공식적으로 단종한 NVIDIA 3D Vision 하드웨어 소유자. 3D 안경 및 빠른 디스플레이 소유자. 이 기술을 사용하면 내장 스테레오 지원이 없는 최신 게임을 플레이할 수 있습니다. 가격 대비 성능이 뛰어난 솔루션입니다 - 저렴하고 모든 사람이 접근할 수 있습니다. 그러나 이미지 품질은 선택한 방법과 특정 게임에 따라 다릅니다. 아래 제한 사항에 대해 읽어보십시오.

발견된 문제 및 제한 사항

ReShade Client
모든 장점에도 불구하고 이 방법에는 별도로 언급해야 할 제한 사항이 있습니다. 이는 프로그램의 불완전성 때문이 아니라 선택한 작동 원리에서 비롯됩니다. 두 번째 스테레오 시점은 장면 모델에서 렌더링되는 것이 아니라 이미 완성된 프레임과 깊이 맵에서 재구성됩니다. 소스 프레임에서 전경 물체 뒤에 숨겨진 것이 무엇인지에 대한 데이터가 없으면 복구할 곳이 없습니다.

물체 가장자리의 구멍 - 폐색 해제(disocclusion)
이것은 방법의 주요 결함입니다. 프로그램이 두 번째 눈 또는 머리 회전을 위해 시점을 이동할 때 소스 프레임에서 전경 물체의 가장자리에 의해 숨겨졌던 배경의 일부가 보여야 합니다. 그러나 아무도 해당 픽셀을 렌더링하지 않았습니다 - 물리적으로 존재하지 않습니다. 프로그램이 간격을 채울 것이 없으므로 가장자리 픽셀을 늘려 윤곽선을 따라 "고무 같은" 번진 후광을 생성하거나 "그럴듯하지만" 일반적으로 잘못된 패치를 대체합니다. 시점 이동이 강할수록 후광 밴드가 넓어집니다. 이것은 구현 버그가 아니라 방법 자체의 한계입니다: 단일 이미지에서 물체 뒤에 숨겨져 있고 보이지 않는 것을 추출할 수 없습니다.

머리 움직임이 왜곡을 증폭시킵니다
일반 스테레오에서 시점 간 거리는 작고 일정합니다 - 동공 간 거리와 같습니다. 그러나 "세계로 통하는 창"을 사용하면 머리가 여러 방향으로 수십 센티미터 이동하므로 상대적 시점 이동이 자연스러운 것보다 몇 배 더 크고 구멍과 번짐이 더 커집니다. 결과는 이렇습니다: 가만히 앉아 있으면 아티팩트가 거의 없지만 3D 효과도 약합니다; 많이 움직이면 효과는 있지만 물체 가장자리를 따라 모든 것이 번지고 떠다닙니다.

그래픽은 깊이 맵에 의존합니다
프로그램은 장면의 모든 지점까지의 거리에 대한 올바른 정보가 필요합니다. 게임이 항상 이를 제공하지는 않거나 전부 제공하지 않습니다. 투명한 표면 - 물, 유리, 연기, 불, 잎사귀 - 일반적으로 상세한 깊이가 없거나 엔진이 전혀 생성하지 않습니다. 결과적으로 물체가 잘못된 거리에 있게 됩니다: 물은 잘못된 위치에 붙고, 연기는 두 배로 보이며, 입자는 다른 지점에 공중에 떠 있습니다. 게다가 모든 게임이 호환 가능한 깊이 버퍼를 출력하는 것은 아닙니다 - 일부는 반전되어 있고, 다른 일부는 보호되어 읽을 수 없습니다.

반사와 하이라이트가 가장 많이 깨집니다
거울, 물, 젖은 아스팔트 및 금속은 그 안에 반사된 이미지가 아니라 자체 표면의 깊이에 의해 정의됩니다. 시점이 이동하면 반사가 어디론가 표류합니다. 하이라이트가 표면에 "그려져" 있으면 현실 세계에서처럼 행동하지 않습니다. 가장 눈에 띄는 광택 콘텐츠가 스테레오에서 평평하고 잘못 보이는 것은 바로 이것 때문입니다.

인터페이스, 조준선 및 HUD
프레임 위의 2차원 요소 - 체력 바, 메뉴, 조준선 - 는 깊이가 0으로 그려지므로 처리 후 잘못된 스테레오 거리에 있게 됩니다. 인터페이스는 화면 안으로 박히거나 장면 앞에 매달립니다. 조준선은 그 자체로 골칫거리입니다; 깊이 위치를 거의 항상 수동으로 조정해야 합니다.

두 눈을 위한 하나의 프레임
두 눈은 단지 이동된 동일한 이미지를 봅니다. 정직한 스테레오 렌더링에서는 각 눈이 고유한 올바른 하이라이트, 그림자 및 굴절을 얻습니다; 여기서는 그렇게 되지 않습니다. 이 때문에 물체는 입체적인 몸체가 아닌 깊이별로 배열된 합판에서 잘라낸 평평한 레이어로 나타납니다. 영어 자료에서는 이 효과를 "cardboard cutout" 효과라고 합니다.

게임별 조정
시야, 깊이 범위 및 수렴은 각 게임에 대해 수동으로 설정됩니다. 잘못 설정하면 과도한 수렴으로 인한 눈의 피로, 세계가 장난감처럼 보이거나 거대해 보이는 잘못된 크기, 또는 완전히 반전된 깊이가 발생합니다. 이것은 "설치하고 플레이"하는 솔루션이 아니라 "조정하고 알아내는" 솔루션입니다.

지연 및 불균일한 프레임
게임은 프레임을 불균일하게 렌더링하고 클라이언트는 준비된 프레임을 반복하여 디스플레이의 안정적인 fps에 맞춥니다. 반복 자체는 왜곡을 유발하지 않지만 작업과 이미지 사이의 지연이 누적됩니다: 프레임 캡처, 처리, 출력. 헤드 트래킹의 경우 이러한 지연은 장면의 "떠다님"으로 느껴집니다. Game Config에는 이를 위해 Frame Capture Delay 매개변수가 있어 캡처 순간을 조정합니다.

잔여 크로스토크 및 높은 모니터 요구 사항
소프트웨어 기술 - 블랙 프레임 삽입 및 60/120/240 모드 - 은 고스팅을 억제하지만 완전히 제거하지는 않습니다. 크로스토크는 여러 요인에 의해 결정되기 때문입니다: 디스플레이 패널과 안경 자체의 물리적 특성. 픽셀 응답 시간, 스위칭 속도, 안경 렌즈의 명암비 및 화면의 수직 주사율에 따라 다릅니다. 또한 가장 공격적인 모드는 짧은 픽셀 지속 시간을 가진 빠른 240Hz 패널이 필요하며, 모든 사용자가 가지고 있는 것은 아닙니다. NVIDIA 3D Vision과 달리 ReShade는 기성 볼륨을 재현하는 것이 아니라 평면 프레임에서 합성합니다. 그렇기 때문에 윤곽선을 따른 구멍, 잘못된 반사 및 떠다니는 가장자리는 방법의 안정적인 아티팩트이며 일시적인 단점이 아닙니다.
OpenVR Client
여기서 스테레오 형상은 정직하며 이미지 합성 아티팩트(폐색 해제, "판지", 깨진 반사)는 없습니다. 그러나 이 방법에도 고유한 비용이 있으며, 그것은 다릅니다.

게임이 VR을 지원해야 합니다
이것이 주요 제한 사항입니다. 이 방법은 임의의 게임에서 작동하지 않습니다: 내장된 VR 지원 또는 VR 모드가 필요합니다. 기성 모드가 없으면 OpenVR 경로가 작동하지 않으며 모든 아티팩트가 있는 ReShade만 남습니다. 즉, 첫 번째 경로가 존재하는 광범위한 호환성이 여기서는 완전히 손실됩니다.

그래픽 카드에 대한 이중 부하
장면은 실제로 두 대의 카메라에서 두 번 렌더링됩니다. 단일 뷰의 재투영이 제공하는 절약은 없습니다: 실제 VR에서와 마찬가지로 성능이 저하됩니다. 이는 VR Config의 해상도 설정으로 부분적으로 보상됩니다 - 눈당 해상도를 낮출 수 있으며 WibbleWobble은 이미지를 디스플레이 해상도로 확장합니다.

복잡한 설치
SteamVR이 설치되어 있어야 합니다. 드라이버는 관리자 권한으로 Install.bat를 통해 등록되며, 그 후 config\steamvr.vrsettings 파일에 두 줄을 수동으로 추가해야 합니다: "forcedDriver": "WibbleWobbleVR" 및 "activateMultipleDrivers": "true". 그런 다음 STANDING ONLY 모드로 Room Setup을 완료합니다. 어느 단계에서든 오류가 발생하면 스테레오 대신 원인에 대한 명확한 메시지 없이 검은 화면이 나타납니다.

OpenVR 자체의 한계
일부 설정은 즉시 변경할 수 없습니다. 해상도나 출력 속도를 변경하면 SteamVR을 다시 시작해야 합니다. 이것은 프로그램이 아닌 플랫폼의 한계이지만 게임 조정 속도를 눈에 띄게 늦춥니다.

렌더링 최적화가 일부 게임을 깨뜨립니다
VR Config에는 하나의 눈만 렌더링하거나 절반 FOV로 두 눈을 렌더링할 수 있는 Optimise Single Eye 매개변수가 있습니다. 프로젝트 작성자는 직접 경고합니다: "Both" 모드가 가장 문제가 많습니다 - 비네팅 및 눈 동기화 해제가 가능하며 이미지가 "이동"할 수 있습니다. 일부 게임에서는 최적화를 완전히 꺼야 합니다.

창 포커스 경쟁
일부 게임은 WibbleWobble 인터페이스에 포커스를 넘겨주지 않습니다: SHIFT + END 키 조합이 작동하지 않거나 UI가 그려지지만 제어할 수 없습니다. ALT + TAB을 통해 수동으로 전환해야 합니다. 별도의 문제: WibbleWobble 창을 닫으면 안 됩니다 - 프로그램이 이후에 복구되지 않으며 게임을 다시 시작해야 합니다.

실행할 때마다 재중심화
트래킹은 시작할 때마다 수동으로(SHIFT + .) 화면 앞 작업 영역의 정확히 중앙에 위치하도록 중심을 맞춰야 합니다. 중심을 맞추는 동안 머리가 그곳에 없었다면 재투영이 이상하게 작동하기 시작하고 크기가 "표류"합니다. 작성자 자신의 인정에 따르면 올바른 위치를 맞추는 데는 연습이 필요합니다. 이는 나중에 더 지능적인 트래킹 소프트웨어를 사용하여 수정할 수 있습니다.

개별 애플리케이션의 특이점
일부 프로그램은 특정 브랜드의 헤드셋에서만 작동합니다. 이를 위해 VR Config에는 WibbleWobble이 다른 장치(예: Vive)로 자신을 제시하게 만드는 Headset Identification 매개변수가 있으며, 이것이 없으면 DEOVR에서 헤드 트래킹이 작동하지 않습니다. 즉, 호환성은 곳곳에서 이러한 해결 방법에 의존합니다.

첫 번째 경로와의 공통점
하드웨어에 관한 모든 것은 두 방법 모두에 적용됩니다: 잔여 크로스토크, 빠른 패널 요구 사항, 정밀한 안경 동기화의 필요성. 스테레오 출력, 이미터, BFI 및 CRT Sim은 스테레오 쌍이 어디서 왔는지에 관계없이 동일하게 작동합니다.

공통적인 문제
구성의 복잡성 및 실행 준비. WibbleWobble을 사용해 보려면 상당한 시간을 문서를 연구하고 다양한 작은 작업을 수행하는 데 소비해야 합니다. 저희가 오류 없이 시작하기 전에 정리하는 데 며칠이 걸렸습니다. 작성자는 준비되지 않은 사용자를 무시하고 원버튼 자동 구성기를 만들지 않기로 선택했습니다. 바로 실행 복잡성 때문에 잠재적 사용자의 상당 부분이 멀어집니다.

주관적 품질 평가

프로젝트는 그래픽 결함을 보상하기 위해 다양한 방법을 사용합니다. 취해진 조치와 보상 없는 패널 대비 3D 품질의 대략적인 주관적 이득(%) 표를 참조하십시오. 평가는 시각적 테스트를 기반으로 하며 실험실 측정 결과가 아닙니다.

실제로 이득을 제공하는 것:
패널의 그리기 지연 시간을 보상하여 크로스토크를 몇 배로 줄이는 라인별 이미지 보정. 각 디스플레이 모델에 대한 OLED 지연 시간의 정밀 측정 및 안경 셔터가 열리고 닫히는 순간의 개별 조정. 드롭되거나 반복되는 프레임 없이 정밀한 안경 동기화. 동기 지터 억제 - 100마이크로초 이상의 지터는 액티브 3D에서 즉시 눈에 띕니다. 특정 패널의 응답 기능이 알려진 경우 이미지의 시간적 사전 보상. 이것이 바로 전문 VR 헤드셋 제조업체가 품질을 개선하기 위해 하는 일입니다.
CRTSim +15%
표준 BFI +30%
패널 그리기 보상 +50%
정밀한 안경 동기화 +50%
높은 fps (240-480 Hz) +100%
요약
WibbleWobble 기술은 일반 3D 플레이어가 제공하지 않는 것을 제공합니다: 머리 움직임 추적 및 생생한 "세계로 통하는 창" 효과. 당사의 드라이버 구현은 이미터와 안경의 뛰어난 속도 특성과 양질의 소프트웨어 덕분에 가장 장관인 3D를 얻을 수 있게 합니다.

ReShade.. OpenVR.. 선택

선택
게임을 3D로 플레이하고 싶습니까? ReShade Client
VR 게임 또는 VR 모드가 있습니까? OpenVR Client
단지 "세계로 통하는 창" 효과를 원하십니까? Mono + Reprojection
주의: 지금부터 다운로드한 모든 파일을 백신으로 확인하십시오!

연결

공통 소프트웨어 설치

1단계. 그래픽 카드 드라이버 업데이트
비디오 플레이어는 NVIDIA Studio 드라이버를 사용했습니다. 게임용으로는 GeForce Game Ready 드라이버로 교체해야 합니다.
NVIDIA 드라이버

설치하고 NVIDIA App에서 7단계에 설명된 대로 그래픽 카드를 최대 성능으로 재구성하십시오.
Windows 설정에서 > 설정 > 그래픽 설정으로 이동합니다. 스케줄러 정책을 활성화합니다: 성능 향상. SteamVR을 우선 순위 그룹에 추가합니다: 고성능.

속도

2단계. 이미터 드라이버 설치
3D Vision 이미터 또는 S3D 이미터를 사용하십시오.
두 장치 모두 동일한 호환 가능한 디지털 서명된 원본 드라이버가 적합합니다. S3D 이미터는 마지막 버튼을 약 2초 동안 길게 눌러 NVIDIA 모드로 전환해야 합니다.

s3d 이미터
NVIDIA 3D 컨트롤러 드라이버
설치하고 "장치 관리자"에서 성공을 확인하십시오: 이미터가 연결되면 장치 이름이 노란색 오류 삼각형 없이 나타납니다. PC에 두 개의 이미터를 동시에 연결하지 마십시오! WibbleWobble은 하나의 인스턴스에서만 작동할 수 있습니다. 설치 단계는 NVIDIA Gaming 섹션을 참조하십시오.

3단계. WibbleWobble 다운로드 및 압축 풀기
GitHub의 Releases 페이지로 이동합니다. 최신 버전을 다운로드하여 편리한 폴더에 압축을 풉니다. 영구적인 위치에 폴더를 선택하십시오 - 애플리케이션 등록 후에는 이동할 수 없습니다. 폴더 경로는 공백 없이 라틴 문자만 사용하여 작성해야 합니다.

4단계. 시스템에 공통 등록
Windows가 애플리케이션의 위치를 알 수 있도록 WibbleWobble 파일 및 COM 구성 요소를 시스템에 등록합니다. 이는 ReShade 및 OpenVR 두 클라이언트 모두에 필요합니다. WibbleWobbleClient 폴더로 이동합니다. Register.bat 파일을 마우스 오른쪽 버튼으로 클릭하고 "관리자 권한으로 실행"을 선택합니다. 완료될 때까지 기다리십시오; 결과 메시지와 함께 검은색 콘솔 창이 열립니다.

5단계. Windows 준비
필수 항목입니다 - 이것 없이는 이미지가 깨집니다: Windows 설정에서 화면 배율을 비활성화합니다. 디스플레이 > 배율 > 100%로 설정합니다.

6단계. GPU Tweak 3 및 유사한 ASUS 유틸리티가 설치된 경우 비활성화합니다. 이들은 지연 시간을 유발하고 이미지를 끊기게 하여 3D를 망칩니다.

7단계. 디스플레이 및 그래픽 카드 구성
기본 디스플레이를 제외한 모든 디스플레이를 비활성화하십시오!
1. NVIDIA 3D 스테레오 - 끄기
2. G-Sync - 끄기
3. 모니터 - 기본값으로 설정
4. 모니터 FPS - 120 Hz
5. Low Latency Mode - Ultra
6. Power Management - Prefer Maximum Performance
7. Vertical Sync - Use the 3D application setting
8. Max Frame Rate - 120 Hz

8단계. 테스트 게임 로드
편의를 위해 무료 벤치마크인 Superposition을 사용하겠습니다. 두 클라이언트를 모두 테스트하는 데 사용할 수 있습니다.
open-vr

사례: OpenVR Client

1단계. SteamVR 설치
Steam에서 설치합니다. 무료입니다.

steam

2단계. SteamVR에 OpenVR 클라이언트 드라이버 추가
WibbleWobble -> WibbleWobbleVR 폴더를 엽니다. 그 안에 또 다른 WibbleWobbleVR 폴더가 있습니다. \Steam \steamapps \common \SteamVR \drivers 폴더로 복사해야 합니다. - 이것이 드라이버 설치입니다.

3단계. SteamVR Home 비활성화
시작 시 Steam이 자체 3D 환경을 실행하고 화면을 캡처하지 않도록 config\steamvr.vrsettings 파일의 "steamvr" 섹션에 다음을 추가합니다: "enableHomeApp" : false, 이 작업을 수행하는 동안 SteamVR이 완전히 종료되어야 합니다. 작업 관리자에서 vrmonitor.exe 및 vrserver.exe를 확인하십시오.

4단계. 테스트 게임 실행
바탕 화면 아이콘을 클릭하여 Superposition을 엽니다. OpenVR Client를 통해 표시하려면 다음을 선택하십시오:

Virtual Reality
Graphics API - DirectX
VR Headset - SteamVR

테스트 실행
모든 것이 올바르게 수행되고 SteamVR이 구성을 읽었다면 "헤드셋 같은" 보기가 있는 제어 인터페이스 이미지를 즉시 표시해야 합니다. 그러나 우리에게는 이런 일이 발생하지 않습니다. 키보드에서 WibbleWobble 인터페이스를 호출해도 아무 작업도 수행되지 않습니다. 마우스가 빠져 나가고 제어가 작동하지 않습니다. 이미터를 활성화하거나 추가 작업을 수행하는 것은 불가능합니다...

이 시점에서 컴퓨터를 재부팅해야 합니다!

도움이 되었습니다. 재부팅 후 Superposition을 새로 실행하자 제어 인터페이스가 나타나고 마우스가 작동하기 시작했습니다. 게임의 두 시점이 표시됩니다. 실제로 3D로 렌더링됩니다. 이미터가 켜졌으며 이제 미세 그래픽 조정을 수행할 수 있습니다.

5단계. 그래픽 디스플레이 구성
SHIFT + END를 눌러 WibbleWobble 인터페이스를 엽니다. Game Config 메뉴 항목으로 이동합니다. 디스플레이에서 게임 창의 편리한 크기와 원하는 대로 "세계" 시야각을 설정합니다. 너무 크게 만들지 마십시오. 이미지가 자연스럽게 보이도록 목표를 설정하십시오. 매개변수를 변경한 후 Enter 키를 누르고 저장하십시오. 그렇지 않으면 클라이언트가 설정을 기억하지 못하고 다시 수행해야 합니다.

6단계. 3D 동기화 활성화
Emitter Config로 이동합니다: 확인란으로 NVIDIA 3D 이미터를 활성화합니다. 창 상단의 힌트에 따라 Sync Rate HZ를 설정합니다. 이미터의 LED가 밝은 녹색으로 켜져야 합니다. 안경의 전원 버튼을 누르고 스테레오가 나타나는지 확인하십시오.

7단계. 동기화 조정
안경이 켜졌지만 스테레오가 없거나 / 이중으로 보이거나 / 깜박이거나 / 시점이 바뀐 경우:
Sync Offset Microseconds를 조정합니다 - 안경이 열리는 위상입니다. Open Duration Microseconds를 조정합니다 - 렌즈가 열려 있는 지속 시간입니다. Sync Rate 지속 시간(값은 창 상단에 표시됨)보다 낮게 매개변수를 설정하십시오. 그렇지 않으면 스테레오가 사라집니다. 목표: 최소 이중화(크로스토크)를 얻습니다. 왼쪽 눈 이미지가 오른쪽으로 크게 새어 나가지 않아야 합니다. 나중에 모든 매개변수가 포함된 최적화된 구성 파일을 첨부할 예정입니다.

OpenVR Client 방법의 소감
3D 품질이 매우 좋습니다! 장면의 깊이는 놀랍고, 기하학적으로 정확하며, 변환에 내재된 결함과 헤드셋의 렌즈 왜곡이 없습니다. 모든 것이 균일하고, 깨끗하며, 선명하고, 현실 세계처럼 보입니다. 그러나 크로스토크(고스팅)가 있으며 대략 ~1%로 추정됩니다. 안경 동기화 매개변수를 수동으로 정밀하게 조정할 수 없었습니다. 이상에 가까워지려면 여러 설정을 다른 대화 상자에서 동시에 수동으로 조정해야 합니다. 특히 동적 장면에서 어려운 작업입니다. 자동 최적화 프로그램을 추가해야 하며 곧 추가할 예정입니다.
전반적으로 - 인상은 매우 긍정적입니다...

다음으로, ReShade 클라이언트를 통해 DirectX 9, 10 기반의 오래된 게임을 연결해 보겠습니다. 이것은 상당히 어렵기 때문에 서두르지 않겠습니다. 계속됩니다 - 나중에 다시 확인하십시오...

Homepage Terms & Conditions About Us Privacy Policy Business Info Contacts Payment Shipping Send Msg