이전

리뷰 (3)

한줄평
평점 분포
  • 리뷰 총점10 100%
  • 리뷰 총점8 0%
  • 리뷰 총점6 0%
  • 리뷰 총점4 0%
  • 리뷰 총점2 0%
연령대별 평균 점수
  • 10대 0.0
  • 20대 10.0
  • 30대 0.0
  • 40대 10.0
  • 50대 0.0
리뷰 총점 종이책
[서평] 유니티로 배우는 게임 디자인 패턴
"[서평] 유니티로 배우는 게임 디자인 패턴" 내용보기
게임에 필수적인 요소 구현이 어려운 초보 개발자들을 위한 지침서   게임을 직접 제작하다 보면 다른 게임에서 흔하게 했던 행동들이나 기능들이 막상 직접적으로는 구현하기 힘든 경우가 종종 있습니다. 이는 실력 문제가 아닌 직접 만들어보지 않아서, 기능 구현 자체를 어떻게 접근해야 할지 모르기 때문입니다.   그러한 사람들을 위해 만들어진 이 도서는 유니티 게임을 설계
"[서평] 유니티로 배우는 게임 디자인 패턴" 내용보기

게임에 필수적인 요소 구현이 어려운 초보 개발자들을 위한 지침서

 

게임을 직접 제작하다 보면 다른 게임에서 흔하게 했던 행동들이나 기능들이 막상 직접적으로는 구현하기 힘든 경우가 종종 있습니다. 이는 실력 문제가 아닌 직접 만들어보지 않아서, 기능 구현 자체를 어떻게 접근해야 할지 모르기 때문입니다.

 

그러한 사람들을 위해 만들어진 이 도서는 유니티 게임을 설계하는 초보 개발자의 관점에서, 각각의 디자인 패턴을 이용하여 예제 게임의 기능들을 하나하나씩 설계하며 지식 습득을 할 수 있도록 도와줍니다.

 

또한 책에서는 이 습득을 위해 예제로 레이싱 게임 제작을 선택했는데, 그 이유는 일관적인 프레임을 유지해야 하는 레이싱 게임은 코드의 효율성을 중시하게 되어 좀 더 좋은 프로그래머가 되기 위한 습관을 기를 수 있으며, 타 장르와 다르게 필수적인 게임 메커니즘이 적기 때문에 더욱 빠르게 구현하여 빠르게 습득할 수 있기 때문입니다.

 

책의 구성은 계단을 올라가듯이 단계별로 나누어져 있습니다. 앞의 2장에서 게임 기획과 C#과 유니티의 기능을 짧게 배우고, 그다음 장부터 레이스의 기초적인 구성요소인 카운트다운, 레이스 시작, 일시 정지를 위한 이벤트 버스 구현 내용 등이 정리되어 있습니다.

 

그 뒤로 게임 내적 부분인 오브젝트 풀 패턴을 이용한 게임 최적화, 무기 시스템을 위한 데 커 레이트 패턴, 오브젝트 관리를 위한 공간 분할 방법 등 필수적인 요소를 습득한 뒤, 마지막으로 게임에서 있으면 좋은 부가 기능인 옵저빙, 리플레이 구현까지 배울 수 있습니다.

 

프로젝트의 상황에 따라 패턴의 대체 방법을 추천해줍니다.

그리고 이 책의 장점으로 생각되는 것이, 깃허브 링크와 실습 영상 내용을 제공하는 것과, 각 챕터 시작 부분에 이 패턴의 장단점을 설명하고 어떤 상황에 응용하면 좋을지 예를 제시해주고, 실습 뒤 만약 본인이 만드는 프로그램에 해당 패턴을 적용할 수 없으면 이에 대한 대안을 직접 추천해주기도 합니다. 이렇게 상황에 맞게 적용할 수 있는 추가적인 설계 방법도 배워갈 수 있습니다.

 

그래도 한 가지 단점 아닌 단점이 있는데, 유니티와 C#의 기능을 어느 정도 이해하고 있어야 하는 점입니다. 앞에서 말했듯이 한 장으로 잠깐 C#과 유니티를 간단하게 설명하고 본 내용으로 들어가는데, 깃허브와 아예 프로그래밍을 모르는 초심자일 경우, 내용을 배우는데 큰 애로사항이 생길 수 있기 때문에 이 점을 유의하셔야 합니다.

 

마지막으로 이 책은 절대로 정형화된 디자인 패턴이 아닙니다. 단지 이러한 방법으로도 개발자가 생각하던 방식을 구현할 수 있다는 것을 조언해줄 뿐이고, 그래서 오히려 정형화되지 않고 패턴을 응용하여 한번 다르게도 만들어보는 등 여러 가지 경우의 구현을 경험할 수 있어 개발 지식에 큰 도움이 될 수 있을 것입니다.

 


<< 이 글은 제이펍에서 책을 제공 받아 작성된 서평입니다. >>

y**********5 2022.11.11. 신고 공감 1 댓글 0
리뷰 총점 종이책
[도서 서평] 유니티로 배우는 게임 디자인 패턴
"[도서 서평] 유니티로 배우는 게임 디자인 패턴" 내용보기
유니티에 대한 디자인 패턴에 대해 좀 더 깊이 있게 알고 싶어서 선택했던 도서이다. 유니티에 대해서도 잘 알고 있는 선에서 게임을 개발할 때 어떤 방식으로 디자인 패턴을 해야할지에 대한 가이드가 잘 되어 있어서 책을 선택할 때 차례를 보고 선택하기도 했다.   이 도서는 유니티와 C#에 대해서 기본적인 공부를 끝낸 독자를 대상으로 유니티 게임 개발에 적용 가능한 디자인 패
"[도서 서평] 유니티로 배우는 게임 디자인 패턴" 내용보기

유니티에 대한 디자인 패턴에 대해 좀 더 깊이 있게 알고 싶어서 선택했던 도서이다.

유니티에 대해서도 잘 알고 있는 선에서 게임을 개발할 때 어떤 방식으로 디자인 패턴을 해야할지에 대한 가이드가 잘 되어 있어서 책을 선택할 때 차례를 보고 선택하기도 했다.

 

이 도서는 유니티와 C#에 대해서 기본적인 공부를 끝낸 독자를 대상으로 유니티 게임 개발에 적용 가능한 디자인 패턴을 설명하고 있다.


유니티에 대해서 잘 아는 저자는 유니티 시스템 안에서 제공되는 컴포넌트를 활용하여(예를 들어 UnityEvent 등) 디자인 패턴을 구현하고실제 개발에서 충분히 활용이 가능한 수준의 예시를 제공하여, 독자들의 이해를 돕고 있다.


디자인 패턴의 장단점과 어느 상황에서 어떤 디자인패턴을 고르는게 이득일지 생각해 볼 수 있는 능력을 키워주는 도서라고 생각한다.
 

n******7 2023.07.26. 신고 공감 0 댓글 0
리뷰 총점 종이책
유니티로 배우는 게임 디자인 패턴, 리뷰
"유니티로 배우는 게임 디자인 패턴, 리뷰" 내용보기
유니티로 만드는 게임 디자인 패턴 책을 보았다. 디자인 패턴 책은 시중에 많이 출판되어 있기 때문에 단순히 디자인 패턴이 궁금하다면 아무것이나 골라 봐도 되지만 이 책은 유니티에서 게임 구현에서 디자인 패턴이 어떻게 사용될 수 있는지를 염두에 두고 만들어 졌다고 볼 수 있는 것으로 보인다.   목차는 여러 파트로 나뉘어져 있고 나는 이중 절반 정도를 읽었는데 간단하게 싱
"유니티로 배우는 게임 디자인 패턴, 리뷰" 내용보기

유니티로 만드는 게임 디자인 패턴 책을 보았다. 디자인 패턴 책은 시중에 많이 출판되어 있기 때문에 단순히 디자인 패턴이 궁금하다면 아무것이나 골라 봐도 되지만 이 책은 유니티에서 게임 구현에서 디자인 패턴이 어떻게 사용될 수 있는지를 염두에 두고 만들어 졌다고 볼 수 있는 것으로 보인다.

 

목차는 여러 파트로 나뉘어져 있고 나는 이중 절반 정도를 읽었는데 간단하게 싱글톤 패턴과 게임 매니저와 더불어 책 소개를 해볼까 한다.

 

단순할 수록 이해하기 좋고 응용하기 좋은 부분이 있다고 생각한다. 그런 의미에서 책에 쓰여 있듯이 '첫 번째 원칙은 단순함이야' 라는 대사는 시사하는 바가 크다고 생각한다. 물론 현대 과학에서 중요한 위치를 차지하는 것들 중 이해하기 어려운 것들도 있지만 할 수 있다면 최대한 간단 명료하고 단순하고 응용하기 쉽게 알려지는 것이 좋은 선택지라고 생각이 든다.

 

게임 매니저 클래스를 만들며 싱글톤 패턴을 이해하는 부분이 나온다. 싱글톤 패턴이 장점은 리소스나 서비스를 전역으로 사용 가능하고 인스턴스가 한 개임을 보장할 수 있다는 것이라고 생각한다.

싱글톤 패턴 사용 시의 잘못된 습관은 당연히 모든 것을 싱글톤으로 제어하려고 하는 시도가 잘못된 것이니 직관적으로 이해가 가능하고, 단점으로는 싱글톤 클래스가 다른 싱글톤 클래스에 종속 될 때, 유닛 단위의 테스트가 어려워 진다고 하는데 이 부분은 커플링의 문제이기 때문에 싱글톤 만의 문제로 생각해야 되는지 조금 의문이 든다.

 

게임 매니저 클래스를 통해 싱글톤을 설명하고 수명 주기도 보여주고 있다. 게임 매니저는 게임의 전역 데이터, 전역 규칙 같은 것을 담당하고 있기 때문에 싱글톤으로 관리하기 용이하다고 생각한다.

FindObjectOfType<T>()은 지정된 타입의 첫 번째로 로드된 오브젝트를 검색한다고 하고 DontDestroyOntLoad(gameObject)는 새로운 씬이 로드 될 때, 대상 오브젝트가 제거되는 것을 막아 준다고 한다.

 

이상으로 제이펍에서 출판된 유니티로 배우는 게임 디자인 패턴 책의 리뷰를 마칠까 한다.

s******l 2022.12.23. 신고 공감 0 댓글 0