차원이 다른 게임 그래픽, 실시간 레이트레이싱

이미지
현재의 게임 그래픽은 매우 뛰어나다. 과거부터 계속해서 엄청난 발전을 거듭해왔고 그래픽카드나 게임 콘솔의 성능역시 엄청나게 향상되었다. 최근에도 계속해서 폴리곤의 갯수를 늘리지 않으면서 텍스쳐 품질/해상도, 광원 효과 등을 이용해 지속적인 게임그래픽의 발전을 이루어 왔다. 이제까지의 게임 그래픽도 무척이나 영화같았지만 실시간 레이트레이싱 기술이 공개됨으로서 앞으로 더욱 영화같은 게임 그래픽을 볼수 있게 될 것이다. 이것은 이전까지의 실시간 엔진들과는 차원이 다르다. 레이트레이싱이란? 레이트레이싱은 마치 현실과도 같은 광원 효과를 만들어 내는 렌더링 기술이다. 기본 알고리즘은 광선의 경로를 추적하여 3D 오브젝트와 충돌하여 상호작용하는 것을 계산하는 것이다. 레이트레이싱은 눈에 빛이 도달하기까지의 빛 경로를 완벽히 계산한다. 그래서 현재까지의 게임 광원 역시 매우 현실적으로 보이지만, 레이트레이싱과는 비교할 수가 없다. 게임보다 훨씬 뛰어난 그림자, 반사, 투과 그리고 산란 을 렌더링할 수 있게 한다. 연산 성능이 충분하다면, 실제와도 거의 구분이 불가능할 정도의 매우 현실적인 컴퓨터 그래픽을 출력한다. 지금의 게임용 컴퓨터 역시 엄청난 성능을 보여주지만 아직까지는 레이트레이싱을 실시간으로 해내기는 매우 버겁다. 실시간 게임 렌더링과 레이트레이싱 렌더링은 무엇이 다른가? 게임 엔진은 쉐이더를 통해 굴절 표현을 한다. 위 이미지는 유니티의 굴절 쉐이더 예시. 게임 그래픽은 레이트레이싱보다 훨씬 렌더링 속도가 빠른 레스터화 기술을 이용한다. 이것은 3D 그래픽을 2D 이미지로 변환해 출력해준다. 하지만 레스터화 기술은 자연스러운 그래픽을 묘사하기 위해 다양한 쉐이더를 필요로 한다. 실시간 게임 렌더링은 광선의 추적을 계산하지 않고 쉐이딩을 통해 우리의 눈에 자연스럽게 보일 수 있도록 하는 것이기 때문에 빛의 굴절, 반사, 그림자 그리고 산란을 정밀하게 표현하지 못한다. 게임에서 볼

그래픽카드와 CPU의 차이

이미지
그래픽카드와 CPU는 모두 프로세서로서 연산 작업을 수행한다. 그런데 도데체 왜 그래픽카드와 CPU가 나뉘게 되었을까? CPU는 점 6개에 대해 순차적으로 연산을 해야하지만 GPU는 동시연산이 가능하다. 컴퓨터가 어떠한 도형을 이동시키려 할 때, 프로세서는 도형의 모든 점에 대해 이동 연산을 수행하여야 한다. 이런 연산을 CPU가 실행하는 경우 CPU는 각각의 점에 대해 한번에 하나씩 연산을 수행해야 한다. 그리고 이 점이 많아지면 많아질수록, CPU의 연산속도에는 한계가 온다. 그 한계를 극복하기 위해 나온 것이 바로 그래픽카드(GPU)이다. 그래픽카드는 부동 소수점 명령을 계산하는 장치로, 그래픽 기본 기하 명령을 담고 있어 CPU를 통해 화면을 표시 할 때보다 훨씬 빠른 디스플레이 렌더링이 가능하다. 그래픽카드는 비디오 렌더링에 최적화된 연산을 수행하는 장치들로만 구성된 CPU라고 생각할 수 있다. CPU가 다용도로 쓰이는 데에 비해, 그래픽카드는 그 용도에 맞는 방식으로만 작동하는 것이다. CPU에 들어가는 연산장치들을 대거 삭제하고, 그래픽 처리에 이용되는 연산 장치들 다수로 구성되어 있는 것이다. CPU는 수학자 몇명, GPU는 초등생 수천명을 가지고있다고 비유할 수 있다. 엔비디아의 GPU와 CPU 비유 비교 영상 CPU가 하나하나 일을 하는 데에 비해 GPU는 맡은 일을 동시에 수행해낸다. 2000년대부터는 그래픽카드의 연산 능력을 그래픽 외에도 쓸 수 있도록 하는 기술이 개발되었는데, 이것을 'GPGPU' 라고 부른다. 매우 단순한 계산이지만 이것을 매우 많이 반복해야 되는 경우가 생겼을 때, 이 것을 GPU가 처리하게 함으로서 계산속도를 기하급수적으로 단축시킬 수 있다. GPGPU 프로그래밍에는 엔비디아의 'CUDA', 애플의 'OpenCL' 등이 있다.

오버워치 그래픽 설정 팁

이미지
오버워치 그래픽 세부설정 설명 렌더링 스케일 (RENDER SCALE) 게임의 내부 렌더링 해상도를 조정하여 다운샘플링 또는 업스케일링을 적용한다. 값을 100%보다 낮게 설정하면 이미지 품질이 저하되지만 성능은 크게 향상된다. 값을 100%보다 높게 설정하면 성능이 크게 떨어지지만, 계단현상을 크게 줄일 수 있다. 렌더링 스케일이 높을수록 계단현상이 사라지고 품질이 좋아지는 것을 볼 수 있다. 텍스처 품질 (TEXTURE QUALITY) 게임 내 모든 요소에 적용되는 텍스처의 해상도를 조정한다. 낮음에서는 개체 표면의 이미지가 흐리게 보인다. 텍스처 필터링 품질 (TEXTURE FILTERING QUALITY) 원거리 또는 사선 방향에서 볼 수 있는 텍스처의 선명도를 조정한다. 낮음에서는 바닥 표면의 글씨가 흐리게 보인다. 안개 세부 묘사 (LOCAL FOG DETAIL) 안개, 구름 및 연기 효과의 품질을 조정한다. 낮음으로 설정 시 약간의 안개가 걷힌다. 동적 반사 효과 (DYNAMIC REFLECTIONS) 반사되는 표면에서 동적 개체가 실시간으로 반사되도록 한다. 설정값에 따라 상자가 바닥 물웅덩이에 반사되는 수준이 달라진다. 캐릭터 등 모든 동적 개체가 포함된다. 그림자 세부 묘사 (SHADOW DETAIL) 그림자의 시각적 화질과 복잡성을 조정한다. "비활성화" 설정에서는 그림자가 동적으로 표현되지 않고 정적 그림자가 사용된다. 설정값이 높아질수록 그림자가 선명해진다. 모델링 세부 묘사 (MODEL DETAIL) 게임 내 캐릭터 및 개체의 품질과 복잡도를 조정한다. 낮음에서는 트레이서의 모델이 부드럽지 못하다. 그리고 의자, 모니터와 같은 일부 개체들이 사라진다. 효과 세부 묘사 (EFFECTS DETAIL) 일반적으로 보이는 시각 효과의 수와 세부 묘사 수준을 조정한다. 최상으로 설정 시, 지

Windows To Go에 대규모 업데이트 적용하기

이미지
Windows To Go는 윈도10의 대규모 업데이트를 설치하지 못한다. Windows To Go 작업영역의 기존 파일들과 앱들을 유지하고 업그레이드를 하고싶다면 이 방법을 사용하면 된다. 이 글에 사용된 Windows To Go의 버전은 Windows 10 Enterprise 1607 (빌드 14393)이며, 업그레이드를 진행하는 버전은 Windows 10 Enterprise 1703 (빌드 15603)이다. 이 작업을 수행하는 컴퓨터의 버전은 Windows 10 Pro 1703 (빌드 15603)이다. 1. Hyper-V를 켠다. 제어판 - 프로그램 - 프로그램 및 기능 - Windows 기능 켜기/끄기 Hyper-V를 체크하고 컴퓨터를 다시 시작한다. 2. Windows To Go 드라이브를 오프라인으로 만든다.  ▼ 디스크 관리는 시작 버튼을 우클릭(Win Key + X)해서 실행하거나 실행(Win Key + R)에 diskmgmt.msc를 입력해서 실행할 수 있다. 3. 실행(Win Key + R)에 virtmgmt.msc를 입력해 Hyper-V 관리자를 실행시킨 후, 아무것도 설치하지 않은 1세대 가상 컴퓨터를 만든다. 새로 만들기 - 가상 컴퓨터 1세대로 선택 나중에 가상 하드 디스크 연결 선택 4. 가상 컴퓨터 설정에서 Windows To Go 드라이브를 인식시키고 업그레이드를 진행할 ISO 파일을 인식시킨다.  ▼ 방금 생성한 가상 컴퓨터를 선택하고 설정... 클릭 IDE 컨트롤러에 하드 드라이브 추가 IDE 컨트롤러에 업그레이드 버전의 ISO 파일 추가 5. 가상 컴퓨터를 시작한 후, 레지스트리 편집기(regedit)를 열고 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control - PortableOperatingSystem 의 DWORD(32비트) 값을 1에서 0으로 바꿔준다  ▼ 6. 인식된 IS