[Unreal] 게임 제작을 위한 시작해요 언리얼 (4주차) : 물리 엔진을 활용한 다양한 장치 제작

Kim Yuhyeon·2022년 9월 22일
0

게임개발

목록 보기
57/135

4주차 : 물리 엔진을 활용한 다양한 장치 제작


프로젝트 로딩 및 시작 레벨 세팅

목표지점 배치

1. 텔레포트 장치 만들기

발판 스태틱 메쉬 배치
위치 : 900, 0, 10
머티리얼은 녹색으로
후 아웃라이너 폴더 이동

블루프린트로 ㄱㄱ

루트 컴포넌트 누르고 추가 > 스태틱 메시 컴포넌트
SM_Button_A_Push 스태틱메시 선택

Alt + K 누르고 딱 붙게 위치 조정

박스 콜리전 컴포넌트 생성

크기 조절 : 48, 48, 12

컴파일 저장 누르기!

변수 생성
타입 = 액터 > 오브젝트 레퍼런스 (바로가기 같은 기능!)
(인스턴스 편집 가능 체크)

도착 지점 발판 배치

액터 유효성 검사
isValid

유효하지 않을 경우(isNotValid)
경고 : printString
일시중지 : GamePaused

▶ 실행화면

텔레포트 지점 설정하기
검색해도 되고 스포이드 툴로 선택해도 됨

액터가 다른 액터랑 겹칠 경우의 이벤트 = ActorBeginOverlap

텔레포트 노드 생성
텔레포트 지점 -> Get Actor Transform
구조체 핀 분할로 로케이션, 로테이션 각각 이어주기

▶ 실행화면

텔레포트 이펙트 추가

나이아가라 파티클 시스템 컴포넌트 추가

NS_Celebrate 에셋 설정

자동활성화 해제

활성화 노드 생성
노드 우회로 핀 생성 : 마우스 휠 버튼 더블 클릭

딜레이 3초 추가

감지된 액터가 캐릭터인지 확인 : BP_ThirdPersonCharacter에 형변환
> SetMovementMode : None 으로 설정해 잠시 못 움직이게

텔레 포트 후에는
> SetMovementMode : Walking 으로 설정해 걸을 수 있게

▶ 실행화면

2. 물리 기능으로 낙하하는 발판 만들기

스피어 액터 배치
피직스 시뮬레이트 체크

박스 콜리전 배치
크기 100, 100, 100

블루프린트화

게임에서 숨김 체크

  • 액터 게임에서 숨김 체크 해제
  • 에디터 빌보드 스케일 : 0
  • 콜리전 컴포넌트 > 게임에서 숨김 체크

스태틱메시 컴포넌트 추가

SetSimpulatePhysics 로 떨어지게
딜레이 주고
떨어지는 시간은 변수로 승격하여 인스턴스 편집 가능하게

3개 배치 후 떨어지는 시간 1, 2, 3초로

▶ 실행화면

3. 점프대 만들기

안움직이는 액터 : 스태틱 / 움직이는 액터 : 무버블

액터 배치 후 블루프린트화

버튼 스태틱 매시 추가

박스 트리거 추가
크기 : 48, 48, 16

캐릭터인지 확인 후
충격 주기 Add Impulse(캐릭터 무브먼트)

화살표 추가
크기 : 2
y = 70

  • Get Forward Vector(Arrow)
  • 곱하기 (float) -> 변수로 승격 & 인스턴스 편집 가능
  • Velocity Change 체크 (원하는 힘의 크기와 방향으로 강제로 설정?)

전체 노드 모습

▶ 실행화면

4. 미사일 함정 만들기

함정 만들 때는 트리거 부터!

BP_미사일함정

트리거 박스 배치
크기 100, 100, 100

블루 프린트화

  • 액터 게임에서 숨김 체크 해제
  • 에디터 빌보드 스케일 : 0
  • 콜리전 컴포넌트 > 게임에서 숨김 체크

발판 추가

BP_미사일

미사일 액터 추가 후 블루프린트화

화살표 컴포넌트 추가

발사체 이동 컴포넌트 추가
초기속도 : 1500
발사체 중력 스케일 : 직선으로 가도록 0에 가깝게
바운스 필요 : 맞으면 팅겨져 나가게

루트 컴포넌트에서 모빌리티 : 무버블 로 설정

자동 활성화 체크 해제

BP_미사일함정

미사일 > BP_미사일 오브젝트 레퍼런스 타입으로 변경

미사일과 활성화(ProjectileMovement) 노드 연결

왜자꾸 오류남..ㅡㅡ

앞서 했던 유효성 검사를 시도해보니

잘 연결되어 있지 않은 듯하다.

아놔 미사일 발판에 이거 안해서 그런거였음..

스피어 트리거 추가
크기 : 55

실패 태그 설정

결과물

플레이 영상

💡 참고 포스팅

[게임 제작을 위한 시작해요 언리얼] 4주차 물리 엔진을 활용한 다양한 장치 제작

0개의 댓글