-
사운드 추가Game Programming/언리얼 2023. 9. 30. 15:53
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Camera, meta = (AllowPrivateAccess = "true")); class USoundCue* FireSound;
USoundCue 멤버 변수를 추가했다.
static ConstructorHelpers::FObjectFinder<USoundCue> propellerCue( TEXT("/Game/Voyager/Demo/Audio/Weapons/AssaultRifle/SCue_Weapons_Rifle_Noise-Exterior-Close_01.SCue_Weapons_Rifle_Noise-Exterior-Close_01") ); FireSound = propellerCue.Object;
기존 블루프린트에서 설정하는 사운드큐 에셋을 cpp로 추가했다.
// Create an audio component, the audio component wraps the Cue, // and allows us to ineract with // it, and its parameters from code. FireAudioComponent = CreateDefaultSubobject<UAudioComponent>( TEXT("PropellerAudioComp") ); // I don't want the sound playing the moment it's created. FireAudioComponent->bAutoActivate = false; FireAudioComponent->bReverb = true; // I want the sound to follow the pawn around, so I attach it to the Pawns root. FireAudioComponent->AutoAttachParent = RootComponent; // I want the sound to come from slighty in front of the pawn. FireAudioComponent->SetRelativeLocation(FVector(0.f, 0.0f, 0.f)); // Attach our sound cue to the SoundComponent (outside the constructor) if (FireAudioComponent->IsValidLowLevelFast()) { FireAudioComponent->SetSound(FireSound); }
구글에서 찾은 UAudioComponent를 사용해 재생하는 방법도 있다.
SetRelativeLocation(FVector(0.f, 0.0f, 0.f));으로 설정해도 플레이어 위치에서 소리가 나질 않았다...
더 검색해봐야겠다.
위 컴포넌트를 사용하면 이외에도 다양한 설정을 할 수 있다.
'Game Programming > 언리얼' 카테고리의 다른 글
Animation Montage (0) 2023.10.03 Muzzle Flash (0) 2023.09.30 Fire Weapone (0) 2023.09.29 Rotator Character to Movement (0) 2023.09.29 애니메이션 인스턴스 추가 (0) 2023.09.29