경량 패턴
·
게임 디자인 패턴
GoF의 디자인 패턴에 기록된 정의는 "공유를 통해 많은 수의 소립객체들을 효과적으로 지원합니다." 입ㄴ디ㅏ. 경량 패턴을 왜 사용하는지 알아보기 위하여 숲을 구현하는 것을 예시로 알아보겠습니다.숲을 구현한다 라는 문장은 수 많은 나무들이 존재하는 숲을 구현한다 라는 뜻이고 그래픽스 프로그래머는 1초에 60번씩 GPU에 전달해야 하는 수백만 개의 폴리곤이 있습니다. 또한 전체 데이터를 CPU에서 GPU로 버스를 통해 전달을 해야합니다.  간단하게 나무에 대한 Class를 제작해보면class Tree{private: Mesh mesh; Texture bark; Vector Position; double heigth; double thickness; Color barkTint;};와 같은 방식으로 구..
명령(Command) 패턴
·
게임 디자인 패턴
GoF 디자인 패턴에서의 명령 패턴에 대한 정의는 "요청 자체를 캡슐화하는 것입니다. 이를 통해 요청이 서로 다른 사용자를 매개변수로 만들고, 요청을 대기시키거나 로깅하며, 되돌릴 수 있는 연산을 지원합니다"라고 써있다. 이는 매우 복잡하고 난해하게 써있다고 생각한다. 간단하게 정의하면 콜백을 객체지향적으로 표현한 것이라고 한다.  A, B, X, Y키가 존재하는 게임기에 대해 Input Handler를 구현해보자void InputHandler::handleInput(){ if(isPressed(BUTTON_X)) jump(); else if(isPressed(BUTTON_Y)) Swap(); else if(isPressed(BUTTON_A)) fireGun(); else if(isPresse..