게임엔진/Unreal 6

[블루 프린트] 데이터 테이블

Unity의 ScriptableObject와 똑같은 포지션이다.Asset으로 관리되는 DataTable이고 자체적으로 직렬화돼있어 관리가 편하다하지만, 소규모의 데이터테이블로는 사용하기 좋지만 전투나 아이템과 같은 대규모 데이터의 경우에는 UI적으로 관리하기가 어렵다. 1. Structure 생성2. Structure에 필드 추가각각의 필드들은 DataTable의 Column이 된다.3. DataTable 생성 DataTable을 추가하면 Structure를 선택할 수 있다. 미리 만들어 놓았던 CreatureData Structure를 지정한다.미리 만들어 놓았던 Structure의 필드들이 Datatable의 Column이 된 모습이다.Row Name은 Key가 된다. 4. Data Table에 Da..

게임엔진/Unreal 2024.06.18

[블루 프린트] 상속

코드에서도 익히 알고 있던 상속의 개념을 블루프린트에서도 적용 가능하다.자식 블루프린트의 Class Settings를 누르면 Details가 보이고 여기서 Parent Class를 지정해줄 수 있다.상속을 적용해보면 위와 같이 같은 네이밍의 변수들이나 함수들에 에러가 많이 발생하니 당황하지 말자 코드였어도 똑같이 발생하는 에러다. 따라서 부모 블루프린터에 선언한 변수를 자식노드에서 그대로 사용하면 된다. 이제부터 Animation이나 상태에 따른 이벤트 및 이동 로직은 부모에서 관리하고 자식 노드인 플레이어 블루프린트에서는 Input에 따른 상태지정 로직만 남겨둔다.

게임엔진/Unreal 2024.06.17

[블루 프린트] 객체(Actor) 이동

Actor의 이동을 제어하기 위한 블루프린터 function에 대해 알아보자. 1. SetActorLocation키 입력에 의해 현재 상태가 Move일 때, Actor의 새로운 위치를 Set함으로써 이동시키는 function이다.Get Actor Location으로 현재 위치 값을 가져오고, Select를 이용하여 Up, Down, Left, Right에 따라 미리 Vector값을 할당하여 이 두 값을 더해준다. 더해진 값을 Set Actor Location에 전달하여 Actor 위치가 새롭게 갱신된다.프레임에 따라 속도값을 균등하게 맞추기 위해 World Delta Seconds를 Speed에 곱해주었다. Sweep설정을 하면 오브젝트와 충돌처리를 하여 이동을 막는다. 2. AddMovementInpu..

게임엔진/Unreal 2024.05.05

[블루 프린트] Enum

1. Enum 만들기 Enum을 추가하여 관리해줄 상태들을 등록한다. (EDirection으로 명명함) EDirection이라하는 Enum 자료형으로 Direction 변수를 생성한다. Direction 변수를 블루프린터 상에 드래그 앤 드랍하여 Get Direction과 Set Direction을 볼 수 있다. - 예시를 살펴보면 MoveUp/MoveRight노드(Axis Mappings)로 부터 값을 받아온다.  (https://codejb.tistory.com/146의 입력매핑 참고)- 최적화를 위해 Compare Float 매크로를 이용하여 Input 값이 0.0으로 ==인 경우에는 기능을 비워두고 초과 혹은 미만인 경우 Direction에 값을 Set해주고 있다. 이로써 Direction의 Va..

게임엔진/Unreal 2024.05.05

[블루 프린트] 상태에 따라 분기 나누기 Switch와 Select 노드

Direction 상태에 따라 FlipBook을 제어하려고 할 때, Switch를 이용하느냐, Select를 이용하느냐에 따라 블루프린터를 조금 더 간략하게 디자인할 수 있다.1. Switch 이용 Direction Enum에 따라 Up,Down,Left,Right 실행(Exec)핀이 생성되었고, 핀을 Set FlipBook노드에 연결한 모습이다. 2. Select 이용  Select 노드에서 한 번에 Flipbook값까지 설정해주고, 이를 리턴하여 Set FlipBook노드에 전달한 모습이다. 훨씬 간결해진다. 이게 가능한 이유는셀렉트에서 핀타입을 자유롭게 변경 가능하기 때문이다.여기서는 핀 타입을 Paper Flipbook으로 했고 Index가 Direction Enum(Up,Down,Left,Rig..

게임엔진/Unreal 2024.01.31

[블루 프린트]입력 이벤트 여러가지 방법

1. 블루 프린트 이벤트 이용 (나이브한 방식)- 블루 프린트에서 오른쪽 마우스 클릭- Keyboard Events에서 원하는 입력 이벤트 노드를 사용한다. 2. 언리얼 엔진의 입력 세팅 이용 (언리얼 권장) (문서)https://www.unrealengine.com/ko/blog/input-action-and-axis-mappings-in-ue4동작 매핑(Action Mapping) :  키 누르고 뗴는 데에 대한 액션축 매핑(Axis Mapping) : 연속적인 범위가 있는 입력에 대한 액션(키 입력에 대한 value를 설정한다는 의미) 동작 매핑Action Mappings에 Attack이라는 함수를 등록함으로써 InputAction Attack이라는 노드가 자동으로 추가된 모습.Space Bar를 ..

게임엔진/Unreal 2024.01.30