전체 글 298

[UE4] Project Setting 설정 추가하기(UDeveloperSettings)

UE4 에디터에서 DeveloperSettings를 부모로 하는 C++ 클래스를 만듭니다. config 설정, 디스플레이 이름, 카테고리, 설정 항목들을 추가합니다. UCLASS(config = TheFunniest, Defaultconfig, meta = (DisplayName = "The Funniest Thing")) class THEFUNNIEST_API UMyDeveloperSettings : public UDeveloperSettings { GENERATED_BODY() UPROPERTY(EditAnywhere, config, Category = "My Config | Settgins") FName MySetting = "my game"; }; 에디터에서 Project Setting을 열어 보..

[git] git 명령이 목록

Repository 생성 새로운 로컬 저장소를 생성하기 $ git init [project_name] 이미 있는 저장소로 부터 다운로드 하기 $ git clone [url] Local Repository 살펴보기 아직 commit 되지 않은 새파일 혹은 변경된 파일 목록 보기 $ git status unstage 파일들의 변경 보기 $ git diff staged 파일들의 변경 보기 $ git diff --cached 모든 staged와 unstage 파일들의 변경 보기 $ git diff HEAD 두 commit id들 사이의 변화 보기 $ git diff commit1 commit2 파일의 변경일과 작성자의 변화 목록 $ git blame [file] commit와/또는 파일의 변화 보기 $ git ..

각종 팁/git 2021.12.26

[git] Gitlab 사용 방법 with Git-Fork

먼저 Gitlab에서 비어 있는 프로젝트를 생성해 봅시다. 내용들을 적절히 입력하고 프로젝트 생성합니다. 생성이 완료 되었다면 Clone 버튼의 HTTPS 주소를 복사합니다. Git-Fork 클라이언트를 실행하여 메뉴에서 File -> Clone을 선택하여 Clone 합니다. 참고 : [Git GUI] Git-Fork 소개 탐색기로 열어 보면 다음과 같이 폴더가 생성되어 있습니다. 테스트를 위해 다음과 같이 메모장을 열어서 README.txt 파일을 생성합니다. Local Changes에 README.txt 파일이 보이는 것을 확인 할 수 있습니다. 이후 글들은 Git의 핵심 두 가지 핵심 개념을 알아야 합니다. Local Repository, Remote Repository가 있으며 이를 이해 한다. ..

각종 팁/git 2021.12.23

[Git GUI] Git-Fork 소개

https://git-fork.com/ 다음 사이트에서 클라이언트를 다운로드 받을 수 있습니다. 클라이언트는 Windows와 Mac을 지원합니다. 클라이언트를 다운로드 받은 다음 첫 화면은 다음과 같습니다. 저의 경우 작업 환경이 밝으면 눈이 피로 해서 어두운 화면을 선호합니다. 메뉴에서 Window -> Switch Theme를 선택해서 어두운 테마로 변경하여 기호에 맞는 테마를 사용할 수 있습니다. 최초로 Git을 시작할때는 Init New Repository를 선택하여 Repository를 만들 수 있습니다. Repository를 생성화면 다음과 같이 Git의 기능들을 GUI로 사용할 수 있습니다. gitlab과 같은 것들과 연동해서 사용하려면 하려면 File -> Clone 메뉴를 선택하여 Rep..

각종 팁/git 2021.12.23

[UE5] 나나이트 소개

나나이트 소개 나나이트는 한 가지 기능이 아니라 여러가기 기술들이 복합적으로 적용된 결과물 버추얼 텍스처링처럼 지오메트리 버전 뷰에 따라 필요한 디테일 수준의 지오메트리 데이터만 가상화 폴리곤 수나 드로 콜의 제약 없이 하이폴리곤 메시를 바로 사용 로우폴리곤 + 노멀 맵 대신 하이폴리곤 모델을 바로 사용 가능 나나이트 개발 목표 영화에 사용되는 에셋을 퀄리티 손실 없이 그대로 사용 가상화된 지오메트리 -> 화면에 보이는 것만 렌더링 제한 없는 렌더링 예산 -> 폴리곤 수, 드로 콜, 메모리 렌더링 파이프 라인을 새로 발명하는 수준의 개발이였다. 결국인 삼각형, 삼각형은 렌더링의 가장 기본 단위이다. 화면에 보이는 삼각형을 빠르게 그리자. GPU 주도 파이프라인 Retained 모드 렌더러 전체 GPU씬 ..

이득우의 언리얼 C++ 게임 개발의 정석

Unreal Engine C++ 개발을 전문적으로 다루는 책이 없었습니다. 프로그래머들은 C++로 개발하기 위해 여기 저기 흩어져 있는 자료들을 찾고 이 기능이 원하는 기능인지 코딩하여 확인을 하는데 이러한 수고들을 줄여 줄 수 있다는 측면에서 이 책은 매우 유용합니다. 책에서 의도한 대로 C++로 불가능한 영역을 제외한 대부분의 기능들을 C++로 예제들을 작성하였습니다. 간단한 게임이지만 RPG 액션 게임으로서 갖추어야할 기본적인 기능들을 모두 맞볼 수 있는 예제로 재미있게 책을 읽어 나갈 수 있었습니다. Unreal Engine 4를 처음 접하시는 분은 다음의 책을 먼저 읽고 전체의 기능을 좀 더 쉽게 접근 하는 것을 추천합니다. [독서 리뷰] - 실전 게임 제작으로 배우는 언리얼 엔진 4 실전 게임..

독서 리뷰 2021.12.19

[UE4] visual studio 2019 자동 들여쓰기 설정

C++ 코딩을 할 경우 UFUNCTION, UPROPERTY와 같은 매크로를 사용합니다. 이러한 매크로는 ';'으로 끝나지 않기 때문에 다음행을 입력하려고 하면 다음과 같이 자동들여쓰기가 됩니다. 꽤 성가신데 이를 끄는 방법은 다음과 같습니다. 메뉴에서 Tools -> Options...을 실행하여 indenting 설정을 Block으로 변경합니다. 그렇지만, Identing Smart 기능을 사용하지 못하면 반대로 불편한 경우도 있으니 본인의 스타일에 맞게 사용해야 겠습니다. Block으로 사용할 경우 Identation에서 설정된 기능을 모두 끄는 것입니다. Smart로 설정하고 본인에 맞는 설정으로 변경하는 것도 검토하면 좋겠습니다.

[UE4] Unreal Engine Anim blueprint C++ 개발 설정

AnimInstance를 부모로하여 C++ 클래스를 만듭니다. UCLASS() class ARENABATTLE_API UABAnimInstance : public UAnimInstance { GENERATED_BODY() ... }; AnimBlueprint의 부모로 C++로 생성한 ABAnimInstance로 설정합니다. C++ 코드에 다음과 같이 멤버 변수로 CurrentPawnSpeed와 IsInAir가 있습니다. UCLASS() class ARENABATTLE_API UABAnimInstance : public UAnimInstance { GENERATED_BODY() ... private: UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Pawn,..

[UE4] Unreal Engine 4 include 참조 경로 설정

Unreal Engine의 Visual Studio Project파일은 자동으로 생성하므로 참조 경로를 프로젝트에 직접 추가하는 방법을 사용하지 않습니다. 아래 그림과 같이 생성을 합니다. Characters폴더 하위에 ABCharacter.h 파일이 있고 GameFramework 폴더에는 ABGameMode.h 파일이 있습니다. #include "ABGameMode.h" #include "Characters/ABCharacter.h" #include "GameFramework/ABPlayerController.h" AABGameMode::AABGameMode() { DefaultPawnClass = AABCharacter::StaticClass(); PlayerControllerClass = AABPl..

실전 게임 제작으로 배우는 언리얼 엔진 4

이 책은 게임 개발에 대한 기본적인 지식이 있다면 기획, 아트, 테크에 상관 없이 쉽게 이해 할 수 있도록 잘 설명이 되어 있다. 게임 개발 마인드, 개발 전반적인 절차 및 역할들 또한 상세하게 설명하고 있어서 Unreal Engine 4 사용 방법을 익히는 그 이상의 책이다. 페이퍼 닌자 게임의 스테이지 1을 만드는 과정을 하나씩 하나씩 디테일하게 설명하며 UE4 엔진의 기능과 개념들을 익힐 수 있었다. 예전에 UE4를 익힐때는 프로그래머 이고 역할이 명확했기 때문에 프로그래머들이 알아야할 기능들 위주로 편식을 했었는데 이 책을 읽으면서 다른 포지션의 작업들에 대한 이해도를 넓힐 수 있어서 좋았다. 특정 하나의 부분을 심도 있게 설명하는 책하는 책이 아니라 게임 개발의 A-Z까지 폭넓게 설명하는 책이다..

독서 리뷰 2021.12.02