// 이 폰을 가장 빠른 번호의 플레이어가 조정하도록 설정
AutoPossessPlayer = EAutoReceiveInput::Player0;
//카메라를 만들고
UCameraComponent* OurCamera = CreateDefaultSubobject<UCameraComponent>(TEXT("OurCamera"));
//카메라를 루트에 가져다 붙이고 (자식이된다.)
OurCamera->AttachTo(RootComponent);
// 카메라의 이동
OurCamera->SetRelativeLocation(FVector(-250.0f, 0.0f, 250.0f ));
// 카메라의 회전
OurCamera->SetRelativeRotation(FRotator( -45.0f, 0.0f, 0.0f ));
// 스케일링
// 크기가 1보다 아래로 줄거나 2배이상 되지 않게 한다.
CurrentScale = FMath::Clamp( CurrentScale, 1.0f, 2.0f );
OurVisibleComponent->SetWorldScale3D(FVector(CurrentScale));
!주의 언리얼에서 회전과 이동을 할때 둘다 인자갑이 3개지만 이동은 FVector 회전은 FRotator을 사용한다.
//Clamp 들어가는 AxisValue 값의 범위를 -1.0f ~ 1.0f로 고정한다.
CurrentVelocity.X = FMath::Clamp(AxisValue, -1.0f, 1.0f) *MoveSpeed;
//Input 관련
UInputComponent* InputComponent <- 이것을 사용하여 인풋을 조절할수 있다. AActor에 선언되어 있다.
virtual void SetupPlayerInputComponent(class UInputComponent* InputComponent) override; <- 이란 함수가 ACharactor에 override 되어있는데 이 Function은 Pawn 에서 생성되었다.
//Input중 Axis 키 관련 사용법 (키 이름, 적용할 클래스, 이밴트 발생할 함수)
InputComponent->BindAxis("MoveX", this, &AMyPawn::Move_XAxis);
void Move_XAxis(float AxisValue); <-- 함수의 인자값으로 Axis를 float로 받아준다.
void StartGrowing(); <-- 함수의 인자값이 없다.
'프로그래밍 > Unreal Engine4' 카테고리의 다른 글
언리얼 C++ 튜토리얼 002.CameraActor (0) | 2016.04.04 |
---|---|
언리얼 C++ 튜토리얼 001.MoveActor (0) | 2016.04.03 |
언리얼 디테일 창에 enum 상태 띄우는 방법 (0) | 2016.04.02 |
***언리얼 사용시 코딩 규칙!!!*** (0) | 2016.03.28 |
UPROPERTY, UFUNCTION, UENUM, meta.. 지정 매크로 (0) | 2016.03.25 |