일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 디자인패턴
- 생성자
- 게임 개발
- 자료구조
- Unreal Engine
- 프로세스
- Unreal Engine5
- 복사대입연산자
- Unreal
- CPP
- 소멸자
- AI
- C++
- 게임개발
- 프로그래밍
- 포인터
- C언어
- 언리얼엔진5
- 언리얼 엔진5
- 언리얼
- 복사생성자
- 데이터구조
- 언리얼엔진
- cpp개발
- 언리얼5
- 배열
- effectivec++
- BehaviorTree
- 게임프로그래밍패턴
- UE5
- Today
- Total
목록게임프로그래밍패턴 (3)
리얼 개발
관찰자 패턴객체 사이에 일 대 다의 의존 관계를 정의해두어, 어떤 객체의 상태가 변할 때 그 객체에 의존성을 가진 다른 객체들이 그 변화를 통지 받고 자동으로 업데이트 될 수 있게 만듭니다. 오늘날에 모델-뷰-컨트롤러 (MVC) 패턴은 아주 많이 사용되고 있다. 그 기반에는 관찰자 패턴이 있다. 업적 달성업적 시스템을 추가한다고 해보자. ‘다리에서 떨어지기’ 업적같은 경우 물리 엔진 코드 한 가운데서 업적 달성 코드를 실행해야 할 것이다. 특정 기능을 담당하는 코드는 항상 한데 모아놓는게 좋다. 그럼 업적 코드들이 모아져 있고, 커플링되지 않게 하려면 어떻게 해야할까? 답은 관찰자 패턴을 적용하면 된다. 관찰자 패턴을 적용하면 누가 받든 상관없이 알림을 보낼 수 있다. 다음과 같이 코드로 표현할 수 있다..
경량 패턴공유를 통해 많은 수의 소립 객체들을 효과적으로 지원합니다. (GoF 본문 설명) 웅장한 숲과 하늘 위로 솟아오른 수많은 노송들, 잎은 스테인드글라스 창처럼 햇빛을 산란시켜 황금빛 기둥을 만든다. 판타지 게임에서 흔히 볼 수 있는 설정이며, 일반적으로 이런 장면은 경량 패턴으로 종종 구현한다. 숲에 들어가는 나무들구비구비 뻗어 있는 숲을 글로는 몇 문장으로 표현할 수 있지만, 실시간 게임으로 구현하는 것은 전혀 다른 얘기다. 우리가 나무들이 화면을 가득 채운 빽빽한 숲을 볼 때, 그래픽스 프로그래머는 1초에 60번씩 GPU에 전달해야 하는 몇백만 개의 폴리곤을 본다. 수천 그루가 넘는 나무마다 각각 수천 폴리곤의 형태로 표현해야 한다. 설사 메모리가 충분하다고 해도, 이런 숲을 그리기 위해서는 ..
이 카테고리는 "로버트 나이스트롬"의 "게임 프로그래밍 패턴"을 보고 개인적으로 필요하다고 생각되는 내용을 요약한 글입니다. 패턴의 개념이란?패턴은 오랫동안 정형화되고 축적된 경험을 추상화한 지식 단위이다. 여러 사람이 공유하는 개념이기 때문에 패턴 이름만으로도 많은 정보를 한 번에 정확하게 전달할 수 있다.해당 책의 요지“GoF의 디자인 패턴”에 나오는 패턴들 중 저자가 실제 게임을 제작하며 썼던 패턴들을 소개해주고 있으며 딱딱한 ‘직원 정보’, ‘은행 계좌’가 아닌 ‘몬스터’, ‘업적’ 같은 것들을 예제 삼아 패턴을 설명하고 있다. 또한 이 책 어디에도 3D 그래픽스에 필요한 선형대수나 게임 물리에 필요한 미적분 내용은 나오지 않는다. AI의 탐색 트리에서 알파-베타 가지치키를 하는 방법이나, 오디오..