반응형

전체 글 219

위처 3(Witcher 3)를 클리어 한 후에...

너무 유명하지만 서양 RPG를 크게 즐기지 않는 관계로 사놓고 모셔만 두던 위처 3 GOTY 에디션을 플레이하였습니다. 참고로 GOTY 에디션은 원작에 2개의 확장팩인 하츠 오브 스톤(Hearts Of Stone)과 블러드 앤 와인(Blood and Wine)이 포함되어 있는 버전입니다. 덕분에 확장팩까지 하려면 플레이 시간이 일반 RPG에 비하여 굉장히 긴 편입니다. 클리어한 후의 느낌은 이 재미있는걸 왜 이제 했을까 였습니다. 플레이하니 왜 이 게임이 그토록 높은 평점을 받고 온갖 게임상을 다 받았는지 이해할 수 있었습니다. RPG를 좋아하는 사람이라면 특히 판타지 소설, 드라마 혹은 만화를 좋아하는 사람이라면 정말로 강력히 추쳔하고 싶은 작품이라고 느껴졌습니다.  이 게임은 전반적으로 오픈월드 RP..

기타 2024.12.15

자체 3D 엔진만들 때 도움이 될 만한 무료 강의

DirectX 12를 공부하고 각종 예제를 만들어도 보면서 라이브러리화 시키고 있었습니다. 그럴 때 좀 더 좋은 엔진같이 만들고 싶어서 관련 강의를 찾다가 괜찮은 강의를 발견하고 본 후에 추천하려고 합니다. 추천 강좌는 유튜브 무료 강좌이며 아래와 같습니다.Game Engine Series강좌는 해당 유튜브 채널의 재생목록에서 Game Engine Programming 을 클릭하고 처음부터 보면 됩니다. 개인 적으로 만들고 있는 것의 방향성을 고민할 때 에디터를 C#으로 만들거나 FBX 임포트 등을 고민하고 있었습니다. 그런데 해당 강좌는 제가 구상한 관련 내용을 다 포함하고 있어서 좋았습니다. 해당 강좌는 기본 C#, WPF를 이용하여 에디터를 만들고 C++, DirectX 12를 이용하여 게임 엔진을..

[서평] 3D 게임 비주얼과 연출의 기술

이 책은 플레이어 캐릭터 기술, 적 캐릭터 기술, 레벨 디자인 기획, 충돌 판정 기술, 카메라 기술 등을 서술하고 있는 책이다. 좀 더 자세히 말하자면 해당 기술 들을 슈퍼 마리오 3D 랜드, 배트맨: 아캄 시티, 바이오하자드4, 존 오브 더 엔더스:더 세컨드 러너, 콜 오브 듀티: 모던 워페어 3, 젤다의 전설: 스카이워드 소드, 다크 소울 등의 예로 전문가의 눈으로 분석하거나 인터뷰 등의 참고한 자료 들로 설명하고 있다.  이 책은 주로 콘솔 게임 기획과 관련이 있어 주로 모바일 게임이나 온라인 게임을 기획하는 우리나라 기획자들이 많이 안보았을 수도 있을거 같은 생각이 든다. 하지만 게임 기획으로 보자면 이런 것들을 이렇게 기획했겠구나 하는 생각에, 한 편으로는 이런 스타일로 게임을 기획하면 좋겠구나..

개발이야기 2024.08.03

[서평] 게임 엔진 아키텍처

현재 3판까지 나와 있는 이 책의 1판을 읽었습니다. 3판까지 나올정도면  이 책은 기본적으로 1판이 굉장히 잘 쓰여지고 많이 팔렸다는 것을 알 수 있습니다. 원서 1판이 2009년에 나왔고 3판이 2018년에 나왔으니 조금 내용이 오래 전 내용일 수도 있습니다. 하지만 그 때도 이미 CPU 병렬처리와 GPU 위주의 쉐이더 처리를 하고 있는 것을 알 수 있는 책입니다. 최신 판이 조금 궁금해지기는 하지만 1판도 왜 이제 읽었을까 하는 생각이 들 정도로 굉장히 인상 깊은 책입니다. 솔직히 지금봐도 도움되는 내용이 정말 많은 책입니다.  이 책 대학 교제로 쓰인다고 하는데 과연 소수의 천재들이 아닌 일반 대학생 수준에서 내용을 얼마나 이해할 수 있을까 하는 생각이 드는 중급이상이 보기 좋은 책입니다. 메모리..

개발이야기 2024.06.26

[서평] 게임 디자인 원리

게임 디자인 원리: 반드시 알아야 하는 게임 디자인 비법 100가지 우선 이 책은 실무적이거나 최신 트레드의 기법을 이야기 한다기 보다는 게임 디자인 관련해서 100가지의 생각할 만한 주제를 이야기 하고 있습니다. 작가가 외국 여성이고 우리나라에는 생소한 게임들을 디자인하였고 대학에서 온라인 강의를 하시는 분이라는 것도 주목할만 합니다. 덕분에 학원에서 가리켜줄만한 실무적이거나 현실적인 내용보다는 대학 수업에 적합한(?) 전형적인 서양스타일의 사색하게 만드는 책입니다. 기획적인 관점으로 본다면 게임을 만든다는 것은 정말로 하는 것과는 많이 틀린 듯 합니다. 단순히 다른 게임을 벤치마크하고 응용해서 넣는 부분도 있겠지만은 많은 부분은 정말로 여러가지를 고려하여 게임을 기획하게 됩니다. 이 책은 이런 게임 ..

개발이야기 2024.06.21

C++ unique_ptr을 응용하여 자동으로 핸들을 닫는 클래스 만들기

C++을 사용하여 프로그램을 하다보면 핸들을 많이 다루게 됩니다. 특히 I/O 관련 작업을 할 때나 윈도우 API를 사용할 때 파일을 비롯한 각종 핸들(HANDLE)을 사용하게 됩니다. 이 때 다 사용한 핸들을 닫아주지 않으면 핸들 관련 누수(Leak)가 생기게 됩니다. 이럴 경우 unique_ptr을 이용하여 구간에서만 핸들을 사용하고 다 사용한 후에는 자동으로 핸들을 자동으로 닫게하면 위에서 말한 문제가 일어날 가능성이 적어지게 됩니다. 아래 예제 코드를 살펴보겠습니다. #include #include using namespace std; struct FileCloser { void operator()(FILE* file) const { if (file) { fclose(file); std::cout

C++ 프로그래밍 2024.04.15

GTA 5(Grand Theft Auto V)를 클리어 한 후에...

게임을 하게된 이유와 첫 느낌 GTA 6 트레일러가 공개되고 몇 년내에 나온다고 하여 기존에 사놓고 바뻐서 못하고 있었던, 어떻게 보면 방치하던 GTA 5를 하였다. 게임의 첫 인상은 내가 경찰을 공격하는 도둑이 된다는게 어색했다. 하지만 이 게임이 대도둑이나 갱의 삶을 살아보는 거라는 것에 익숙해지면서 게임에 빠져들게 되었다. 게임에 대하여... (장르적 관점) 이 게임은 한마디로 말해서 액션 어드벤처라고 부를 수 있을거 같은데 솔직히 게임 자체를 하나의 게임으로 정의하기가 쉽지 않았다. 오픈 월드 어드벤처 형식을 가지고 있지만 차 레이싱을 너무 잘 만들어 놓아 레이싱 게임이라고 불러도 손색이 없어 보였다. 총으로 하는 액션신은 TPS FPS같기도 하였다. 부가적인 요소라고는 하지만 골프와 테니스는 스..

기타 2024.02.20

게임을 업데이트 하면서 느끼는 것들...

벌써 만든지 2년된 폭격 방어자에 대한 3번째 업데이트를 하면서 느끼는 것들에 대해서 이야기 하려고 합니다. (물론 1번은 단순 안드로이드 SDK 업데이트 였으니 실제로는 2번째 업데이트입니다.) 나만의 게임을 처음 만든다고 했을 때가 몇 년전이었는데 그 때는 정말로 무언가 처음부터 끝까지 만든다는 설레임이 가득했던거 같습니다. 하지만, 실제로 게임을 해본 사람들의 냉정한 평가 속에 한동안은 여러 게임을 이번에는 단순 프로그래머가 아닌 게임 개발자로서 다양한 관점으로 살펴보았던거 같습니다. 덕분에 게임 관련 글을 써도 프로그래머적인 시각보다는 기획자나 그래픽 디자이너의 시각에서 더욱 살펴보게 된거 같습니다. 1인 개발로 이런 저런 작업을 다하다보면 정말로 다양한 롤의 관점에서 게임을 보게 됩니다. 그러다..

개발이야기 2024.02.03

[서평] 가상 면접 사례로 배우는 대규모 시스템 설계 기초 2

이 시리즈의 1권이 인상 깊어서 바로 구매하여 보게된 2권입니다. 2권에서는 근접성 서비스, 주변 친구, 구글 맵, 분산 메시지 큐, 지표 모니터링 및 경고 시스템, 광고 클릭 이벤트 집계,호텔 예약 시스템, 분산 이메일 서비스, S3와 유사한 객체 저장소, 실시간 게임 순위표, 결제 시스템, 전자 지갑, 증권 거래소 등을 다루고 있습니다. 1권처럼 인터뷰용이라고 하나 인터뷰 관련 내용은 간략한 요구조건 정의 정도라고 볼 수 있고 나머지는 개략적인 설계에 대해서 나와 있습니다. 개략적인 설계를 설명하면서 핵심 알고리즘은 좀 더 자세히 설명하는 형식을 취하고 있습니다. 책의 내용은 글로벌 빅테크 기업들의 백엔드 서비스를 어떻게 만드는지를 잘 설명하고 있는 듯 합니다. 책의 내용이 대규모 시스템을 대상으로 ..

[서평] 밑바닥부터 시작하는 딥러닝 3

이 책은 밑바닥부터 시작하는 딥러닝 시리즈 1, 2권을 너무 재미있고 인상 깊게 읽어서 책 이름만 보고 구매하고 읽게된 책입니다. 딥러닝 관련하여 굉장히 많은 책을 읽은 것은 아니지만 몇 개의 강좌를 보고 몇 종류의 책을 읽은 후의 느낌은 딥러닝을 가장 쉬고 코드 레벨로 설명하고 있는 책은 이 시리즈인 듯 싶습니다. 누군가에게나 추천할 만한 시리즈의 책인 듯 싶습니다. 이 책은 해당 시리즈의 1권만 읽은 뒤 읽으실 수 있습니다. 이 시리즈가 뭘까? 1권 읽고 2권이나 3권 아무거나 읽어도 되게 구성되어 있습니다. 대신 1권은 필 수 있습니다. 참고로 1, 2권에 대한 내용은 아래 링크에 적어 놓았습니다. [서평] 밑바닥부터 시작하는 딥러닝 1, 2 & 관련 수학책 시리즈 3권의 내용은 파이토치나 텐서플로..

인공지능 2024.01.23

[서평] 밑바닥부터 시작하는 딥러닝 1, 2 & 관련 수학책

밑바닥부터 시작하는 딥러닝 딥러닝의 기초부터 이론과 간단한 파이썬 구현 코드를 설명하는 책입니다. 텐서플로 2.0 케라스와 같은 딥러닝 프레임워크를 공부를 하다보면 대충 응용법은 알거 같은데 해당 프레임워크가 어떻게 돌아가고 왜 이런 건지 알수가 없을 수 있습니다. 또한 지식의 깊이 한계로 응용에도 한계도 느껴질 때가 있습니다. 이런 분들께서 보시면 좋은 책인듯 싶습니다. 저와 같은 경우는 워낙 기초 이론관련 강좌를 많이 보고 본 책이라 마치 복습하는 거 같았는데 그래도 딥러닝 기초에 대한 코드와 자세한 설명이 많은 도움이 되었던거 같습니다. 또한 딥러닝에 입문해서 이제 지도학습이니, 비지도학습이니 강화 학습이니 하이퍼파라메터니 등등 기본 개념을 익혔다면 반드시 보면 좋은 최고의 개념서 중의 하나인 거 ..

인공지능 2024.01.17

SWIFT 디버깅시 유용한 API

실제로 사용해보고 너무 유용했던 Swift로 디버깅 할 때 도움이 되는 API 공유합니다. 1. 현재까지의 콜스택 정보 프린트하기 Thread.callStackSymbols.forEach{print($0)} 복잡한 앱이나 프그램을 만들다보면 자연스럽게 많은 함수를 만들게 됩니다. 해당 API는 특정 함수가 호출될 때 어디서부터 어떤 순서로 호출되었는지를 알려고 할 때 유용한 함수입니다. 물론 콜스택은 브레이크 포인터를 걸어 놓으면 볼 수 있지만 때때로 여러 번의 호출 중 이상한 곳에서 호출되는지를 체크하고 싶을 때가 있습니다. 해당 상황에서 매번 브레이크를 걸고 디버깅하는 것은 디버깅 시간을 많이 소모하기 때문에 해당 함수를 사용하여 디버깅 로그를 보고 파악하면 디버깅 시간을 많이 줄 일 수 있습니다. ..

iOS 프로그래밍 2023.12.27

[서평] 가상 면접 사례로 배우는 대규모 시스템 설계 기초

시스템 설계 면접 관련이라고 해서 면접 형식의 책인줄 알았습니다. 하지만 실제로는 면접 관련 내용은 일종의 기술적 요구사항 파악 정도 입니다. 그리고 나머지는 해당 문제에 대한 기초적인 설계와 설명을 담고 있는 책입니다. 웹이나 앱 서비스의 백엔드 시스템 관련 내용을 다루고 있습니다. 읽고 난 후의 전반적인 느낌은 백엔드 개발자에게 많은 도움이 되는 책인 듯 합니다. 내용은 신입이나 초보가 보기에는 조금 어려울 수도 있습니다. 키-값 저장소, 분산 시스템을 위한 유일 ID 생성기, URL 단축기, 웹 크롤러, 알림 시스템, 뉴스 피드 시스템, 채팅 시스템, 검색어 자동 완성, 유튜브, 구글 드라이브 설계 등 각종 서비스나 기능에 대한 설계를 담고 있습니다. 상세한 설계라기보다는 큰 그림으로 보는 개괄적인..

반응형