[Unreal] 이득우의 언리얼 C++ 게임개발의 정석 8
·
Game Programming/Unreal
액터 컴포넌트의 제작 #pragma once #include "CoreMinimal.h" #include "Components/ActorComponent.h" #include "MyCharacterStatComponent.generated.h" UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent) ) class TEST_API UMyCharacterStatComponent : public UActorComponent { GENERATED_BODY() public: UMyCharacterStatComponent(); protected: virtual void BeginPlay() override; virtual void InitializeComp..
[Unreal] 이득우의 언리얼 C++ 게임개발의 정석 7
·
Game Programming/Unreal
#include "DrawDebugHelpers.h" - 디버그 드로잉 기능을 가진 헤더 void AMyCharacter::PostInitializeComponents() { Super::PostInitializeComponents(); CAnim = Cast(GetMesh()->GetAnimInstance()); if (NULL == CAnim) return; CAnim->OnMontageEnded.AddDynamic(this, &AMyCharacter::OnAttackMontageEnded); CAnim->OnNextAttackCheck.AddLambda([this]()->void { CanNextCombo = false; if (IsComboInputOn) { AttackStartComboState..
[Unreal] 이득우의 언리얼 C++ 게임개발의 정석 6
·
Game Programming/Unreal
충돌체 - WorldStatic : 움직이지 않는 정적인 배경 액터에 사용하는 콜리전 채널. 주로 스태틱메시 액터에 있는 스태틱메시 컴포넌트에 사용. - WorldDynamic : 움직이는 액터에 사용하는 콜리전 채널. 블루프린트에 속한 스태틱메시 컴포넌트에 사용. - Pawn : 플레이어가 조종하는 물체에 사용. 캐릭터의 충돌을 담당하는 캡슐 컴포넌트에 사용. - Visibility : 배경 물체가 시각적으로 보이는지 탐지하는데 사용. 탐지에서 폰은 제외하고 마우스로 물체를 선택하는 피킹 기능을 구현할 때 사용. - Camera : 카메라 설정을 위해 카메라와 목표물 간에 장애물이 있는지 탐지하는데 사용. - PhysicsBody : 물리 시뮬레이션으로 움직이는 컴포넌트에 설정한다. 콜리전 프리셋의 물..
[Unreal] 이득우의 언리얼 C++ 게임개발의 정석 5
·
Game Programming/Unreal
애님 몽타주 //CAnimInstance.h private: UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = "Montage", Meta=(AllowPrivateAccess = true)) UAnimMontage* AttackMontage; UCAnimInstance::UCAnimInstance() { static ConstructorHelpers::FObjectFinder ATTACK_MONTAGE(TEXT("AnimMontage'/Game/Character/Warriors/Montages/AttackMontage.AttackMontage'")); if (ATTACK_MONTAGE.Succeeded()) { AttackMontage = ATT..
[C++] 프로그래머스 2016년
·
Algorithm/Programmers
#include #include using namespace std; string solution(int a, int b) { string answer = ""; int month[12] = { 31,29,31,30,31,30,31,31,30,31,30,31 }; string week[7] = { "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT" }; for(int i = 0; i < a - 1; i++) { b += month[i]; } answer = week[(b + 4) % 7]; return answer; } 풀이 1. 12월까지의 날짜와 각 요일을 저장한다. 요일은 일요일부터 저장한다. 7로 나눠질때 0으로 떨어지는 것을 이용. 2. 배열이 0부터 계산하여 ..
[Unreal] 이득우의 언리얼 C++ 게임개발의 정석 4
·
Game Programming/Unreal
애니메이션 - 애님 인스턴스 : 스켈레탈 메시를 소유하는 폰의 정보를 받아 애님그래프가 참조할 데이터를 제공한다. - 애님 그래프 : 애님 인스턴스의 변수 값에 따라 변화하는 애니메이션 시스템을 설계하는 공간. virtual void NativeUpdateAnimation(float DeltaSeconds) override; void UCAnimInstance::NativeUpdateAnimation(float DeltaSeconds) { Super::NativeUpdateAnimation(DeltaSeconds); ACharacter* character = Cast(TryGetPawnOwner()); if(::IsValid(character)) Speed = character->GetVelocity()..