jrcfore***
2018-02-13

02월 13일 리뷰 - 리뷰자 김종욱
기존의 그래픽 라이브러리는 윈도우의 경우 DirectX 그리고 안드로이드 폰의 경우 Opengl/ES 그리고 mac의 경우 metal로 나뉘었다. 본 블로거의 경우 2D 기반의 게임그래픽 프로그래밍을 많이 한 경력이 있기 때문에 위의 세 라이브러리를 이용하여 각각의 플랫폼에 맞는 2D그래픽들을 가속화하여 랜더링하는 프로그래밍을 많이 했었다. 다만 위의 프로그래밍을 할때 마다 느꼈던 점은 각각의 플랫폼 마다 최적화된 라이브러리가 서로 상이하다보니 서로 다른 그래픽 라이브러리를 사용해야한다는 점과 해당 라이브러리들 만이 가지고 있는 특징과 절차가 상이 하기 때문에 이로 인해 발생하는 비용과 시간이 엄청나다는 것이였다.(물론 윈도우와 Opengl을 사용할 순있다.(mac은 안해봐서 잘 모르는 이유로 인해 생략하였다.)) 이러한 기존의 비효율적인 메커니즘을 좀더 개선하고자 개발되고 제안된 것이 위의 Vulkan API이다. 이를 이용하여 앞으로는 보다 효율적인 하드웨어 지향적인 그래픽 프로그래밍이 가능할 것이라 기대한다
책에 관한 본격적인 리뷰에 임하기에 앞서 어떤 사람들에게 본 서를 권하는지 적어보도록 하겠다.
【어떤 독자를 위한 책인가】
본 서는 새로운 그래픽 API 표준에 대해서 설명한 책이다. 따라서 기본적인 그래픽에 관한 지식이 있다면 본 서를 학습함에 있어서 효율을 극대화 할 수 있을 것이라 생각된다. 그렇다고 해서 초보자가 읽기에 무한정으로 어려운 것은 아니다. 다만 기존의 지식이 없다면 몇몇 참고할 도서들을 준비하고 같이 병행해서 학습한다면 충분한 학습효과를 이룰 수 있을 것이라 생각된다. (참고서로는 시중의 기초 그래픽에 관한 도서를 참고하길 권한다.)
【책의 구성】 '처음 만나는 Vulkan' 책의 구성은 어떠한가.
【처음 만나는 Vulkan 을 읽으며…….】
그래픽 프로그래밍은 참으로 어려우면서도 재미있고 심오한 주제이다. 특히 2D-> 3D로 넘어가면 훨씬 더 정교하면서 다양한 수학적 지식과 API를 효과적으로 사용할 수 있는 기술이 프로그래머에게 요구된다. 또한 그중에서도 특히나 중요한 지식이 바로 해당 API가 어떤식으로 동작하고 어떤식으로 명령어를 처리하여 결과를 보이는 지에 대해서 잘 파악하고 있는지이다. 왜냐하면 위의 API를 다중 쓰레드를 이용하여 처리할 때에 다양한 에러가 발생할 수 있고 이렇게 발생한 에러를 효율적으로 디버깅하여 최상의 퍼포먼스를 내기 위해서는 정확한 API 지식과 하드웨어 지식이 뒷받침되어야 하기 때문이다. 따라서 모든 지식과 배움이 그렇겠지만 그래픽을 처음 접하는 입문 프로그래머라면 기초를 충분히 충실히 학습한 후에 다양한 프로젝트에 임할 것을 권한다.
【점수…….】
구성 : ★★★★☆ 내용:★★★☆☆ 디자인: ★★★☆☆ 전문성 : ★★★☆☆
#본 리뷰는 리뷰자 김종욱의 저작권에 귀속되므로 참고시 참고 URL 명시 및 저작자에게 사용 통보를 해 주시기 바랍니다.
#본 리뷰의 점수 및 평가 내용은 김종욱 리뷰자의 한정된 것이므로 지극히 주관된 평가 임을 명시합니다.
#학습과 관련된 질문과 문제에 대한 질문은 일절 받지 않습니다. 스스로 찾아서 학습하는 것 그것이야 말로 진정한 학습자입니다.
###### 감사합니다 ######