게임 개발/Unreal Engine 80

[UE4] Project Setting 카테고리 설정 (UDeveloperSettings)

Project Setting원하는 카테고리 이름을 새로 만들고 섹션을 설정 할 수 있습니다. UCLASS(config = TheFunniest, Defaultconfig, meta = (DisplayName = "The Funniest Thing")) class THEFUNNIEST_API UMyDeveloperSettings : public UDeveloperSettings { GENERATED_BODY() public: virtual FName GetCategoryName() const override; #if WITH_EDITOR virtual FText GetSectionText() const override; virtual FText GetSectionDescription() const over..

[UE4] 캐릭터 점프 속도 빠르게 하기

캐릭터의 움직임 관련해서는 Character Movement Component에서 설정 할 수 있습니다. 점프 이후 떨어 지는 속도는 Gravity Scale로 조정 할 수 있고 점프시 속도는 Jump Z Velocity로 조정합니다. Gravity Scale 값과 Jump Z Velocity의 값에 의해서 점프 높이 또한 조정됩니다. 수정전 디폴트 점프입니다. 좀 더 빠른 점프를 위한 설정을 다음과 같이 하였습니다. 수정 후 점프는 다음과 같이 변경 되었습니다.

[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을 열어 보..

[UE5] 나나이트 소개

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

[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..

[UE4] Unreal Engine 4 PBR 텍스처

베이스 컬러 텍스처 표면의 색조, 색상 값만을 나타냅니다.(알베도) 노멀 텍스처 라이팅이 머티리얼에 픽셀마다 직접 반응하는 방식을 시뮬레이션합니다. R, G, B에 방향 데이터를 저장합니다. 폴리곤을 더하지 않더라도 표면의 좀 더 다듬어진 형태를 시뮬레이션하는데 사용합니다. 러프니스 텍스처 표면의 거칠기를 제어합니다. 거친 표면은 매끈한 표면 보다 더 많은 방향으로 빛을 산란시켜 머터리얼 표면에서 시각화 되었을때 리플렉션의 흐릿함이나 선명함을 제어합니다. 0은 거울과 같과 1은 전혀 반사가 없습니다. 0~1을 표시하므로 R,G,B는 필요 없고 회색조로 표현합니다. 메탈니스 텍스처 표면의 금속성 정도를 제어합니다. 0~1로 표시하며 회색조. 엠비언트 어클루젼 차폐로 인한 라이팅의 감쇠를 유사하게 모사하는 ..

[UE4] Unreal Engine 4 사용 환경 설정

언리얼 엔진용으로 Visual Studio를 구성하자. https://docs.unrealengine.com/4.27/ko/ProductionPipelines/DevelopmentSetup/VisualStudioSetup/ 언리얼 엔진용 Visual Studio 구성 언리얼 엔진 4 에서 작동하도록 Visual Studio 를 구성하는 팁입니다. docs.unrealengine.com 다음은 설정 완료한 visual studio 2019 세팅 파일입니다. 추가로 다음의 글 참고하여 자동 들여쓰기 설정도 변경해주면 좋습니다. [UE4] visual studio 2019 자동 들여쓰기 설정 UnrealVS 설치하자 https://docs.unrealengine.com/4.27/ko/ProductionPipe..

[UE4] Unreal Engine 4 시작하기

퀵 스타트 Unreal Engine 4를 퀵 가이드는 처음에 꼭 따라서 해봐야 겠습니다. https://docs.unrealengine.com/4.27/ko/ProgrammingAndScripting/ProgrammingWithCPP/CPPProgrammingQuickStart/ 프로그래밍 퀵스타트 첫 코드 프로젝트를 만들고, C++ 클래스를 새로 추가해 봅니다. docs.unrealengine.com 빌드 설정 개념 Unreal Engine의 빌드 설정에 대한 개념을 잡아야 겠습니다. 이는 일반적으로 어플리케이션의 빌드 설정과 거의 비슷하지만 Unreal Engine, Game, Editor 세 가지가 있기에 다음과 같은 빌드 설정이 있습니다. Debug 디버깅용 심볼이 들어있는 환경설정입니다. Deb..