Game Dev 150

간단한 ActiveX 수동설치 만들기

시작하기 전에 Inno Setup과 IS Tool 두가지 유틸리티가 필요합니다. Inno Setup은 Install Wizard를 자동으로 만들어주는 프로그램이고 IS Tool은 Inno Setup이 만들어주는 Setup Script를 쉽게 제작할 수 있는 툴 입니다. 두 프로그램 모두 프리웨어이기 때문에 링크를 클릭하면 쉽게 다운받을 수 있습니다. Inno Setup 대신 Install Factory를 사용할 수도 있습니다만 Install Wizard 모양 등에서 차이가 나게 됩니다. 설치를 다 마쳤으면 IS Tool을 실행합니다. 그리고 "Create a new empty script file"을 체크하여 빈 스크립트를 생성합니다. 제대로 생성하였다면 아래와 같은 빈 화면이 나타날 것 입니다. 이제 ..

Game Dev/Article 2009.04.28

중첩을 피하는 코딩 스타일

코딩을 하다보면 계층 구조 깊숙이 있는 포인터를 다루는 경우가 많이 있다. 예를들어 A 포인터에서 B 포인터를 얻어내고 B 포인터에서 C 포인터를 얻어내고... 이 경우 포인터를 얻어내는 것도 쉬운 일이 아니지만, 잘못된 포인터를 참조하지 않도록 방어적 프로그래밍을 하는 것도 매우 중요하다. 그리고 대부분의 경우 NULL 체크를 위해 다음 2가지 중 한 방법을 취할 것으로 생각된다. A* pA = NULL; B* pB = NULL; C* pC = NULL; pA = GetA(); if (pA) { pB = pA->GetB(); if (pB) { pC = pB->GetC(); if (pC) { pC->Func(); } } // end of if (pB) } // end of if (pA) 1. if 문의 ..

Game Dev/Article 2009.04.12

Feature Creep

게임 개발의 암세포! FEATURE CREEP (Click) Feature Creep으로 고생하는 게임 개발 프로젝트의 공통점은 다음과 같습니다. 프로젝트 초기에 만들려고 했던 것이 분명하게 구체화되어있지 않았습니다. 아무것도 구체화되어있지 않으면서 정작 만들고자 하는 것은 거대한 꿈 덩어리입니다. 현실 감각을 잊은 지나친 열정을 갖고 있습니다. 단 한개의 궁극 완성도 제품을 만들려는 열망만 가득합니다. 현실적으로, 신차를 개발해도 포니부터 시작해야 소나타도 만들고 그랜저도 만들고 궁극적으로 에쿠스도 만드는건데, 처음부터 페라리를 만들려고 합니다. 즉 프로젝트 범위의 상한선을 미리 그어놓지 않았습니다. 디렉터가 중간 결과물이 별로 마음에 들지 않는다는 이유로 당황합니다. 그리고 돌파구를 "더 멋진 시스템..

Game Dev/Scrap 2009.03.29