최신 그래픽 엔진은 셰이더를 기반으로합니다. 셰이더는 그래픽 하드웨어에서 실행되어 형상 (장면), 이미지 (렌더링 된 장면) 및 픽셀 기반의 후 효과를 생성하는 프로그램입니다.
셰이더에 관한 Wikipedia 기사 :
셰이더는 버텍스 또는 픽셀의 특성을 설명하는 간단한 프로그램입니다. 버텍스 쉐이더는 버텍스의 특성 (위치, 텍스처 좌표, 색 등)을 설명하는 반면, 픽셀 셰이더는 픽셀의 특성 (색, z 깊이 및 알파 값)을 설명합니다. 버텍스 쉐이더는 프리미티브 (테셀레이션 이후 가능)의 각 버텍스에 대해 호출됩니다. 따라서 하나의 정점, 하나의 (업데이트 된) 정점. 각 정점은 화면에 전송 될 표면 (메모리 블록)에 일련의 픽셀로 렌더링됩니다.
현대의 그래픽 카드는 이러한 쉐이더를 실행할 수있는 수백에서 수천 개의 계산 코어를 가지고 있습니다. 그들은 이전에는 기하학, 정점 및 픽셀 쉐이더로 분할되었지만 아키텍처는 이제 통일되며 코어는 모든 유형의 쉐이더를 실행할 수 있습니다. 게임 엔진 및 / 또는 그래픽 카드 드라이버가 얼마나 많은 셰이더가 어떤 작업에 쓰여지는지 조정할 수 있기 때문에 리소스를 훨씬 효율적으로 사용할 수 있습니다. 기하학 쉐이더에 할당 된 코어가 많을수록 풍경이 더 자세하게 표시 될 수 있으며, 픽셀 쉐이딩에 할당 된 코어가 많아지면 모션 블러 또는 조명 효과와 같은 더 나은 효과를 얻을 수 있습니다.
본질적으로 화면의 모든 픽셀에 대해 사용 가능한 계산 코어에서 여러 수준의 쉐이더가 실행됩니다.
CUDA는 개발자가 GPU 코어에 액세스 할 수있게 해주는 Nvidias API입니다. "CUDA 코어"라는 용어를들은 적이 있지만 그래픽에서 CUDA 코어는 그래픽 카드가 사용하는 프로세싱 코어 유형 인 스트림 프로세서와 유사합니다. CUDA는 프로그램을 운영합니다. ...에 그래픽 코어, 프로그램은 쉐이더 일 수 있거나 비디오 인코딩과 같은 고도로 병렬 작업을 수행하는 작업을 계산할 수 있습니다.
게임의 디테일 레벨을 낮추면 그래픽 카드의 계산량을 현저히 줄일 수 있습니다. 양철통 다른 작업을 수행하는 데 사용하지만, 다른 작업에 느려지라고 말할 수있는 경우가 아니라면 그래픽 프로세서 코어를 사용하여 게임을 플레이 할 수 없도록 만들 수 있습니다.