Unreal Engine
[UE] 총알 & 재장전 구현. Bullet, Magazine, Reload
[UE] 총알 & 재장전 구현. Bullet, Magazine, Reload
2023.03.27목차 Enlarge CrossHair, Bullet, Reload Characters CAnimInstance.h .cppCPlayer.h .cppUtilities CHelpers.hCLog.h .cppWeapons CBullet.h .cpp 생성CWeapon.h .cppCWeapon_AR4.h .cppCWeaponComponent.h .cppWidget CUserWidget_CrossHair.h .cppCUserWidget_HUD.h .cppCGameMode.h .cppGlobal.hCAnimNotifyState_Equip.h .cpp SK_AR4_Skeleton 소켓 생성 - Muzzle_Bullet CPlayer CPlayer.cpp더보기#include "CPlayer.h"#incl..
[UE] 총알 연사, HUD & CrossHair
[UE] 총알 연사, HUD & CrossHair
2023.03.23전반적으로 언리얼 엔진에서 TPS 총알 발사를 구현하려면 블루프린트, 애니메이션 및 물리 시뮬레이션의 조합이 필요하다. 올바른 설정을 통해 플레이어가 게임에 계속 몰입할 수 있는 현실적이고 매력적인 슈팅 경험을 만들 수 있다. 목차 연사(AutoFire) 구현하기 Characters CAnimInstance.h .cppCPlayer.h .cppUtilities CHelpers.hCLog.h .cppWeapons CWeapon.h .cppCWeapon_AR4.h .cppCWeaponComponent.h .cppWidget CUserWidget_CrossHair.h .cpp 생성CUserWidget_HUD.h .cppCGameMode.h .cppGlobal.hCAnimNotifyState_Equip...
[UE] 총알 발사 구현하기
[UE] 총알 발사 구현하기
2023.03.22언리얼 엔진에서 3인칭 슈팅 게임(TPS) 총알 발사를 구현하려면 무기 만들기, 총알 생성, 총알 구성, 충돌 돌처리, 대미지 적용, 시각 효과 추가하기 등의 과정이 필요하다. 언리얼 엔진에서 TPS 총알 발사를 구현하려면 블루프린트, 애니메이션 및 물리 시뮬레이션의 조합이 필요하다. 올바른 설정을 통해 플레이어가 게임에 계속 몰입할 수 있는 현실적이고 매력적인 슈팅 경험을 만들 수 있다. 목차 총알 발사 구현하기 언리얼 엔진에서 3인칭 슈팅 게임(TPS) 총알 발사를 구현하려면 다음과 같은 여러 단계가 필요하다. 무기 만들기: 먼저 무기용 메시와 총알이 생성되는 소켓이 포함된 무기 청사진을 만들어야 한다. 청사진에 발사 애니메이션과 음향 효과도 추가해야 한다.총알 생성: 플레이어가 무기를 발사할..
[UE] Hand IK, AnimInstance, Fire
[UE] Hand IK, AnimInstance, Fire
2023.03.21Unreal Engine 4의 Hand IK(Inverse Kinematics)는 캐릭터의 가상 손이 사실적인 방식으로 환경 및 개체와 상호 작용할 수 있도록 하는 기능이다. 대상 개체의 위치와 방향을 기반으로 캐릭터 손의 위치와 방향을 계산하여 작동한다. 언리얼 엔진 4에서 Hand IK를 사용하려면 스켈레탈 메시가 있는 캐릭터와 손 애니메이션이 포함된 애니메이션 세트가 있어야 한다. Hand IK 시스템은 애니메이션 데이터를 사용하여 캐릭터 손의 위치와 방향을 실시간으로 계산한다. 목차 Weapon Unreal Engine 4의 Hand IK(Inverse Kinematics)는 캐릭터의 가상 손이 사실적인 방식으로 환경 및 개체와 상호 작용할 수 있도록 하는 기능이다. 대상 개체의 위치와 방향..
[Unreal] TSubClassOf
[Unreal] TSubClassOf
2023.03.20TSubclassOf는 언리얼엔진에서 사용되는 C++ 템플릿 클래스이다. 이 클래스는 다른 클래스를 가리키는 UClass 포인터를 저장하며, 해당 클래스의 하위 클래스만을 가리킬 수 있다. TSubclassOf는 클래스 타입을 인자로 받는 함수의 파라미터로 많이 사용된다. 목차 TSubClassOf TSubClassOf TSubclassOf는 언리얼엔진에서 사용되는 C++ 템플릿 클래스이다. 이 클래스는 다른 클래스를 가리키는 UClass 포인터를 저장하며, 해당 클래스의 하위 클래스만을 가리킬 수 있다. TSubclassOf는 클래스 타입을 인자로 받는 함수의 파라미터로 많이 사용된다. 예를 들어, AActor 클래스의 파생 클래스 중 하나를 사용하여 인스턴스화할 수 있는 SpawnActor 함수를 호..
[UE] TPS Weapon, AnimNotify, Aim
[UE] TPS Weapon, AnimNotify, Aim
2023.03.17글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자입니다 목차 Weapon - Equip&Unequip, Aim 구현하기 Characters CAnimInstance.h .cppCPlayer.h .cppUtilities CHelpers.hCLog.h .cppWeapons CWeapon.h .cppCWeapon_AR4.h .cppCWeaponComponent.h .cppCGameMode.h .cppGlobal.hCAnimNotifyState_Equip.h .cpp 생성 CWeapon CW..
[UE] Line Trace, Multi Trace, TPS 기본 세팅
[UE] Line Trace, Multi Trace, TPS 기본 세팅
2023.03.15목차 Line Trace 01_Spawn C01_Properties.h .cppC02_MeshC02_Mesh_SphereC02_Mesh_ConeC03_Spawner.h .cpp02_Profiler C01_Log.h .cppC02_DrawDebug.h .cpp03_Collision C01_ActorOverlap.h .cppC02_ComponentOverlap.h .cppC03_OverlapAndHit.h .cpp C04_Trigger.h .cppC04_Light.h .cpp C05_MultiTrigger.h .cpp C05_FallingBox.h .cpp C05_SpotLight.h .cpp C06_EventTrigger.h .cpp C06_Explosion.h .cpp C07_Override.h ...
[UE] Collision(Override), BP와 C++ 실행순서
[UE] Collision(Override), BP와 C++ 실행순서
2023.03.14충돌 검사를 수행하고 나면, 충돌한 물체의 위치와 방향, 속도 등을 계산할 수 있다. 이를 바탕으로 충돌한 물체에 대한 반응을 구현할 수 있다. 이를 위해서는 충돌 응답(Collision Response) 코드를 작성해야 한다. 충돌 응답 코드는 충돌한 물체가 서로 어떻게 반응해야 하는지를 결정하는 것이다. 예를 들어, 물체가 서로 충돌하면 반대 방향으로 튕겨져 나가거나, 속도가 감소하는 등의 반응을 구현할 수 있다. 목차 Collision - Override 01_Spawn C01_Properties.h .cppC02_MeshC02_Mesh_SphereC02_Mesh_ConeC03_Spawner.h .cpp02_Profiler C01_Log.h .cppC02_DrawDebug.h .cpp03_C..
[UE] Collsion(trigger, MultiTrigger, Explosion)
[UE] Collsion(trigger, MultiTrigger, Explosion)
2023.03.13충돌(Collision)의 가장 기본적인 방법은 두 물체의 바운딩 박스(Bounding Box)를 비교하는 것이다. 바운딩 박스란 물체를 둘러싸는 사각형 영역을 의미한다. 이 방법은 빠르고 간단하지만, 물체의 모양에 대한 정확한 충돌 검사는 수행하지 않는다. 목차 Trigger 충돌(Collision)의 가장 기본적인 방법은 두 물체의 바운딩 박스(Bounding Box)를 비교하는 것이다. 바운딩 박스란 물체를 둘러싸는 사각형 영역을 의미한다. 이 방법은 빠르고 간단하지만, 물체의 모양에 대한 정확한 충돌 검사는 수행하지 않는다. 보다 정확한 충돌 검사를 위해서는, 물체의 형태를 고려한 검사가 필요하다. 이를 위해 언리얼 C++에서는 물체의 형태를 기하학적인 도형으로 표현할 수 있는 Collisi..
[UE] Character Animation, Collsion
[UE] Character Animation, Collsion
2023.03.08언리얼 엔진 C++에서 캐릭터 애니메이션은 게임이나 다른 대화형 경험에서 캐릭터의 동작과 움직임을 제어하기 위해 코드를 작성하는 것이다. 이는 언리얼 엔진의 여러 C++ 클래스 및 함수, 예를 들어 캐릭터 클래스와 애니메이션 블루프린트 시스템을 사용하여 달성할 수 있다. 목차 Character Animation 애니메이션을 가지고 있으면, C++ 코드를 사용하여 애니메이션의 타이밍 및 블렌딩을 제어하고, 플레이어 및 다른 게임 시스템에서의 입력 처리와 같은 작업을 수행할 수 있다. 이는 PlayAnimMontage()와 같은 함수를 사용하여 특정 애니메이션 시퀀스를 재생하고, 애니메이션 상태 기계를 설정하여 애니메이션이 서로 전환하는 방식을 제어하는 것을 포함할 수 있다. 언리얼 엔진 C++에서의 ..
[UE] Character, GameMode
[UE] Character, GameMode
2023.03.07언리얼 C++에서 Gamemode(게임 모드)는 게임의 규칙과 플레이어들의 상호작용 방식을 정의하는 클래스다. Gamemode는 게임의 전반적인 진행 방식을 결정하며, 게임의 시작과 종료, 스코어 계산, 게임 오브젝트 생성 등을 담당한다. 목차 Character & Gamemode Gamemode는 C++ 클래스로 작성되며, 기본적으로 AGameModeBase 클래스를 상속하여 사용한다. Gamemode는 게임 내에서 하나의 인스턴스만 존재하며, 해당 인스턴스를 통해 게임의 전반적인 흐름을 제어한다. Gamemode 클래스에서는 다음과 같은 기능을 구현할 수 있다. 게임 시작과 종료: Gamemode는 게임이 시작되었을 때와 종료될 때의 로직을 구현한다. 예를 들어, 게임이 시작될 때 플레이어들에..
[UE] Log 출력하기, Draw Debug 구현
[UE] Log 출력하기, Draw Debug 구현
2023.03.03언리얼 엔진에서 Draw Debug는 개발자들이 런타임 동안 다른 게임 시스템이나 코드 로직의 동작을 시각화할 수 있는 기능이다. 게임 엔진에서 일어나는 일을 시각적으로 보여줌으로써 진단하기 어려운 문제나 오류를 식별하는 데 도움이 될 수 있다. 목차 Log 출력하기 CLog 수정 CLog.h더보기#pragma once#include "CoreMinimal.h"//매크로로 치환#define LogLine() { CLog::Log(__FILE__, __FUNCTION__, __LINE__);}#define PrintLine() { CLog::Print(__FILE__, __FUNCTION__, __LINE__);}class U2212_03_API CLog{public: static void ..