33 - Boss

Overcle·2023년 3월 20일
0

학원

목록 보기
26/29

요약
1.

용어 설명
1.

Tip
1.

수업내용


보스 몬스터 클래스 생성.

보스 몬스터 클래스 생성.

Monster클래스를 상속받고

Minion Warrior 코드를 가져와서 이름만 바꿈

MonsterAnimation에서 Enum타입을 몇개 추가. 보스용. 스킬같은?

애니메이션 블루 프린트 생성

애니메이션 > 애니메이션 블루프린트 > Grux_skeleton, AMonsterAnimation > "ABGrux"

BluePrint로 상속받아 Capsule의 크기를 확인해서 c++코드로 적용

AGrux::AGrux()
{
	PrimaryActorTick.bCanEverTick = true;

	/*static ConstructorHelpers::FObjectFinder<USkeletalMesh>	MeshAsset(TEXT("/Script/Engine.SkeletalMesh'/Game/ParagonMinions/Characters/Minions/Dusk_Minions/Meshes/Minion_Lane_Super_Dusk.Minion_Lane_Super_Dusk'"));

	if (MeshAsset.Succeeded())
		GetMesh()->SetSkeletalMesh(MeshAsset.Object);*/

	GetCapsuleComponent()->SetCapsuleHalfHeight(120.f);
	GetCapsuleComponent()->SetCapsuleRadius(60.f);

	GetMesh()->SetRelativeLocation(FVector(0.f, 0.f, -110.f));
	GetMesh()->SetRelativeRotation(FRotator(0.f, -90.f, 0.f));

	/*static ConstructorHelpers::FClassFinder<UAnimInstance> AnimClass(TEXT("/Script/Engine.AnimBlueprint'/Game/Monster/Animation/ABMinionWarrior.ABMinionWarrior_C'"));

	if (AnimClass.Succeeded())
		GetMesh()->SetAnimInstanceClass(AnimClass.Class);*/

	mMonsterTableRowName = TEXT("Grux");

	mHitActor = CreateDefaultSubobject<AParticCascade>(TEXT("HitParticle"));

	AParticCascade* Particle = Cast<AParticCascade>(mHitActor);
	Particle->SetParticle(TEXT("ParticleSystem'/Game/ParagonYin/FX/Particles/Yin/Abilities/Primary/FX/P_Yin_Primary_Impact.P_Yin_Primary_Impact'"));
	Particle->SetSound(TEXT("SoundWave'/Game/Sound/Fire1.Fire1'"));

	FConvertMaterial	Mtrl;
	Mtrl.Index = 0;

	mDissolveMtrlIndexArray.Add(Mtrl);

}

스폰 하기

방법은 2가지,
시네마틱 영상 끝나면 시네마틱용 Actor를 삭제하거나 이동하고, 보스 몬스터 스폰,

또는

애초에 보스몬스터를 미리 스폰해서 시네마틱 영상 하기

시네마틱용의 애니메이션은 어쩌피 시네마틱시스템에서 컨트롤하기에 후자가 괜찮을듯?
m하지만 후자는 애니메이션 인스턴스를 가지고있기에 시네마틱 재생할 때만, 별도 설정을 해야한다. (시네마틱과 상충하기때문.) (애니메이션 모드)
AI도 별도 설정을 해야한다. ()

시네마틱 시스템에서 애니메이션을 하면, 별도의 애니메이션 인스턴스를 잡기때문에 구현한 인스턴스, 내부함수가 동작을 안하고, AI만 동작하는 에러,
선생님도 모르는듯.

수업에선 전자로 진행

AI

SkillInfo

구조체형으로 스킬정보 저장해서 관리.

데이터테이블을 만들거면 우선 기준이 될 구조체는 있어야함.
GameInfo.h에 생성.

profile
게임 프로그래머 지망생의 발자취

0개의 댓글