최신 기술에 대한 정보를 얻으려면 Vulkan에 대해 들어야합니다. Vulkan API는 Khronos Group이 발표 한 최신 그래픽 API 중 가장 최신이며 현재 업계 표준 인 OpenGL을 따르는 사람들입니다. 프로젝트 이름 Vulkan은 2015 년 Game Developers 'Conference에서 공식 발표되었으며, API의 첫 번째 버전은 2016 년 2 월에 출시되었습니다. 새로운 API는 게임 그래픽을 한 차원 높은 수준으로 끌어 올리는 것을 목표로합니다. 세부 사항, 우리는 당신에게 그것을 줄 여기 있습니다.
Vulkan API가 무엇인지, 이전 OpenGL과 어떻게 다른지, 그리고 Vulkan API가 게임 및 기타 그래픽 집약적 인 애플리케이션이 가까운 미래에 개발되는 방식을 어떻게 바꿀 수 있는지에 대해 논의합니다. 이 글에서 렌더링 및 그래픽 분야의 흥미 진진한 개발에 대해 알아보십시오.
Vulkan API 란 무엇입니까?
2 년 전, AMD는 3D 게임을 목표로 삼고있는 API 인 Mantle을 선보였으며 그래픽 렌더링에 대한보다 나은 솔루션이 될 것이라는 약속을 보여 주었지만 AMD는 프로젝트를 중단 시켰습니다. 그런 다음 AMD는 렌더링을위한 표준 API를 개발하기 위해 Khronos Group에 Mantle API 구성 요소를 제공했습니다. 결과는 새로운 Vulcan API입니다.
Vulkan API는 요즘 편재하는 멀티 코어 CPU를보다 잘 활용할 수있는 낮은 오버 헤드 렌더링 API이며 시스템의 CPU 및 GPU에 대한 직접 액세스를 프로그램에 제공합니다. 또한 OS 독립적입니다. 이는 Vulkan API를 사용하는 응용 프로그램을 쉽게 이식 할 수 있음을 의미합니다.
열성적인 게이머와 게임 애호가로서 우리는 게임이 어떻게 빨리 개발 될지, 그리고 어떻게하면 게임 경험을 향상시킬 수 있는지에 대해 살펴보기로 결정했습니다.
풍모
Vulkan API에는 이전 버전 인 OpenGL과 차별화 된 기능이 많이 있습니다.
1. Vulkan API는 멀티 코어 환경의 모든 코어에서 처리 부하의 균형을 균등하게 유지하려고합니다. 즉, 프로세서의 모든 코어가 사용되므로 효율성 이 극대화됩니다 .
- 그리기 호출이 많이 필요한 그래픽 렌더링에서 눈에 띄는 차이가 있습니다.
- 레거시 API를 사용하면 CPU가 병목 현상이 될 수 있습니다. 그러나 Vulkan은 멀티 코어 CPU를 GPU에서 병목 현상이 발견 될 가능성이 높기 때문에 유용하게 사용합니다.
2. Vulcan API는 그리기 호출 및 기타 GPU 기능을 위해 GPU에 액세스 할 때 불필요한 오버 헤드가 발생하지 않도록 GPU에 대한 직접 액세스를 제공합니다.
- 즉, 무거운 게임은 현재 CPU 집약적 인 게임이 아닙니다. 또한 드라이버는 GPU에 대한 액세스를 제공하는 데있어 더 작은 역할을 수행하므로 정보를 훨씬 빨리 전송할 수 있습니다.
3. API는 완전히 교차 플랫폼으로 설계되었습니다.
- 모바일, 데스크톱 및 콘솔을위한 더 이상 분기 API가 없습니다. Vulkan API는 호환되는 GPU가있는 모든 기기에서 동일합니다.
4. OpenGL은 GPU 메모리 사용과 동기화를 숨기고 있었지만 Vulkan은 이것을 공개하고 개발자들에게 GPU 와 그 사용 방법을 더욱 잘 제어 할 수있게합니다 .
- Vulkan은 개발자가 GPU의 텍스처 포맷, 메모리 관리 및 동기화를 제어 할 수 있습니다.
- 그러나 플랫폼 간 호환성 을 유지하기에 충분한 정보를 숨 깁니다.
5. Vulkan은 병렬 컴퓨팅 및 그래픽을 위해 SPIR-V 중간 언어 를 사용합니다. SPIR-V는 전임자 인 SPIR1.2와 SPIR2.0과 마찬가지로 Khronos Group에 의해 개발되었으며 SPIR-V는 LLVM을 사용하지 않습니다. SPIR-V는 Vulkan이 모든 플랫폼에서 공통의 프론트 엔드 컴파일러를 가질 수 있도록합니다. 개발자는 커널, 쉐이더 코드를 제공 할 필요가 없으며 드라이버 구현이 간단합니다.
Vulkan이 우리를 최종 사용자로 어떻게 도울 수 있습니까?
개발자가 Vulkan API를 최대한 활용하면 최종 사용자의 게임 경험을 크게 향상시킬 수 있습니다. 유능한 프로세서가 장착 된 하이 엔드급 플래그쉽을위한 모바일 장치의 콘솔 수준 그래픽을 고려 하십시오.
1. 요즘 대부분의 모바일 SoC는 멀티 코어이기 때문에 Vulkan은 프로세서를 최대한 활용하여 게임을 더 매끄럽게 만듭니다 (FPS 높이기).
2. 또한 Vulkan은 장치의 GPU에 대한 오버 헤드가 적기 때문에 게임을 통해 이제는 GPU 리소스에 대한 액세스 시간을 크게 단축 할 수 있습니다. 다시 한번 말하지만, 이것은 GPU의 기능을 최대로 활용 함으로써 초당 프레임 수를 늘리면 더 좋은 그래픽으로 변환됩니다.
3. 크로스 플랫폼 기능을 통해 게임의 이식성을 향상시키는 것이 최종 사용자로서의 직접적인 영향을 미치지 않을 수도 있지만, 게임과 그래픽 집약적 인 응용 프로그램을 거의 모든 플랫폼 에서 사용할 수 있습니다 . 가능성은 무한하며 우리의 상상력에 의해서만 제한됩니다.
4. 게임은 또한 GPU가 사용자에게 즉각적으로 보이는 것들에 더 많은주의 (읽기 : 메모리를 할당하고 선호도를 부여)를 보장하여 게임이 지연 및 프레임 저하에보다 면역성을 갖도록함으로써 원활한 성능 을 보장 할 수 있습니다 .
개발자 옵션
그래픽을위한 낮은 수준의 낮은 오버 헤드 API는 의심의 여지없이 좋은 아이디어이지만, 모든 개발자, 특히 새로운 개발자에게는 명백한 매력이 아닙니다. 하드웨어 수준에 더 가깝고 더 가까운 곳에서 프로그래밍하는 것은 높은 수준에서 프로그래밍하는 것보다 훨씬 뛰어납니다. 이는 더 추상적입니다. 이것은 결코 충격적이지 않습니다. 꽤 분명합니다. 개발자가 Vulkan을 개발 프로젝트로 사용하는 방법에 대한 세 가지 옵션을 제공합니다.
1. Vulkan API를 직접 사용하십시오.
- 이것은 하드웨어에 대한 최저 수준의 액세스를 제공 할 것이며 분명히 모든 사람을위한 선택이 될 수 없습니다. 그러나이 수준은 Vulkan을 사용하여 개발 된 다른 응용 프로그램에 대한 벤치마킹 도구를 만드는 데 사용할 수 있습니다.
2. 라이브러리 사용
- OpenGL에서 Vulkan으로 전환하는 개발자에게 가장 가능성있는 옵션입니다.
- 대부분의 라이브러리는 오픈 소스이기 때문에 OpenGL을 사용하여 개발 경험이있는 개발자는 처음부터 다시 시작하거나 처음부터 다시 시작하지 않고 OpenGL 응용 프로그램을 Vulkan API로 쉽게 가져올 수 있습니다.
3. Vulkan에 최적화 된 게임 엔진 사용
- 우리는 이것이 대부분의 개발자들이 들어가는 곳이라고 확신합니다. 게임 엔진은 잘 정립되고 경험 많은 산업 거물에 의해 설계되고 개발되었으며 개발자 (경험 많은 사람과 초보자 모두)가 장점을 사용하는 게임을 쉽게 만들 수 있습니다 Vulkan API에 의해 제공됩니다.
- Epic Games (Unreal Engine) 및 Unity (Unity Engine)와 같은 개발자는 이미 다가오는 엔진에서 Vulkan 지원을 발표했으며 많은 사람들이 따라 할 계획을 발표했습니다.
참조 : APFS 이해하기 : Apple의 새로운 파일 시스템
기대하다!
기사가 너를 납득시키지 않았다면 ... 흥분해! 지금! 벌칸 (Vulkan)은 게이밍 라이프를 향상시킬 그래픽 API의 획기적인 발전을 약속합니다. 벌컨 (Vulkan)과 오픈 GL (OpenGL) 성능을 비교 한 비디오가 이미 존재합니다. 그 결과는 매우 간단합니다. 이 비디오가 표시되면 Vulcan API가 도착하여 모바일을 비롯한 모든 곳에서 놀라운 그래픽 품질을 경험할 준비를하십시오!
그럼, 벌컨에 대해 어떻게 생각하세요? 현재 OpenGL 표준보다 큰 발전이라고 생각하십니까? 아래 의견란에 알려주십시오.