OpenGL과 Vulkan의 차이를 개발자 관점에서 설명
OpenGL은 드라이버가 많은 부분을 자동으로 처리해 주어서 진입 장벽이 낮지만, 그만큼 세밀한 제어가 어렵고 드라이버 동작에 의존하는 구조입니다. 처음 그래픽 프로그래밍을 배울 때 OpenGL을 먼저 사용한 이유가 여기에 있습니다. 반면 Vulkan은 메모리 관리, 렌더 패스, 동기화를 직접 설계해야 해서 코드량이 훨씬 많습니다. 처음에는 버텍스 버퍼 하나 올리는 데도 수백 줄이 필요해서 당황했습니다. 그 대신 퍼포먼스 예측이 가능하고 멀티스레드 렌더링에 유리하다는 장점이 있습니다. 어떤 도구를 사용할지는 팀 숙련도와 퍼포먼스 요구사항을 함께 고려해야 합니다.
팀 숙련도와 성능 요구사항을 함께 고려해야 도구 선택이 의미 있다는 것을 배웠습니다.