분류 전체보기 294

[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

[svn] Tortoise svn lock 강제로 해제(force unlock)

다른 유저가 lock을 하고 있는 경우 commit을 하게 되면 다음과 같이 실패 합니다. 예외적인 경우에 다른 유저의 lock을 풀지 못하거나 다른 이유로 인하여 자신의 작업을 commit해야 할 경우가 있습니다. 이런 경우 강제로 lock을 가져 올 수 있습니다. lock을 가져올 원하는 폴더나 파일을 선택한 이후 다음 이미지와 같이 get lock을 합니다. 왼쪽 하단의 "steal get locks"을 체크합니다. Lock 성공 합니다.

각종 팁/svn 2021.11.30

크래프톤 웨이

내가 몸 담고 있는 회사의 책이다. 게임 개발자인 나에게는 단연 '최고의 게임 철학' 책입니다. 처음 이 책을 회사에서 나에게 주었을때 흔하고 뻔한 얘기들을 담았겠지라는 생각에 쉽게 손이 가지 못했습니다. 머리가 복잡하고 사색이 필요했던 어느날 이 책을 집어들고 한 장 한 장 읽어 나가기 시작 했습니다. 내가 왜 이 힘든 게임 개발을 하는지 근본적인 이유를 다시 한 번 나 스스로를 되돌아 보게해주었다. 현재 제작 리더쉽인 나에게 정말 많은 도움이 되는 책이었다. 어떻게 나를 단련하고 어떤 것들 좀 더 고민하고 최선의 선택과 최선의 노력을 할 수지에 대한 힌트를 주는 책이다. 어떠한 큰 결실은 그 냥 얻어 지는 것이 아니라 치열하게 고민하고 치열하게 노력하고 끝없는 도전을 한 결과이다, 아니 그러해야 하는..

독서 리뷰 2021.11.14

[UE4] Unreal Engine 4 PBR 텍스처

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