(Unreal : Basic) 19. Sweeping

Posted by : at

Category : Unreal


실험을 위해 벽을 하나 만들어보자.

이후 Floater하나를 생성 후 X 방향(벽이있는 방향)으로 흐르게 선언한다면

그냥 벽을 통과해버릴 것이다.

여기서 벽의 피직스를 켜줘야 그냥 통과하지 못한다.


다른방법으로는 우선 벽의 피직스를 끄고 코드를 아래와 같이 수정해보자.

void AFloater::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);

	if (bShouldFloat)
	{
		FHitResult HitResult;
		// AddActorLocalOffset(InitialDirection, false, &HitResult);
        AddActorLocalOffset(InitialDirection, true, &HitResult);
        // 다른 object를 통과하지 못한다.

        FVector HitLocation = HitResult.Location;
        UE_LOG(LogTemp, Warning, TEXT("Hit Location: x = %f, y = %f, z = %f"), HitLocation.X, HitLocation.Y, HitLocation.Z);
	}
}

추가적으로 충돌이 발생시 충돌지점을 아래와 같이 출력이 가능하다.


About Taehyung Kim

안녕하세요? 8년차 현업 C++ 개발자 김태형이라고 합니다. 😁 C/C++을 사랑하며 다양한 사람과의 협업을 즐깁니다. ☕ 꾸준한 자기개발을 미덕이라 생각하며 노력중이며, 제가 얻은 지식을 홈페이지에 정리 중입니다. 좀 더 상세한 제 이력서 혹은 Private 프로젝트 접근 권한을 원하신다면 메일주세요. 😎

Star
Useful Links