두개 강의영상을 거쳐 플레이어 액터를 생성후 스켈레탈메시 적용,
블루프린트를 이용해 플레이어 액터 조작및 카메라 조작 구현을 진행하였음.
메시 설정은 다른액터와 동일하게 메시에서 설정.

플레이어를 캐릭터에 빙의?시키는것은 방법을 두가지 배웠는데,
하나는 디테일에서 0번 플레이어의 빙의시키는것. 하나는 블루프린트를 이용해 BeginPlay이벤트에서 빙의시키는것.


빙의시킨 후에는 PlayerContoller를 맵핑시켜주고, 실제 플레이어 컨트롤러에 연결한다.
우선 연결할 입력 매핑 컨텍스트와 입력 액션을 연결한다.
입력 액션은 어떤 값을 전달할지를 정의하고
입력 매핑 컨텍스트는 어떤 키를 입력받았을때 어떤 액션을 어떻게 호출할지를 정의하는듯.
먼저 액션 3가지를 먼저 정의
WASD키로 움직이는것을 정의한 IA_Move 입력액션을 보면

앞뒤좌우로 움직이기 때문에 값 타입은 Axis2D로 정의하도록 한다.
카메라 움직임 액션도 동일하게 마우스는 앞뒤좌우로 움직이므로 Axis2D 선택.,
점프 액션은 스페이스바 누르기 하나뿐이기 때문에 Digital(Bool)값타입 선택.
이렇게 정의된 액션은 맵핑 컨텍스트에서 할당한다

액션을 맵핑하고, 어떤키를 입력했을때 어떤 값을 줄지에 대한 정의를 한다.
WASD키에 매핑한다.
움직임의 경우 Axis2D이니 X,Y값을 사용할것이고 기준값은 X(정면이동)
그러니 W를 눌렀을때는 X축, S를 눌렀을때는 반대로 값을 주기위해 모디파이어에서 "부정"을 추가함.
Y축 이동의 경우 D가 양수축으로 , A가 음수축으로 이동하기 때문에 A에는 부정을 추가함과 동시에 양쪽 다 "스위즐 입력 축 값"을 추가한다.
(부정 - 반대축 이동, 스위즐 입력 축 값 - Y축 이동)
카메라 움직임 매핑의 경우

키 입력매핑은 "마우스 XY 2D 축"을 사용
부정 모디파이어를 추가하되 Y값에만 적용시킨다.
이는 3인칭 FPS카메라를 생각하면 되는데 에임이 올라가기 위해서 카메라는 내려야 하기때문에 반대로 움직이는것이다.
다만 이는 필요에 따라 변경하는것이 옳을것.
점프는 단순하다

스페이스바가 입력되었을때 끝.
트리거에 "눌림"을 추가하였는데 이는 입력될때 한번 트리거하는것으로,
스페이스바를 꾹 눌러 연속점프를 원한다면 없애거나 다운으로 변경하는것이 좋다.
블루프린트 설정
플레이어 컨트롤러 연결

Beginplay이벤트에서 Add Mapping Context호출.
Target값은 Player Controller이므로 값을 가져와 Enhanced Input~~를 호출하고 타겟에 연결한다.
Mapping Context는 아까 만든 인풋 매핑 컨텍스트를 선택.
다음은 액션 트리거 시 실제 행동을 블루프린트로 정의한다.
캐릭터 움직임


두개의 강의를 동시진행하였는데, 같은 행동을 해도 구조가 조금 다르다.
결과는 같은데 먼저 위쪽 구성을 보면
Get Control Rotation을 통해 시야의 회전값을 가져오고, 이를통해 화면기준 정면, 측면방향을 구한 뒤
인풋액션의 값을 통해 정면, 측면의 움직임 값을 더하는 방법
아래는 인풋액션의 움직임 값을 액터(플레이어)의 정면, 측면으로 vector로 합친 후
Add Input Vector를 이용해 Character Movement컴포넌트에 움직임을 추가하는 방법.
다만 두 강의에서 중요한 차이점이 있는데, 위의 경우는 카메라만 움직이더라도 캐릭터가 움직이지 않는것,
아래의 경우는 카메라가 움직이면 캐릭터가 바라보는 방향도 바뀐다는점이 있다.
이는 캐릭터 엑터의 디테일설정에서 "폰-컨트롤러 회전 요 사용" 과 스프링암 컴포넌트 디테일의 폰 제어 회전 사용 여부에 갈린다.
어떤 카메라에 움직임과 캐릭터의 움직임을 어떻게 할것인지 따라 설정하는것이 좋을것이다.
위 내용 예시로는 캐릭터 등짝만 보이는 사이퍼즈의 카메라 회전을 생각하면 될듯.
캐릭터 시야가 중요할경우?
카메라 움직임


마우스를통한 카메라 움직임은 사실상 동일하다.
다른점이 있다면 하나는 인풋 매핑시에 Y축 모디파이어를 이용해 Y축 움직임을 미리 반대로 바꾸었다는것이고
하나는 블루프린트에서 이를 구현했다는것이다.
점프

점프의 경우 동일한데, 캐릭터 무브먼트 컴포넌트에 점프가 구현이 되어있고, 이를 호출만 하였다.
데일리퀘스트
STEP 1. 팀원과 함께 영상 시청 후 기본 기능 학습하기
https://dev.epicgames.com/community/learning/courses/D2r/unreal-engine-791723/pjw8/unreal-engine-4c2497
블루프린트 통신 | Course
에픽 온라인 러닝 팀이 제공하는 이 강좌에서는 블루프린트를 기능별로 나눠 정리하여 프로젝트를 보다 효율적으로 만드는 방법을 알아봅니다. 이를 위해 블루프린트 컴포넌트를 분석하고 프
dev.epicgames.com
팀원과 함께 위 영상을 시청하고 기본 요소에 대해 학습합니다.
팀원 전체가 아래 내용에 대해 답변할 수 있어야 하며 이해하고 있어야 합니다.
- 프로젝트는 어떻게 생성하나요?
언리얼 처음 시작화면 또는 에디터 좌상단 파일-프로젝트-새프로젝트 선택후
원하는 템플릿 선택하여 생성 - Actor 배치, Actor는 무엇이고 어떻게 맵에 추가하나요?
액터란 레벨에 배치된 기능이 포함된 오브젝트들. 기능은 컴포넌트로 표현됨
액터를 배치하는 가장 간단한 방법은 액터 배치 패널, 뷰포트 상단의 빠른 배치 메뉴 또는 콘텐츠 드로어의 에셋을 드래그하여 뷰포트 내 원하는 곳에 드랍하여 추가 가능. - Viewport에서 오브젝트를 조작하려면 어떤 단축키를 사용하나요?
기본적으로 뷰포트에서는 마우스를 사용해 객체를 선택하고 기즈모를 드래그하여 조작함.
키보드의 qwer 또는 스페이스바를 통해 선택한 엑터의 기즈모 조작방식을 변경 가능함. - 맵을 저장하는 방법은 무엇인가요?
뷰포트 화면에서 ctrl+S 또는 에디터 좌상단 저장 아이콘 클릭(레벨 저장 = 맵 저장)
STEP 2. 간단한 3D 맵을 제작해봐요!
1.간단한 맵을 제작해주세요. 초점은 "오브젝트 배치"와 "간단한 레이아웃" 구성입니다.

무료 에셋과 랜드스케이프 툴을 이용해 돌길, 흙길을 깔고 몇몇 건물을 배치해보았음
STEP 3. 결과물을 제출하고 발표해요!
1.개별로 만든 결과물을 팀 내에서 발표해주세요!
a.간단한 레이아웃을 구성하고, 오브젝트를 배치한 맵을 팀원들과 공유하는 시간을 가집니다.
b.학습 내용 중 어려웠던 점에 대해 이야기 나누고, 서로의 인사이트를 공유합니다.
그냥 에셋 배치만 하면 될거같은데 오기로 랜드스케이프, 레이어 등 써보려다가 시간을 좀 썼음;;
강의 2챕터에 포함된 내용같은데
c.해당 발표내용 및 인사이트를 팀노션에 작성해주세요!
'개발 > 내일배움캠프' 카테고리의 다른 글
| 02/04 블루프린트 연산 (0) | 2026.02.04 |
|---|---|
| 02/03 애니메이션 블루프린트와 블렌드 스페이스 등 (0) | 2026.02.03 |
| 01/30 Fap써보기, 에셋 다뤄보기 (0) | 2026.01.30 |
| 내배캠 퀘스트 1/29 게임 상호작용 분석하기 (0) | 2026.01.29 |
| 내배캠 퀘스트 1/28 언리얼 엔진 5와의 첫 시간 (0) | 2026.01.28 |