프로젝트 52

[게임 프로그래머 입문 올인원] 2D게임 프레임워크 : 애니메이션 (104강)

A. 애니메이션 1. 애니메이션 만들기a. 투명화 처리하기이미지를 나타내는 spriteActor.cpp쪽에서 BitBlt를 수정BitBlt는 투명화처리를 못해서 다른 TransparentBlt를 사용해야 함    b. 리소스인 플립북 생성해주기애니메이션 자체를 나타내는 플립북을 만들어주기   c. 리소스매니저에서 플립북 넣어주기리소스로 플립북을 만들었으니 플립북을 리소스매니저에 저장해주기     d. 플립북을 사용하는 플립북액터 생성플립북을 사용해주는 액터를 생성해준다 (마치 유니티의 애니메이터)    e. 액터를 player로 대입해주기   f. devScene에서 움직임 생성해주기    💥 오류발견      출처 : https://www.inflearn.com/course/%EA%B2%8C%EC%9..

[게임 프로그래머 입문 올인원] 2D게임 프레임워크 : 코드 구조 설계 (103강)

A. 코드 구조 설계여태까지는 스프라이트를 렌더링해서 DevScene에서 출력하고 있었음  따라서 플레이어를 만들어서, 플레이어의 이미지를 위와같이 출력한다고 하면플레이어 안에서 따로 매번 만들어줘야 함  1. 언리얼 방식a. 액터 생성하기 액터 : 씬에 배치할 수 있는 모든 오브젝트  여태까지 사용하던 Object와 비슷한 내용    b. SpriteActor를 생성하기Actor는 씬에서 배치될수 있는 모든 오브젝트를 의미함즉, 모든 오브젝트는 Sprite가 없을 수 있음  따라서 SpriteActor를 따로 생성해서 Actor를 상속받게 해 렌더링이 필요한 부분만 따로 만들어 준다    c. 개발씬에서 액터를 추가   d. 배경화면 렌더링하기위와같은 방식으로 배경화면을 렌더링    💥 구현 고민위에..

[게임 프로그래머 입문 올인원] 2D게임 프레임워크 설계 : 스프라이트 (102강)

A. 2D게임 프레임워크 설계 1. 코드 정리하기 포트리스 모작한 코드를 그대로 재사용해서 만드는데 기존 코드 공부한걸 삭제하고 싶지않아서 GameCoding3라는 이름으로 하나 생성했다 a. 프로젝트 복사하기 [VSC] 프로젝트를 복사해 새 프로젝트로 만들기 A. 프로젝트를 복사해 새 프로젝트로 만들기 기존에 사용하던 코드를 지키고 싶어서 새로운 곳에서 시작할 예정 출처 : https://dltndltn.tistory.com/3 현재 프로젝트의 내용을 복사해서 다른 프로젝트 monamu.tistory.com b. 코드 정리하기 💙 obj 파일? 따라서 위 폴더를 삭제해도 다시 생성되기 때문에 삭제해준다! c. 폴더 정리하기 Resources : 리소스 관리하는 폴더 Binaries : 빌드한 결과물을 ..

[게임 프로그래머 입문 올인원] 동적할당과 캐스팅 : 인벤토리 (38강)

더보기 여기에 이어서 작성하는 글 [게임 프로그래머 입문 올인원] 동적할당과 캐스팅 : 아이템 드랍 (36강 + 38강) A. 아이템 드랍 실습 (text RPG) 1. 새 프로젝트 생성하기 a. 솔루션은 서류 가방 솔루션은 서류가방이고 프로젝트는 서류야,,,! b. 시작 프로그램(프로젝트) 설정 아니면 그냥 아래처럼 프로젝트 우클 monamu.tistory.com B. 인벤토리 실습 1. Inventory 생성 먼저 Inventory 를 왜 생성해야 하는지 알아보자 앞서 만들어진 item에 대한 권한을 누군가가 가지고 메모리를 해제 해야 하는데 하나하나 찾아서 각 해제하기 쉽지 않다 따라서 Inventory 객체를 생성해서 각 Item을 배열로 넣어주고 Item이 생성, 소멸될때마다 Inventory의..

[게임 프로그래머 입문 올인원] 동적할당과 캐스팅 : 아이템 드랍 (36강 + 38강)

A. 아이템 드랍 실습 (text RPG) 1. 새 프로젝트 생성하기 a. 솔루션은 서류 가방 솔루션은 서류가방이고 프로젝트는 서류야,,,! b. 시작 프로그램(프로젝트) 설정 아니면 그냥 아래처럼 프로젝트 우클릭으로 설정해도 됨 (우클릭+a) 2. Item 생성 및 출력하기 a. Item 클래스 생성하기 Item.cpp / Item.h 파일 생성 아이템 클래스의 기본적인 틀(생성,소멸자, 멤버변수) 작성 아이템 희귀도 enum을 작성해주고 멤버변수에 포함 아이템을 상속할 Weapon과 Armor class를 작성 아이템 클래스와 동일하게 기본적인 틀 작성 각 자식클래스의 멤버변수에 접근하기 위한 get,set메소드 처리 HTML 삽입 미리보기할 수 없는 소스 #pragma once //아이템 희귀도 e..

[게임 프로그래머 입문 올인원] 포인터와 배열 : 달팽이 문제 (25강)

A. 달팽이 문제 1. 문제 a. 목표 사용자가 입력한 n값에 따라 2차원 배열을 생성하고 생성하고, 달팽이 모양으로 숫자를 배치하는 프로그램 b. 기능 및 개발환경 사용자로부터 n값 입력 받기 n값에 따라 2차원 배열 생성 달팽이 모양으로 배열에 숫자 배치 1) 처음 방문한 곳만 숫자를 배치하고 2) 배열의 끝에 도달했다면 다음 방향으로 배치 3) 끝날 때 까지 (인덱스가 n*n) 반복 개발 환경 : 프로그램은 C++ 언어를 사용해 개발 2. 프로그램 구현 a. 사용자로부터 n값 입력받기 HTML 삽입 미리보기할 수 없는 소스 int N; int main() { cin >> N; } b. n값에 따라 2차원 배열 생성 및 출력 코드 작성 1) 2차원 배열 선언하기 (최대크기로 선언) 2) 입력받은 수 ..

[게임 프로그래머 입문 올인원] 포인터와 배열 : 로또 번호 생성기 (24강)

A. 로또 번호 생성기 1. 프로젝트 개요 및 설계 a. 목표 프로그램 실행 시 마다 랜덤한 6가지 수를 추출하고, 수를 오름차순으로 정렬하는 것 b. 설계 무작위의 6개 로또 번호를 생성 개발 환경 : 프로그램은 C++ 언어를 사용해 개발 2. 프로그램 구현 a. 두 수를 스왑하는 코드 작성하기 HTML 삽입 미리보기할 수 없는 소스 //스왑하는 기능 void Swap(int& a, int& b) { int temp = a; a = b; b = temp; } b. 버블 소팅 기능 작성하기 HTML 삽입 미리보기할 수 없는 소스 //버블 소팅기능 생성 void Sort(int* numbers, int count) { for (int i = 0; i < count; i++) { for (int j = 0;..

[게임 프로그래머 입문 올인원] 포인터와 배열 : 배열 실습 (19강)

A. 배열 실습에 앞서 1. 먼저 생각해보기 a. 게임의 기초적인 구조 게임은 항상 돌아가야 함 어딘가에서 while문으로 사용자에게 계속된 입력, 로직, 출력을 받는 형태로 진행됨 따라서 대부분의 게임 구조는 아래와 같음 b. 실습해볼 맵의 기본 구조 5X5의 구조 사용자 ♨ 가 □ 내에서는 자유롭게 움직이고 ■로는 이동하지 못하게 제작 c. 실습해볼 맵의 기능 0) 기본 처리 커서의 깜빡임 제어하기 1) 입력 사용자의 움직임을 감지하기 2) 로직 플레이어 움직이기 (범위 체크, 위치 정리, 새 위치 이동) 입력값 처리하기 (값이 유효한지 체크, 유효하다면 플레이어 움직이기 실행) 3) 출력 값에 따른 맵 생성하기 (커서의 포지션을 잡아주기를 실행 후 생성) B. 배열 실습 1. 1차원 맵으로 생성하기..

[게임 프로그래머 입문 올인원] 함수와 디버깅 : TextRPG (15강)

A. TextRPG 연습하기 1. 게임 흐름 시작 로비 입장 직업 선택 123 필드 입장 12 몬스터 스폰 전투 12 후 결과에 따른 분기문... a. 게임의 기본 구조 게임의 기본 구조는 while문으로 작성되어있음 HTML 삽입 미리보기할 수 없는 소스 void EnterLobby() { while (true) { //입력 //로직 ----- 일부 로직이 서버에 분산되어 있다면 온라인 게임 / 싱글게임이면 X //출력 (아트 리소스) } } 2. 코드 작성하기 a. 필드 생성 입장 하자마자 로비로 들어가야 하기 때문에 바로 EnterLobby 실행 직업 생성 void EnterLobby(); int main() { EnterLobby();//1. } void EnterLobby() { while (t..

[인프런] 게임 프로그래머 입문 올인원 목차

한 카테고리를 모든 강의 내용으로 만들지 않고 주제별로 나눌 예정입니다 따라서 블로그 글의 위치가 뒤죽박죽될게 뻔하기 때문에 헷갈리지 않기 위해 적어둡니다!! 아마 여기에는 만드는 게임 2개가 올라갈 예정입니당 1. 목차 a. C++ [게임 프로그래머 입문 올인원] 1강 : 환경 설정 A. 환경 설정하기 1. Visual Studio a. 설치하기 이미 여기서 Visual Studio를 설치했기 때문에 자세하게 작성하지 않음 C# 프로그래밍 기초 : C# 소개 및 설치 A. C# 기초 1. C# 소개 a. C#이란? .NET Framework에서 monamu.tistory.com b. 자료구조/알고리즘 c. STL d. 게임 수학 e. Windows API f. 게임 서버 입문 2. 만드는 게임 a. 포..