본문 바로가기

[언리얼엔진 4.8] 총정리 - 01. 에디터와 튜토리얼 본문

Tool/Unreal Engine 4

[언리얼엔진 4.8] 총정리 - 01. 에디터와 튜토리얼

블로그 디렉터 2019. 1. 18. 06:07

언리얼 공식 튜토리얼 시리즈 Intro to the Editor , Intro to Level Creation , Intro to BlueprintsBlueprint Quickshot 독학 후 필기


유니티 - 게임오브젝트 / 언리얼 - 액터

유니티 - 계층 뷰 / 언리얼 - 월드 아웃라이너

유니티 - 프로젝트 뷰 / 언리얼 - 콘텐츠 브라우저

유니티 - 프리팹 / 언리얼 - 블루프린트

유니티 - 인스펙터 뷰 / 언리 - 디테일





레벨 블루프린트 - 툴바 / 블루프린트 / 레벨 블루프린트 열기

클래스 블루프린트 추가 - 콘텐츠 브라우저 / 신규 추가 / 블루프린트 클래스

모드 패널 배치모드 - Shift + 1

모드 패널 지오메트리 편집모드 - Shift + 5


저장 - Ctrl + S

되돌리기 - Ctrl + Z

블루프린트 컴파일 - F7

이름바꾸기 - F2

시뮬레이트 - Alt + S




뷰포트 조작법

기본조작 - 우클릭한 상태에서 WASD

상승 - E, 하강 - Q

대상에 바로가기 - F

대상 기준으로 둘러보기 - F + Alt + 좌클릭


오브젝트 이동툴

이동 - W, 회전 - E, 스케일 수정 - R

오브젝트와 함께 이동 - Shift 누르면서 이동

오브젝트 바닥에 붙이기 - END

월드 / 로컬 좌표계 - Ctrl + `

액터 카메라에 고정 - Ctrl + Shift + P

오브젝트 복제 - Alt + 이동


오브젝트 선택툴

인접한 오브젝트 선택 - Shift + W

반투명 물체 선택 옵션 - T




블루프린트 노드

Add Timeline - 시간에 걸쳐 변하는 값 설정

( 더블클릭하면 키프레임화면 / Shift + 좌클릭으로 키프레임 추가 / 우클릭 + 자동은 부드럽게 )

Create a Reference to ~ - 레벨 블루프린트에서 대상을 지정

Promote to Variable - 출력값을 변수로 승격

Set Actor Location - 대상의 위치 설정

Get Actor Location - 대상의 위치 불러오기

( 대상의 위치를 Vector 변수에 저장한다음 이동값 반영 )

Delay - 시간 대기


https://uxd-portfolio.tistory.com/28


Enable Input - 블루프린트에 대상의 입력 반영을 활성화 ( Disable 비활성화 )

Get Player Index - Player 0 ( 1인 플레이시 본인 ) 의 입력 전달

Set Visibility - 해당 라이트의 활성화 / 비활성화 설정

Activate - 특수효과인 파티클 컴포넌트를 활성화 ( Deactivate 비활성화 )

Spawn Emitter at Location - 위치에 파티클 생성 ( 컴포넌트가 아닌 대상도 불러옴 )

Destroy Actor - 액터 제거

Event Actor Begin Overlap - 디테일 패널에서 Generate Overlap Events 를 활성화 했을때, Other Actor 핀에 오버랩 대상 전송

Get Character Movement - 캐릭터의 이동과 관련된 모든 스크립트 기능 불러오기

( Get Character Movement 와 연동 ) Set Max Walk Speed - 캐릭터의 최대 이동속도 한계 설정

Set Simulate Physics - ( Simulate 활성화시 진행 방향 반영 ) 물리 반영

https://uxd-portfolio.tistory.com/33 투사체 응용, 바라보는 방향 반영

Get All Actors Of Class - 특정 유형의 액터 모두 배열로 불러오기

Random Integer In Range - 범위내 랜덤 정수형 변수 생성

Length - 배열의 길이를 Integer ( 정수형 변수 )

Get - 배열에서 Integer 위치에 있는 대상 ( 액터 ) 불러오기

Spawn Actor from Class - 클래스 항목에 설정한 대상을 Vector 위치에 생성

Add Custom Event - 이벤트의 이름과 변수 등을 자유롭게 정하고, 다른 블루프린트에서도 불러오기

Make Vector - 세개의 Float ( 실수형 변수 ) 값으로 Vector 값 생성

Add Local Offset - 로컬 축으로 오프셋 ( 처음 위치부터 지점까지의 이동거리 )

Event Hit - 클래스 블루프린트 오브젝트에 뭔가 닿으면 실행

Launch Character - 캐릭터를 강제로 지정 방향으로 이동

Add Static Mesh Component - 클래스 블루프린트에 지정한 위치에 스태틱 메시 컴포넌트 추가

Random Unit Vector - 랜덤한 벡터값 생성 ( 불러낼때마다 새로운 값 생성 )

Break Vector - 벡터값을 X, Y, Z 3개의 Float 핀으로 분할

Make Transfom - Vector 을 위치로 Rotation 과 Scale 값을 반영하여 Transform 값 반환

Add Timeline - 시간 단위로 수정되는 값을 설정 ( 더블클릭해 키프레임 편집창 https://uxd-portfolio.tistory.com/37  )

Set Relative Location - 기본 위치에서 변동되는 위치값 반영

Line Trace by Channel - Start 핀의 벡터와 End 핀의 벡터 사이 선 사이에 뭔가 닿으면 닿은 대상의 정보 반환 ( DrawDebugType 를 Persistent 로 지정시 라인 경로 시각화 )

Break Hit Result - Line Trace by Channel 의 Out Hit 핀을 연결하면 선과 닿은 대상의 정보를 핀으로 연결

Get Forward Vector - Vector 지점으로부터 전방으로 이어지는 상대적 Vector 지점 반환

Get World Location - 레벨의 월드 내 절대적 위치 Vector 로 반환

Branch - ( 이벤트 그래프 배경에서 단축키 ' B ' ) 참 혹은 거짓의 Boolean 값에 따라 실행

Is Valid? - 오브젝트가 유효한지 ( 지정된 값이 있는지 ) 여부를 판단

Spawn Actor from Class - Class 항목의 대상을 위치에 Velocity 벡터 값으로 움직이는 액터 생성




디테일 패널 설정

머티리얼 이음매 제거 - Alignment ( 정렬 ) / Align Surface Planer ( 표면 평면 정렬 )

구멍 뚫기 - Brush Settings / Brush Type / Subtractive

스크립트로 오브젝트 움직일 수 있게 ( 레벨 블루프린트로 ) - Transform / Mobility / Moveable

물리 효과 활성화 - Physics / Simulate Physics

라이트 활성화 - Rendering / Visible

Spotlight 빛 각도 수정 - Light / Outer Cone Angle

파티클 기본 비활성화 - Auto Activation

PAWN 과 캐릭터 ( 플레이어 ) 만 오브젝트 통과 - Collision / Collision Presets / OverlapOnlyPawn

오브젝트에 뭔가가 오버랩 되었을 때 신호발생 - Collision / Collision Presets / Generate Overlap Events


컨스트럭션 스크립트

각각의 인스턴스에 다르게 적용되어 다양성을 줄 수 있는 블루프린트

변수를 만들어 디테일 패널의 Editable 활성화를 통해 인스턴스로 설정

Set Intensity - 라이트의 밝기 수치 조정

Set Material - 머티리얼 설정

Set Light Color - 라이트 색상 설정

For Loop - 'Last Index - First Index +1' 회 Loop Body 실행핀 반복

Add Static Mesh Component - 대상 스태틱 메시를 Transform 위치에 컴포넌트로 추가


컴포넌트

Projectile Movement - 속도, 탄성 등의 투사체 특성 반영

Projectile Movement 의 디테일 패널에서, Velocity 는 움직임, Initial Speed 는 초기속도, Projectile Bounce / Should Bounce 는 튕기는 성질 설정

디테일 패널 Events / On Projectile Stop / + 시, 이벤트 그래프에 On Projectile Stop 노드 추가

Rotating Movement - 지정된 방향으로 계속 회전하도록 설정 ( 디테일 패널 Rotating Component / Rotation Rate )

Rotating Movement 변수를 Set Rotation Rate 노드에 연결하고 수치를 0 으로 지정하면 이동을 멈춘 뒤 실행핀 활성화




블루프린트 통신 유형과 사용시점

https://docs.unrealengine.com/ko-KR/Engine/Blueprints/UserGuide/BlueprintCommsUsage


이벤트 디스패처https://uxd-portfolio.tistory.com/35 )

- 이벤트 발생 여부를 대기 ( 리스닝 , Listen ) 하는 다른 블루프린트에 전달하고, 서로간에 독립적인 작업을 할 때 적합

( 캐릭터 블루프린트에서 레벨 블루프린트로 통신 할때, 스폰된 액터에 무언가 작용하면 이벤트를 발생시키고자 할때 )

블루프린트 My Blueprint / Event Dispatcher / + 로 생성

Call~ 노드로 실행을 전송한 다음, 다른 블루프린트에서 Get~ 으로 실행을 받음


플레이어 인터페이스 ( https://uxd-portfolio.tistory.com/38 )

- 특정 함수를 공유하는 여러 오브젝트와 상호작용할 때 적합

( 다수의 블루프린트에 비슷하지만 다르게 실행되는 함수성이 있을때 )

콘텐츠 브라우저 우클릭 / Blueprints / Blueprint Interface 로 플레이어 인터페이스

다른 이벤트 그래프에서 디테일 패널 / Interfaces / + 로 플레이어 인터페이스 추가 ( 사용 가능하게 전환 )

Event ~ 노드로 플레이어 인터페이스의 함수를 ( 실행 형태의 ) 노드로 불러오기


블루프린트 직접통신https://uxd-portfolio.tistory.com/39 )

- 블루프린트 액터가 두개 있을 때 적합

( 레벨의 한 액터가 다른 액터와 통신하고자 할 때 )

Editable 설정으로 인스턴스를 생성한 후 레벨의 디테일 패널에서 Target 으로 설정하는 방법


블루프린트 형변환 - Casthttps://uxd-portfolio.tistory.com/32 )

- 오브젝트가 특수 버전이면 접근을 허가하고 아니면 무시하는 노드

( 다른 블루프린트의 특수 버전에 접근하고자 할 때, 같은 클래스인 다수의 블루프린트를 같은 방식으로 변경할 때, 자손 블루프린트에 접근하고자 할 때 )

Cast to Character - 대상이 캐릭터인지 아닌지와 정보 구별

[ Example ]

만약 Flying Character Blueprint 라는 특수 캐릭터 블루프린트를 만들었다고 한다면, Get Player Character 노드로 플레이어의 위치나 방향 등 일반적인 방식으로 영향을 줄 수 있을 것이다. 하지만 비행 능력 자체에는 접근할 수 없다.

캐릭터 블루프린트는 비행 정보를 탑제하고 있지 않으며, 비행 캐릭터 블루프린트만 비행에 대해서 알기 때문이다.

이때 플레이어 캐릭터를 비행 블루프린트에 형변환 해주면 비행 함수에 접근할 수 있게 된다.

Comments