강의 목표 : 게임 프로그래밍이 가지는 특수성을 파악하고 언리얼 오브젝트의 필요성 이해 언리얼 오브젝트 선언과 엔진 내부 컴파일 과정 학습 강의 내용 : 게임이 대형화되며 성능과 유지보수 두 가지 모두 중요해짐 언리얼 엔진은 C++ 언어를 확장한 언리얼 오브젝트라는 객체 구조를 고안함 지정된 매크로를 사용해 빌드를 수행하면, 추가 코드가 자동으로 만들어지는 구조를 가짐 언리얼 오브젝트를 사용해 대규모 게임 제작을 안정적으로 설계하고 구현할 수 있음 [ ✔️게임 프로그래밍의 특수성 ] 📍사용자와 개발자의 관점차이 : 사용자 : 쾌적한 경험을 위해 단일 컴퓨터에서 최대 성능을 뽑아야함 개발자 : 게임의 규모가 커질수록 방대하고 복잡한 기능을 안정적으로 관리해야함 이러한 이유로 하드웨어에 직접 접근해서 성능을..
강의 목표 : 언리얼 환경에서 알아두어야 할 기본 타입과 고려할 점 캐릭터 인코딩 시스템에 대한 이해 언리얼 C++이 제공하는 다양한 문자열 처리 방법과 내부 구성의 이해 강의 내용 : 언리얼이 C++ 타입 int 를 사용하지 않는 이유 다양한 캐릭터 인코딩 시스템 언리얼의 문자열 이해 FString의 구조와 사용 방법 FName의 구조와 사용 방법 [ ✔️기본 타입 ] 📍따로 지정하는 이유 : C++ 언어는 1970년대에 개발되었다. ( 엄청 오래됨) 플랫폼마다 C언어를 구현하는 방법이 달랐다. (플랫폼 파편화, Platform Fragmentation) 최신 규약에서 int는 최소 32비트를 보장하도록 규정되어 있지만 어떤 플랫폼에선 64비트로 해석될 수 있다. (int 타입의 크기 모호) 📍게임 제..
강의 목표 : 언리얼 C++ 코딩 표준 이해 / 주의점 확인 강의 내용 : public 에서 private 으로 이어지는 클래스 체계 명명규칙 : 파스칼 케이싱(Pascal Casing), 언더스코어(_) 사용x, 클래스와 구조체의 고유 접두사 코드의 명확성 : 파라미터 In/Out 접두사 명시, const 지시자 적극 활용, 레퍼런스(&)를 활용한 복사 방지, auto 키워드 사용 자제 Find In Files 활용 #include 구문 사용시 의존성 고려할 것 (의존성 최소화 시키기) [ ✔️코딩 표준 Coding Standard ] = 코딩 스타일(Style), 코딩 컨베션(Convention) 프로그래밍을 작성하는데 지켜야 하는 프로그래밍 이름 규칙과 작성법 등을 지정한 가이드라인 프로젝트를 진행..
[✔️자료구조 ] 📍선형 vs 비선형 : 1. 선형 구조 : 자료가 순차적으로 나열된 형태하나의 자료 뒤엔 또다른 자료가 하나만 올 수 있다.배열 / 연결 리스트 / 스택 / 큐 2. 비선형 구조 : 자료 뒤에 다수의 자료가 올 수 있는 형태트리 / 그래프 [ ✔️배열 vs 동적 배열 vs 연결 리스트 ]배열(array), 동적 배열(vector), 연결 리스트(list)는 어떤 프로그래밍 언어든 존재하는 자료구조다. 📍배열 : 처음 할당된 메모리 공간 크기를 변경할 수 없다.연속된 메모리 공간을 활용한다. → 임의접근(Random Access,RA) 가능장점 : 연속된 메모리 공간, RA단점 : 메모리 공간 크기 변경 불가 📍동적 배열 : ..
[ ✔️오른손 법칙 ] 📍오른손 법칙이란? :"우수법" 이라고 불리기도 한다.오른손으로 벽을 짚으면서 앞으로 나아간다는 의미어떤 미로에서든 통용되는 방법은 아니지만, 탈출로가 있다는게 보장된다면 어느 정도 효과 있는 방법이다. 📍구현법_이론 :case1) 현재 바라보는 방향을 기준으로 오른쪽으로 갈 수 있는가? : 오른쪽 방향으로 90도 회전 -> 앞으로 한 보 전진 case2) 현재 바라보는 방향을 기준으로 전진할 수 있는가? : 앞으로 한 보 전진 case3) 위의 두 경우 모두 불가능한 경우 : 왼쪽 방향으로 90도 회전 방향값은 열거형으로 선언하여 int 값으로 표현 할 수 있도록 함enum Dir // 반시계 방향{ DIR_UP = 0..