[UE5]툰 탱크-4

칼든개구리·2024년 12월 9일
0

[언리얼TO리얼]

목록 보기
12/42

언리얼 엔진 타입의 헤더파일에는 한 파일에 여러 번 포함되지 않도록 하는 보호 장치가 있다.
바로 #pragma once 이다
이제 탱크를 UStataicMeshComponent로 만들어주자!

// Sets default values
ABasePawn::ABasePawn()
{
 	// Set this pawn to call Tick() every frame.  You can turn this off to improve performance if you don't need it.
	PrimaryActorTick.bCanEverTick = true;
	CapsuleComp = CreateDefaultSubobject<UCapsuleComponent>(TEXT("Capsule Collider"));
	RootComponent = CapsuleComp;

	BaseMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Base Mesh"));
	BaseMesh->SetupAttachment(CapsuleComp);

	TurretMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Turret Mesh"));
	TurretMesh->SetupAttachment(BaseMesh); //

	ProjectileSpawnPoint = CreateDefaultSubobject<USceneComponent>(TEXT("Spawn Point"));
	ProjectileSpawnPoint->SetupAttachment(TurretMesh);
}

C++ 만들고 블루프린트 만드는 것의 의미: BasePawn을 기반으로 블루프린트 클래스 만들기를 선택하면 이 C++ 클래스를 기반으로 블루프린트를 만들 수 있다.


컴포넌트를 보면 앞서 코드에서 붙인 것들이 잘 붙어있는 것을 확인할 수 있다.

컴포넌트를 하나씩 만져보면 디테일 창이 빈 것을 확인할 수 있다. 이는 언리얼 엔진에서 c++기발자로서 제어할 수 있는 부분이고 컴포넌트를 블루프린트에 노출시킬 수 있다.

UPROPERTY() 매크로의 괄호 안에 넣을 수 있는 옵션들

  • VisibleAnywhere: 블루프린트상에서 볼 수 있지만, 이 프로퍼티를 편집할 수 없다.(디폴트, 인스턴스, 읽기만 가능)
  • EditAnywhere: 선택하고, 변경하고. 편집할 수 있다 (디폴트, 인스턴스, 읽기 쓰기 가능)
  • VisibleInstanceOnly: 인스턴스에서만 확인 가능(인스턴스,읽기만 가능)
profile
메타쏭이

0개의 댓글