본문 바로가기

1분리뷰

이득우의 게임 수학 리뷰

 

 

현 시점에서는 게임엔진의 지원으로 원리나 복잡한 수식없이 생각하는 기능들을 쉽게 구현이 가능한 상황입니다.

그러나 최근 반년 사이에 수학의 필요성이 느껴졌습니다.

 

여러 개의 부모와 자식 사이의 트랜스폼 관계에서 원하는 결과의 값을 계산하여 출력해야하는 상황이 있었습니다. 다행히 유니티에서 다양한 편의 함수들을 제공하기 때문에 그 것을 이용하여 해결할 수도 있습니다.

 

하지만 게임엔진은 범용적이지 못합니다. 엔진 또는 라이브러리마다 편의 함수들의 사용법과 이름이 다를 수도 있기 때문입니다.  '심지어 해당 기능을 하는 함수가 없을 수도 있습니다! 반대로 유니티에 없을 수도 있습니다!'

 

유니티를 사용하는 사람들끼리만 소통하면 괜찮지만 아닌 경우 문제가 발생합니다. 따라서 해당 기능들을 수식으로 소통을 할 수 있으면 어디에도 얽매이지 않고 진행할 수 있게 됩니다. 반대로 수식을 모르는 사람의 입장에서는 문제가 생길 것입니다. 엔진 의존도가 있는 저는 쉽게 이해하지 못하는 경우가 발생하였고 결국 기초를 쌓기로 결정하였습니다.

 

시간 날때마다 읽어 약 4개월 끝에 마무리할 수 있었고 수라는 체계부터 시작하여 사원수로 마무리 되는 과정이였습니다. 그리고 CKRenderer라는 이름으로 실습할 수 있는 환경을 제공하고있지만 주 무대는 유니티이기 때문에 궁금한 것들은 적당히 컨버팅하며 진행하였습니다.

 

배웠지만 기억에서 잊었던 것들, 배운적이 없는 것들 속에서 지쳐가기도 하였지만 포기하지 않고 진행하면 읽어지긴 하였습니다. 거의 마지막 파트인 사원수에서 옛날에 들락날락 했던 유니티 러닝센터의 강사의 말이 생각났습니다.

 

"Quaternion은 오일러 방식의 회전에서 오는 문제점으로 인해 사원수라는 것을 사용하는데 직접 구현하기에는 어렵기 때문에 유니티에서 미리 제공한다."

 

당시에는 "아 매우매우 어려운 개념인가보다. 쉽게 사용할 수 있게 기능을 제공하니까 자세히 알 필요 없겠네?"하고 넘어갔지만 정말로 필요한 상황을 마주치고 나니 알아보려고 하지 않은 행위가 아쉽다고 느껴졌습니다. 조금이나마 알고 있었다면 상황을 해결하기 위한 방법을 유도하거나 소통이 원활했을 수도 있었을 것입니다. 

 

게임 엔진을 직접 제작하기 위한 목적이면 정독을 추천드리고 그 외에는 삼각함수, 내적, 외적과 같이 게임엔진을 끼고 작업하더라도 직접 다루게 될 가능성이 높은 단원 정도만 정독하시고 나머지는 교양 수업을 대하는 자세로 읽으셔도 좋습니다.

 

출판사는 아래를 대상독자로 추천하고 있습니다.

- 유저가 자유롭게 조종할 수 있는 3차원 가상 세계를 직접 만들고 싶은 개발자
- 게임 엔진을 직접 만들어보고 싶은 게임 개발자
- 벡터를 화면에 시각화하는 원리가 궁금한 테크니컬 아티스트
- 벡터, 행렬로 구성된 선형대수학의 기초를 배우고 싶은 학생이나 개발자, 아티스트
- 3차원 그래픽과 관련된 기초 이론을 배우고 싶은 학생이나 개발자, 아티스트
- 게임 엔진이 사용하는 사원수 체계와 그 구현 방법이 궁금한 게임 개발자

'1분리뷰' 카테고리의 다른 글

제우스랩 Z16p pro max 포터블 모니터 리뷰  (0) 2023.06.06