본문 바로가기

목 - 코딩&상품리뷰 다모여!/코딩

01.Open GL 시작 및 연습문제 풀이

안녕하세요.

"여기로모여"입니다.

오늘은 제가 예전에 공부하던 OpenGL에 관하여 글을 쓰겠습니다.

 

군대에 자기개발 비용을 이용하여 책을 샀습니다.

요즘 제가 보는 인강의 교수님이 컴퓨터그래픽스 전공이셔서 저도 궁금해서 배워볼까 해서 샀습니다.

사실, 그래픽스 강의를 해주셨다면 더 좋았을 거 같지만... 한 번 사보았습니다.

이 책은 강의자료(ppt), 소스까지 다 주지만, 연습문제 풀이는 교수로 등록하지 않으면 주지 않습니다.

교과서로 나온 책 같은데, 아무쪼록 별 탈 없이 책 마무리를 했으면 좋겠다...

오늘 1장을 봤으므로 1장에 대한 풀이를 올려보도록 하겠습니다.

1장 ​연습문제 풀이


1. 인터넷 검색으로 영상 기반 렌더링(Image-Based Rendering)이라는 용어를 정의해보라.

 

- ETRI가 내놓은 연구결과, 여러 개의 지정된 카메라 시점에 대한 캐시 이미지들을 미리 생성해 둔다. 그런 다음 원하는 시점의 캐시 이미지를 각 픽셀에 투영되는 3차원 표면점을 역시점 변환을 통해 구하고, 이 점을 지정된 카메라 시점으로 다시 투영하여 캐시 이미지에서의 대응 픽셀을 찾는다.

대응 픽셀의 파라미터 값의 평균치를 구해 새 캐시 이미지에 설정한다.

2. 어도비사의 대표적인 영상 처리 소프트웨어로는 포토샵을, 그래픽 처리 소프트웨어로는 일러스트레이터를 들 수 있다. 각 소프트웨어의 메뉴를 예로 영상 처리와 그래픽스의 차이점을 정의해보라.

 

- 포토샵은 '사진'을 다루는 프로그램으로, 사진 보정을 주 목적으로 기능이 갖춰져서 사진의 적목현상 혹은 굴절 현상 등을 제거해 주는 소프트웨어이다. 내가 생각하기에 영상 처리에서 영상은 '사진' 같은

이미 존재하는 이미지를 말하는 것 같다.

일러스트레이터는 포토샵과는 다르게 보정에 대한 기능이 거의 없고, 도형을 그리거나 자르고 합치는 기능이나 글씨를 도형으로 변형시켜 다루는 기능이 많다. 즉 창작을 할 때 주로 쓰는 프로그램이라고 생각하면 된다.

그렇기에, 그래픽스는 컴퓨터를 이용한 창작물이라고 볼 수 있다.

3. 사이 비즈 분야의 그래픽 예를 인터넷에서 검색하여 발표해보라.

- (SCI VIS)를 말하는 것 같다. -> Scientific Visualization 과학 분야 가시화

요즘 내가 공부하고 있는 Rstudio에 있는 ggplot2패키지에 있는 gplot() 함수를 예로 들 수 있다. gplot() 함수는 데이터를 막대그래프 형태로 보여주는 함수로 데이터를 시각화하는데 초점이 맞춰져, 데이터의 패턴이나 추세를 파악하기 쉽다.

4. ACM SIGGRAPH의 홈페이지에서 제공하는 자료를 내용에 따라 분류해보라.

- 소개 글과 세미나 일정, 참가자들 커뮤니티 하는 곳 등 분류되어 있다. (?)

5. 이 장에 제시된 여덟 가지 그래픽스 응용 분야별로 활용된 실례를 인터넷에서 검색하여 발표해보라.

- 1. 캐드(CAD)는 이미 건축분야에서 많이 쓰는 소프트웨어 개발 툴로 인터넷에 사진 검색하면 많이 나온다.

- 2. 프레젠테이션 그래픽스는 학술자료 발표나, 발표 자료를 도표 등을 이용하여 보여줄 때 많이 사용한다.

- 3. 가상현실 : 가상현실은 내가 군대에 있을 때 3D MAX로 비행기를 만들어, Unreal engine으로 옮겨 HMD를 착용해 시뮬레이션을 돌리는 작업을 했었다.

- 4. 미술 : 요즘 핸드폰 어플로 나오는 카메라들은 필터라는 것을 적용시키는데 필터 적용 값은 그래픽스로 만들어진 걸로 알고 있다.

- 5. 애니메이션 및 게임 : 검은 사막, 테라 및 겨울 왕국 등 굉장히 많은 분야에서 쓰이고 있다.

- 6. 교육 및 훈련 : 위의 가상현실에서 소개한 듯, 내가 만든 시뮬레이션은 비행사들 교육목적으로 만들어졌기 때문에 여기에도 해당된다 볼 수 있다.

- 7. 과학 분야의 가시화 : 옛날에는 구름을 표현할 때, 격자 알고리즘과 입자 알고리즘을 사용하여 구름을 그래픽으로 표현하였다.

- 8. 그래픽 사용자 인터페이스 : visual studio 개발 툴의 실행창, 환경창 등은 GUI라고 볼 수 있다.

이 책의 정답은 제공되지 않으므로, 제가 생각하는 것들을 적어봤습니다..

책을 보며 소스코드가 있다면 올리도록 하겠습니다.