-
HUD Aim을 총알 시작점으로 했을 때 문제점 해결Game Programming/언리얼 2023. 10. 5. 16:54
라인 트레이스의 시작 위치를 HUD의 월드좌표로 하면 실제 총과 피격 위치가 맞지 않는 문제가 발생했다.
if (FireHit.bBlockingHit) { BeamEndPoint = FireHit.Location; }
그래서, 허드에서부터 출발한 총알의 피격 위치를 구하고
FHitResult WeaponTraceHit; const FVector WeaponTraceStart{ SocketTransform.GetLocation() }; const FVector WeaponTraceEnd{ BeamEndPoint }; GetWorld()->LineTraceSingleByChannel( WeaponTraceHit, WeaponTraceStart, WeaponTraceEnd, ECollisionChannel::ECC_Visibility); if (WeaponTraceHit.bBlockingHit) { BeamEndPoint = WeaponTraceHit.Location; if (ImpactParticles) { UGameplayStatics::SpawnEmitterAtLocation(GetWorld(), ImpactWallParticles, BeamEndPoint); UGameplayStatics::SpawnEmitterAtLocation(GetWorld(), ImpactParticles, BeamEndPoint); } }
다시 총구로부터 총알의 피격 위치를 라인트레이스했다.
이렇게 하면 허드 기준에서 대상을 맞출 수 있지만, 파티클은 총구에서 대상까지 표현이된다.
'Game Programming > 언리얼' 카테고리의 다른 글
블루프린트 엑터를 부모에 붙이기 (0) 2023.10.06 Gun Point Light 효과 (1) 2023.10.06 HUD Aim 방향으로 총알 발사 (0) 2023.10.05 CrossHair HUD 추가 (1) 2023.10.05 GunLight 추가 (0) 2023.10.05