Unreal (23) 썸네일형 리스트형 UE - 저격 총 조준 모드 구현하기 구현 순서스나이퍼 애셋 가져오기총 교체하기스나이퍼 UMG 제작하기스나이퍼 조준 모드 전환하기 1. 애셋 가져오기. lifeunreal5/자료실/3장/SniperGun .zip at main · araxrlab/lifeunreal5인생 언리얼 5 프로젝트 교과서 . Contribute to araxrlab/lifeunreal5 development by creating an account on GitHub.github.com Import All 선택 Texture Sample 생성diffuse Texture normal Texture Texture Material에 연결 2. 총 교체하기새롭게 가져온 스나이퍼건을 플레이어가 사용할 수 있도록 추가스나이퍼건 스태틱 메시 추가// 스나이퍼건 스태틱메시.. UE - 총알 발사하기 목표사용자가 발사 버튼을 누르면 총알을 발사하고 싶다. 구현 순서발사 입력 추가하기총 메시 에셋 추가하기플레이어에 총 추가하기발사 기능 구현하기총알 인스턴스 제거하기 1. 발사 입력 추가하기 IA_Fire 추가 IMC_TPS에 IA_Fire Mapping 2. 총 메시 에셋 추가하기언리얼 FPS 템플릿 프로젝트에서 제공하는 총이 있습니다. FPS 템플릿을 프로젝트에 추가합니다. Content Browser에서 Content Pack 추가 First Person Project 추가 3. 플레이어에 총 추가하기총 스켈레탈 메시 컴포넌트 멤버 변수 추가(TPSPlayer.h)UCLASS()class TPSPROJECT_API ATPSPlayer : public ACharacter{ GENERATED_B.. UE - 총알 제작하기 목표총알 만들기 구현 순서Bullet 클래스 생성필요 컴포넌트 추가블루프린트 Bullet 만들고 테스트 1. Bullet 클래스 생성부모 클래스는 Actor로 생성플레이어가 날아가는 총알에 대한 **제어권**이 필요하지 않기 때문에 폰 기반이 아닌 액터를 사용합니다. 2. 필요한 컴포넌트 추가하기물체가 다른 물체와 충돌하면 단순하게 이벤트만 발생하는 것이 아니라 튕겨나가게 될 것입니다. 그 때 물체의 회전 및 에너지 감소가 발생하여 힘이 약해지고 물체의 물리적 재질 형태에 따라서 탄성의 표현도 필요할 것입니다.이를 위해 언리얼 엔진에서 제공하는 물리를 이용하여 간단히 해당 내용을 표현할 수 있습니다. 발사체 형태의 물리 기능을 제공하는 컴포넌트인 UProjecttileMovementComponent.. UE - 플레이어 이동 처리 목표플레이어를 회전 및 이동하기. 구현 순서사용자 입력 맵핑플레이어 회전 처리플레이어 이동 처리 1. 사용자 입력 맵핑하기 IA_LookUp IMC_TPSIA_LookUp 입력에 Negate 값을 설정한 이유는 마우스의 좌표가 스크린 좌표 즉 모니터의 좌표가 좌측 상단(y : 0, z : 0)에서 시작하여 y 값은 오른쪽으로 갈수록 커지고, z 값은 아래로 갈수록 커집니다. 반면에 3D 월드상에서의 좌표계는 다소 다릅니다. y축의 값은 마찬가지로 오른족으로 이동하며 커지는 반면, z축 값은 위로 올라갈수록 커집니다.마우스의 Z축 방향과 3D 월드상의 방향이 반대로 되어있습니다. 따라서 IA_LookUp의 Modifiers에 -1값에 해당하는 Negate를 추가해 줌으로써 방향을 일치시키려고 하는 것입니.. UE - 3인칭 플레이어 생성 1. Character를 상속받는 플레이어 생성TPS 형태의 플레이어는 사용자의 제어를 받으면서 이동이 가능해야 합니다. Pawn을 부모로 삼아 추가적으로 몇 가지가 더해져 있습니다. 대표적으로는 Character Movement 컴포넌트가 이에 해당합니다. 2. 플레이어 블루프린트 제작 3. 게임 모드 클래스 정보 수정하기클래스의 상속 관계는 Actor를 기본 오브젝트로 하여 사용자의 제어를 받을 수 있게 하는 Pawn 클래스, 폰을 기반으로 추가적인 기능을 포함하는 Character 클래스가 있습니다. 우리 TPSPlayer는 Character를 상속 받기 때문에 사용자의 제어를 받을 수 있는 기본 폰으로 등록이 가능합니다.TPSPlayer는 Character를 상속받기 떄문에 사용자의 제어를 받을.. UE - 3인칭 TPS 프로젝트 생성하기 학습 목표TPS 프로젝트 생성 구현 순서프로젝트 생성소스 코드 관리레벨 생성유틸리티 매크로 작성 1. 프로젝트 생성하기Project Type : Blank / C++StartContent 설정Name : TPSProject 2. 소스 코드 관리하기프로젝트에서 사용하는 .cpp 파일과 .h 파일을 나누어 관리할 수 있도록 폴더를 만들어 각각 옮겨주기. 1. Source → TPSProject 로 이동 2. public, private 폴더 생성생성 이후 .cpp 파일을 private에 .h 파일은 public에 이동합니다. 3. 해당 구조로 프로젝트를 다시 재생성 시키도록 처리.루트 경로로 이동한뒤 TPSProject.uproject를 우클릭하고 Generate Visual Studio proje.. UE - 실행 파일로 패키징 목표완성된 프로젝트를 실행할 수 있는 파일로 패키징하기 구현 순서기본 맵 설정 확인빌드 타입과 저장될 경로를 지정실행할 플랫폼을 선택하고 패키징을 실행하기. 1. 패키징 전 프로젝트 설정앱 실행 시 어떤 레벨부터 실행할 것인지를 결정. MainMap을 기본 레벨로 설정할 것. 빌드 구성어떤 목적으로 패키징을 할 것인지를 설정하는 항목 프로젝트 설정 창 우측에서 Packaging 탭을 선택 시 우측에 있는 Build Configuration이 빌드 구성을 설정하는 항목.Debug : 프로젝트 디버깅을 하기 위한 심볼을 포함한 빌드 구성Debug Game : 게임 실행 중에 C++ 코드를 테스트할 수 있는 상태로 패키징을 할 수 있는 구성, 블루프린트 프로젝트에서는 사용 불가Development : 배포용 .. UE - 프로젝트 베타 타입 최고 점수 표시 및 제작 최고 점수 표시 목표최고 점수를 화면에 표시하고 데이터를 파일로 저장하기 구현 순서최고 점수 UI 제작점수 갱신 기능 구현점수 저장용 블루프린트 생성점수 저장 및 로드 기능 구현 1. 최고 점수 UI 제작하기WBP_MainWidget BluePrint 실행BestScoreText, BestScoreData 생성적합한 X, Y 배치적합한 크기 배치컴파일, save 2.최고 점수 갱신하기 GameModeBase - AddScoreAdd Score 함수의 Current Score가 갱신될때마다 Best Score와 크기 비교Current Score가 크다면 BestScore에 Current Score값 갱신해주기종료 BestScoreData의 Content에 Binding Binding 로직BP_G.. UE - 프로젝트 알파 타입 - UI 제작하기 목표적의 격추 수에 따른 점수 표시 구현 순서게임 모드 베이스에 점수를 누적시키는 함수 생성총알이 Enemy에 닿을 때마다 점수 누적 함수 실행화면에 출력하기 위한 UI 위젯 제작점수 텍스트에 현재 누적된 점수 출력 1. 점수 누적 함수 만들기점수 UI 표시를 위한 점수 계산이 필요점수 저장 변수, 점수 누적 기능 함수 구현 필요함수를 어디 클래스에서 구현해야하는지?게임 룰에 관한 기능이기 때문에 게임 모드 베이스 클래스에 구현 점수 누적 함수 만들기 (GameModeBase)Integer 타입 CurrentScore 변수 생성Add Score 함수 생성로직 블루프린트로 구현 2. 점수 누적 함수 호출하기기존 총알에 적이 닿았을 떄 발생하는 로직에 점수 누적 함수 호출 로직을 추가합니다.로직에서 총.. UE - 프로젝트 알파 타입 - 외부 모델링 교체 기본 모델링 교체목표외부 3D 모델링 파일을 가져와서 플레이어와 에너미의 외형으로 적용 구현 순서외부 3D 모델링 파일을 언리얼 프로젝트로 가져오기모델링의 머티리얼을 언리얼 엔진에 맞게 설정큐브 메시를 새로 가져온 모델링으로 교체 1. 외부 모델링 파일 가져오기3D 모델링 아티스트들이 제작한 모델링 파일을 언리얼 프로젝트에 가져와서 사용 가능합니다. 모델링 데이터 뿐만이 아니라 애니메이션, 이펙트 데이터 등도 외부에서 가져올 수 있습니다.모델러가 모델링 제작 시 방향과 크기를 언리얼 엔진에 맞춰서 작업하지 않았다면 언리얼 프로젝트로 가져왔을 때 방향이 틀어져있거나 중심 위치(Pivot)이 어긋나 있을 수 있습니다.Transform 속성에서 Translation(위치)과 Rotation(회전)을 조정해서.. 이전 1 2 3 다음