코토노하 모에단 대한민국 이글루스 지점 단장님이신 네리아리 님의 글 :

을 보고 전 이런 생각이 들었습니다.

저거 만든다고 수치해석에 나오는 수식들을 가지고 얼마나 삽질을 했겠나? (수치해석 말고도 다른 학문에 나오는 공식들도 응용 되었을 것입니다. 공업수학, etc)



마비노기 일본 CM을 보면 나부장으로 통하는 나오가 나옵니다 -_-;;

여기서 나오는 나오는 애니메이션인 2D로 나온 것이 아니라 3D로 나옵니다.
저걸 프로그래밍해서 만든다면 엄청난 수식들이 동원될 것입니다. 저런 수식들은 거의 대부분 수치해석에 나옵니다.
그래픽스쪽 공부를 조금이라고 한 학생이라면 수치해석에서 배우는 것들이 모두 쓸모있다는 사실을 알 수 있죠.

나오가 문고리를 잡을때 수학공식으로 3D를 제대로 구현하지 않으면 나오가 문고리잡지 못하고 자기 손을 잡아 주먹을 잡을 수도 있습니다. 나오가 문고리를 못잡는 사태를 방지하기 위해서는 비선형방정식이 필요합니다.

나오가 문고리를 잡을때에는 수많은 점들이 추가 되고 등등의 어지럽게 됩니다. 이 때에는 행렬을 이용한 선형 방정식의 해법으론 절대 못풉니다. 그래서 비선형 방정식을 이용해서 손잡이를 잡고 등등의 연산을 해야 합니다.

비선형 방정식을 풀때에는 중간치 정리를 이용해서 f(x) = 0를 찾아야 합니다. 아 f(x) = 0으로 찾다간 수많은 해가 나와서 저런 것들을 풀기가 힘들 것 같군요. 1차 미분을 해서 f'(x) = 0인 해를 찾아야 합니다.
그러면서 Roll의 정리를 이용해서 미분한 값에서 근이 존재함을 알아야 합니다. 그러므로 Bisection Method를 이용해서 해를 찾습니다. 그러나 이 방법은 무지 느립니다.
게임의 생명은 속도감인데 프로그래밍한 것이 느리면 게임을 못할수도 있겠죠? 잘못하면 렉이 걸릴수도 있습니다.
그렇기 때문에 Newton's Method를 이용해서 해를 구해야 합니다.
Newton's Method를 이용하면 속도는 엄청 빠릅니다만... 근을 못찾을수도 있습니다. 이 방법은 디지털카메라에서 이용을 한다는 소리를 들었습니다
그리고 Secant Method, Recular Falsi란 방법들이 있으니 게임이나 CM에서 이런 수치해석의 내용들이 들어갔수가 있을 것입니다.

(제가 아직 전공을 배운지 1년밖에 안된 학부 2년 마친 컴퓨터공학과 학생으로서 이쪽 그래픽스를 공부를 별로 하지 않아서 오류가 있을 수도 있습니다. 오류 발견하시면 덧글 올려주시기 바랍니다^^)

여러모로 마비노기 일본판 CM을 보면 삽질 오나전 했다는 사실을 알고 있습니다. 저런 것 표현할려면 객체지향언어로 표현했을 터인데, 어떤 메소드를 만들었는지가 궁금합니다.
나비가 움직이는 객체들과 해바라기 객체, 귀가 펄렁거리는 양들 객체 등등
나오가 걸어나오는 것도 그렇고 등등 객체들의 움직임들을 살아있는 것처럼 움직일려면 많은 삽질이 필요하다는 것을 알 수 있습니다 덜덜덜


정말 넥슨, 일본에서 사업한다고 열심히 일한 것 같네요. 넥슨 임직원들이 열심히 삽질한 덕분으로 일본의 엔화가 우리나라로 유입이 될것 같습니다. 넷슨은 우리나라의 국익에 많은 도움을 주고 있습니다!!!

저런 CM만든다고 어떤 수식들이 들어갔을까? 의문이 들어간 한 컴공과 학생의 생각이었습니다.
CM을 볼때 마다 2학년때 동기들이 어렵다고 외면한 수치해석 수업을 들은 것을 잘한 선택이라고 믿고 있군요^^ 거기에 무슨 수식이 적용되었나 등등의 생각을 하는 것을 보면 말이죠.



마비노기 CM의 나오가 빙그르르 도는 장면은 삽질 많이 한 장면 같습니다. (수학 공식들이 몇개나 쓰였을까? 란 생각이 듭니다.)
마지막에서 나오가 빙그르르 도는 모습을 보면 애니메이션 괴수 집단인 Kyoto Animation에서 만든 AIR Opening에서 미스즈가 빙그르르 도는 모습이 생각나네요^^



마비노기 일본판 광고를 보니까 넷슨에서 일하시는 분들의 노가다가 느껴집니다.
역시나 컴퓨터 그래픽스는 수학이 필수입니다 ~

(※ 2007년 1월 31일 수요일 오후 10시 35분 수정 - 이유 : 학교에서 나갈 시간이라 급히 쓰고 나왔음-_-;;)

'컴퓨터' 카테고리의 다른 글

VirtualPC 2007 BETA로 Linux설치하기(1) - 프로그램 설치  (4) 2007.02.09
LAN 선 조립 방법  (4) 2007.02.03
Thread?!  (5) 2007.01.26
이렇게 간편하게 할수 있는데!  (3) 2007.01.23
배터리 리콜!  (5) 2007.01.21
Buy me a coffeeBuy me a coffee

+ Recent posts