3D 그래픽 프로그램에서 마우스를 클릭하여 보이는 위치를 클릭하는 것, 다시 말해 피킹(Picking)은 꽤 중요한 일이며 가볍게 발을 담그는 사람들에게는 꽤 구현하기 난해한 기능이기도 하다. 단순히 프로그래밍 뿐만 아니라 수학도 필요하니까. 이 글은 구체적인 수학적인 개념은 설명하지는 않고 코드적으로 어떻게 구현할지 간단히 설명하고자 한다. 우선 피킹은 2가지 방법으로 구현할 수 있다. 클릭한 객체를 알 필요가 없고 단순히 피킹 위치만 알고 싶을 경우 클릭한 객체를 알아야 하고, 특정 객체만 피킹 해야만 할 경우 1은 매우 단순하다. 3D 렌더링 과정에서 깊이 버퍼(Depth Buffer)에 깊이 값이 쓰여질 것이다. 피킹 위치의 UV값을 사용해 해당 위치의 깊이 값을 얻어내고, 그것을 View
Continue reading ...