language:unreal:basic
목차
Unit
- 1 unreal unit = 1cm
뷰포트 UI
ref : https://docs.unrealengine.com/latest/KOR/Engine/UI/LevelEditor/Viewports/ViewportControls/index.html
N | 스냅 |
Alt + 드래깅 | 복사 |
Alt + Shift + 드래깅 | 복사하는 동안, 카메라가 커서와 같이 움직이도록 |
X | 컨텐츠 브라우져에서 필터 기능 삭제 |
뷰포트에서 이동 | |
---|---|
Left-Button click & mouse moving 마우스 왼쪽 버튼 누른 상태로 마우스 움직이기 | 전후이동, 좌우 회전 |
R-Button click & mouse moving 마우스 오른쪽 버튼 누른 상태로 마우스 움직이기 | 제자리에서 주위 둘러보기 |
M-Button click & mouse moving 마우스 가운데 버튼 누른 상태로 마우스 움직이기 | 상하,좌우 이동 |
L and R-Button click & mouse moving 마우스 좌우 버튼을 모두 누른 상태로 마우스 움직이기 |
|
WSAD moving | |
L or M or R-Button click 상태에서 WSAD로 FPS 이동 가능 | |
E | 위로 이동 |
Q | 아래로 이동 |
C | 카메라 확대 (zoom-in) |
Z | 카메라 축소 (zoom-out) |
마야스타일 | |
오브젝트 선택 후, F | 선택 오브젝트를 중심으로 카메라 이동, 오브젝트 포커싱 |
Alt Key + L-Button click & mouse moving | 선택 오브젝트를 중심으로 텀블링(회전) |
Alt key + R-Button click & mouse moving | 카메라 전/후 이동 |
Alt + M-Button click & mouse moving | 상하좌우 이동 |
- Ctrl+R : 실시간 재현 on/off
평면뷰
- 휠 : 확대/축소
- R-Button click & mouse moving : 상하/좌우 패닝
- L-Button click & dragging : 오브젝트 선택
오브젝트 배치
- W : 오브젝트 이동 모드로
- content brower : 에서 오브젝선택 후 씬뷰로 갖다 놓기
- 씬뷰에서 마우스 R-Button click. 컨텍스트 메뉴가 보이는데,
- 이전에 사용했던 오브젝트를 바로 배치 가능
- 갖다 놓을때 다른 오브젝트가 있으면 바로 붙여주려고 한다.(그런가?)
오브젝트 이동
- W : 오브젝트 이동 모드로
- End key : 오브젝트가 바닥에 바로 붙는다.
- Ctrl + ~ : 오브젝트 좌표계를 (월드 ↔ 로컬) 변경
- 씬뷰에서 오른쪽 상단 버튼에서 지구모양의 아이콘이 (월드 ↔ 로컬) 변경 아이콘.
오브젝트 회전
- E : 오브젝트 회전 모드
- Yaw : z축, 고개를 왼쪽 오른쪽으로 흔들면
- Pitch : 앞뒤 Y, 고개를 위 아래로 흔들면
- 롤 : x축, 고개를 갸우뚱하면
오브젝트 스케일링
- R : 오브젝트 스케일링
카메라 이동
- Shift + 드래깅 : 카메라와 같이 이동
- 뷰포트(씬뷰) 왼쪽 상단의 옵션 메뉴
- 'Lock to viewport actor'에서 라이트/카메라/액터의 시점으로 이것들을 조정할 수 있다.
- 이동 후에는 다시 메뉴를 열어서 'Unlock ..' 메뉴 항목 선택
컨텐츠브라우져
- 창열기 : Ctrl + Shift + F
- Collections : 즐겨찾기, 자주 사용하는 것을 저장해둔다.
- Local : 로컬 pc에만 저장
- Private : 소스저장소에 저장되지만 나만 사용
- 휠/R-Button Click : 위아래 스크롤 가능
레벨디자인
단축키
바닥에 스냅핑 | end key |
오브젝트를 스냅에 맞춘다 | Ctrl + End |
복사 | 오브젝트 선택 + Alt + Drag |
그룹 | Ctrl + G |
그룹 해제 | Shift + G |
반투명 오브젝트 선택 가능 | T key 유리 같은 반투명 오브젝트를 선택할 수 있게 할지 말지 |
- 브러쉬 세팅
- 메쉬 변경 가능 - 면 늘리기, 버텍스 변경하기
- 오브젝트 더하기 빼기
- 빼는게 있다.(subtractive) - 일부분을 깍아낼수 있다.
- BSP → Align Surface Planar : 두 오브젝트의 텍스쳐가 연속되는 형상으로 설정
- or 없는 경우, Geometry 섹션에서 같은 메뉴 찾아보기
그외
튜토리얼에서 bp 추가와 timeline 추가는 따로 정리하자. 일단 메모.
blueprint
- 이벤트 체크를 위해서 BoxTrigger 추가 . 이런게 있음.
timeline
- 애니메이션 처리
Movility
- Object Transform : static으로 설정되어 있으면 움직이지 않는다.
또 그외
- 창을 떼어내서 win+leftArrow, Win+rightArrow면 왼쪽, 오른쪽에 달라 붙는다.
- 라이트의 표시 반경을 끄려면, 씬뷰의 메뉴, Show → Advanced → LightRadius.를 off
- 리플렉션 : Modes 창에서 Visual → Sphere Reflection Capture 를 화면에 갖다 두고 화면을 캡쳐하도록? 상세 사용법은 뭘까?
blue print
- G: 화면의 기즈모 표시 on/off
블루프린트가 있는 곳
- 레벨 자체
- 또는 오브젝트
- 레벨에 배치된 오브젝트는 레퍼런스를 추가해서 조작한다.
- 레퍼런스는 BP 에디터에서 한개 이상 추가할 수 있어서, 여러 부분에서 사용 가능.
- BP노드간 연결되늰 와이어에는 색은 사용되는 타입에 따라 색이 다름
Event Begin Play | 레벨이 실행 되면 |
Enable Input, Disable Input | 입력을 받을 수 있다? |
Toggle Visibility | 보이거나 감추거나 |
Input Key (?) | 어떤 입력을 받는다 |
- 라이트 : 오브젝트 → Transform → Mobility
- Stationary : 미리 만들어진 라이트를 사용하는 것,
- Movable : 실시간 라이트
- 노드 사이의 연결 선 끊기 : Alt+Clicking
- BP 그래프 편집기에 Get용 레퍼런스 추가 : 컴포넌트 선택. Ctrl + Dragging
- BP 그래프 편집기에 Set용 레퍼런스 추가 : 컴포넌트 선택. Alt + Dragging
- BP 그룹핑&이름짓기 : BP의 노드들을 여러개 선택 후, C key. 선택된 노드 그룹에 이름 추가.
블루프린트 사이에 통신
- CustomEvent를 추가해서 서로 호출하는 방식 사용
클래스 BP
- Defaults :
- Components :
- Prefab처럼 여러 오브젝트(컴포넌트)를 묶어서 한개의 클래스 BP를 구성.
- Graph :
- ConstructionScript : 레벨 에디터에서 작업하다가?
- EventGraph : 실제 플레이 중에 실행되는 BP
변수
- 변수 노드를 직접 추가할 수도 있고
- 변수 노드를 사용하는 노드를 추가해서 , 변수 입력을 원하는 항목을 클릭 후 화면으로 끌어보면 자동으로 변수를 추가해주기도 한다.
변수 타입
- rotator : yaw(z), pitch(y), roll(x)
- 변수 타입이 다른 경우 캐스팅이 가능하다. 캐스팅된다는 노드가 추가됨.
- 구조체용 변수 타입도 사용 가능.
- 구조체의 특징은 'break'로 각 요소를 각각 사용할 수 있다는 장점.
- object : 씬에 오브젝트가 이미 있고 사용하고 싶으면 이걸
- class : 씬에 없는데 추가하려고 할때는 class
- Enum : 딱히. Enumerators 입력창에서 enum 항목 추가. asset에서 블루프린트 폴더에 추가한다.
- case with enum 하려면 모든 enum 항목에 대해서 노드를 만들고 연결해야 하는데.. 직접 해보고 다시 정리하자.
- Get, Set
- 숫자같은 일반 변수, 뭔가 작업 후에 Set을 다시 해주지 않으면 값이 반영되지 않는다.
- Array
- Array의 아이템은 모두 같은 타입이어야 함
- 사이즈가 동적임
- 0-base 인덱스
- Array에 연관되는 블루프린트 노드는, Array 노드를 선택해서 화면으로 끌어놓고 '관련항목'이 떳을때
- 일반적인 경우,
- Utilities → Array → 이하의 함수 중에 선택. 리스트에 대한 일반적인 메소드들.
- 녹색 함수 : 값을 사용만
- 블루 함수 : Array를 변화 시킴
- 반복 (Flowcontrol)
- ForEach .. 또 뭐드라.
- 리턴값이 Array인 경우
루프
팝업메뉴에서 'loop'로 검색해서 쓸 수 있는 노드 선택. (ForLoop 같은거)
FormatText
- 'Format' 항목에서 문자열 입력할때 대괄호({})에 키워드를 입력하면 'FormatText' BP노드에 자동으로 키워드가 추가된다.
- Format : “Test String {index}” 같이 입력하면 'index'항목이 추가됨
ForLoopWithBreak
- 루프 실행 중에는 break가 먹지 않으므로,
- 'Loop body' 의 노드 흐름 중에 break 조건을 검사하는 기능을 추가한다.
- 'Loop body' 의 연결 노드 (시작노드) 'Branch' 노드를 걸고, 조건을 검사하는 부분을 연결시켜 중단될 수 있게.
ForEach
- array같은 것의 항목에 대해서 루프.
- 콜렉션을 순행하는 것이므로 시작, 종료에 대한 조건이 필요없다는 것.
디버그
- 노드 선택 후, 마우스 우클릭 → 브레이크포인트 추가
- 플레이하면 브레이크포인트에서 멈춘다.
트랜스폼
요,피치,롤
- 요(Yaw) : 고개를 왼쪽 오른쪽으로 흔들면
- 피치(Pitch) : 고개를 위 아래로 흔들면
- 롤(Roll) : 고개를 갸우뚱하면
팁들
- RandomStream :
- 일반 랜덤을 사용하면 값이 무작위로 매번 바뀌는데 한번 내려 받은 값을 쭉 사용하려고 하면
- Stream 노드를 추가하고 랜덤 값을 Stream에서 가져오면 한번 내려 받은 값을 그대로 쭉 사용한다.
language/unreal/basic.txt · 마지막으로 수정됨: 2024/04/23 22:44 저자 127.0.0.1