초보 코린이의 성장 일지

UE4 TPS Weapon Fire, Sound, Widget 본문

언리얼

UE4 TPS Weapon Fire, Sound, Widget

코오린이 2023. 3. 22. 15:33

CWeapon.h
CWeapon.cpp
CWeapon_AR4.cpp

1. 탄착군을 보여줄때 원으로 나타내게 된다.

2. 그걸 눈으로 확인해보기 위해 쏘는 방향으로 각을 볼 수 있게된다.

 


1. 이제 Decal과 Sound를 사용해볼 것이다.

2. Decal은 원래있던 머터리얼에 겹처져서 보이는 것이다.

3. Decal을 사용하는 방식은 Spawn 방법과 DecalComponent 방법이있다. 컴포넌트를 사용하면, 계속 생성되는걸 관리해줘야 하므로, Spawn방법으로 사용해 보겠다.

 

CWeapon.h
CWeapon.cpp

1. 데칼과 파티클 및 사운드 레퍼런스 주소 복사로 받아준다.

 

CWeapon.cpp

1. 데칼을 나오게 해주고, hit된 지점으로부터 파티클이 나오게 만들어준다.

2. 위와 같이 보이게된다.

 


1. 총구에 화염이 발사되는 효과를 주기위해 소켓을 생성해 그 위치에 효과를 넣어줘야한다.

CWeapon.cpp

1. 소켓에 알맞은 값을 넣어준다.

2. 2가지 효과가 나오는걸 볼 수 있다.

CWeapon.cpp
CWeapon.h

1. 사운드도 추가해준다. 그리고 원하는 사운드 주소 복사해서 넣어주기.

2. 이제 소리가 재생되는걸 들을 수 있다.

 


1. 이제 쏘는 행동과 이펙트는 해결이 되었다. 이제는 총에 반동을 줘서 진짜 쏘는것처럼 만들어 볼 것이다.

2. 흔들리는 기능을 넣어주기 위에 좌우, 상하 수치를 넣어준다. 앞뒤는 흔들릴일이 없기 때문

 

CWeapon.h
CWeapon.cpp
CWeapon_AR4.cpp

1. 소유중인 Player Controller을 불러서 카메라 매니저안에 있는 함수를 호출해준다.

2. 이제 총을 발사할때 화면이 흔들리는걸 볼 수 있다.


1. 연사를 하기 위한 초기작업을 시작해 보겠다.

2. 우선은 UI부터 만들어 볼 것이다.

3. 생성해준다.

 

CUserWidget_HUD

1.  재정의해서 사용할 것이므로, 함수 생성만 해준다.

 

1. 이제 BP에 가서 함수를 불러봐도 나오질 않는다. 이유는 부모 클래스가 User Widget이기 때문

2. 블루프린트 부모변경을 눌러서 설정해준다.

3. 유저위젯으로부터 상속받은 클래스들이 나온다 그중에 만들어 놓은 클래스 CUser Widget HUD로 변경해준다.

 

1. 그리드 패널안에 텍스트 3개를 넣어준다. 탄수를 표시하게 될 것이다.

 

1. 알맞은 위치에 색생구분을 해주고, 구분지어주기 위해 명도값도 넣어서 만들어준다.

2. 위치는 오른쪽 하단으로 잡아주고, 글자들은 가운데 정렬을 해준다.

 

1. 그래프로 들어가서 사용할 변수 DefaultColor 추가.

1. Construct는 UI에 Begin_Play라고 생각하면 된다.

2. 핀분활해서 만들어준 변수로 게임시작될때 기본색상을 저장해준다.

3. On때는 빨간색으로, Off일때는 저장해놓은 Default Color을 넣어준다.

 

CWeaponComponent.h
CWeaponComponent.h
CWeaponComponent.cpp

1. 무기에 상관없이 색상을 사용할 것이므로, 무기를 관리해주는 컴포넌트에서 해준다.

2. 위젯 자료형으로 HUDClass 선언

3. Create될때 저장할 변수 선언.

4. cpp에서 위젯에 레퍼런스 주소를 넣어주면서 생성.

 

CWeaponComponent.cpp
CWeaponComponent.cpp
Visible 추가 부분

1. 이제 위젯을 보여줄 부분을 정확히 알고 가야한다. 기본적으로 숨겨준다.

2. 무기해제 상태면 숨기고, 장착하고 있다면 보여야한다.

3. 자료형 2개 템플릿으로 언리얼 c++에서만 있는 문법이다. 모든 자료형에서 다 사용이 가능한게 아닌 정해진 자료형에서만 사용이 가능한 템플릿이다.

 

https://www.youtube.com/watch?v=YkoVYdttQnA 

 

 

 

'언리얼' 카테고리의 다른 글

UE4 Weapon CrossHair, Reload  (0) 2023.03.27
UE4 TPS Weapon AutoFire, Widget  (0) 2023.03.24
UE4 TPS Weapon IK, Fire  (0) 2023.03.22
UE4 TPS Weapon, AnimNotifyState  (0) 2023.03.17
UE4 TPS Weapon  (0) 2023.03.16
Comments