OnComponentBeginOverlap 바인드
358
작성한 질문수 3
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Character.h"
#include "ABCharacterNPC.generated.h"
UCLASS()
class INFINITEABYSS_API AABCharacterNPC : public ACharacter
{
GENERATED_BODY()
public:
AABCharacterNPC();
protected:
UPROPERTY(VisibleAnywhere, Category = NPC, Meta = (AllowPrivateAccess = "true"))
TObjectPtr<class UStaticMeshComponent> NPC;
UPROPERTY(VisibleAnywhere, Category = NPC, Meta = (AllowPrivateAccess = "true"))
TObjectPtr<class UBoxComponent> NPCTrigger;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Collision")
bool bIsOverlapping;
UFUNCTION()
void OnBoxTriggerBeginOverlap(UPrimitiveComponent* OverlappedComponent, AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepHitResult);
};헤더 파일에 이렇게 선언 한 다음
// Fill out your copyright notice in the Description page of Project Settings.
#include "NPC/ABCharacterNPC.h"
#include "Components/BoxComponent.h"
#include "Components/CapsuleComponent.h"
#include "Components/PrimitiveComponent.h"
#include "Physics/ABCollision.h"
// Sets default values
AABCharacterNPC::AABCharacterNPC()
{
bUseControllerRotationPitch = false;
bUseControllerRotationYaw = false;
bUseControllerRotationRoll = false;
GetCapsuleComponent()->InitCapsuleSize(42.0f, 96.0f);
GetCapsuleComponent()->SetCollisionProfileName(TEXT("NPC"));
GetMesh()->SetRelativeLocationAndRotation(FVector(0.0f, 0.0f, -95.0f), FRotator(0.0f, 0.0f, 0.0f));
GetMesh()->SetAnimationMode(EAnimationMode::AnimationBlueprint);
GetMesh()->SetCollisionProfileName(TEXT("NPCMesh"));
static ConstructorHelpers::FObjectFinder<USkeletalMesh> NPCMeshRef(TEXT("/Script/Engine.SkeletalMesh'/Game/ExternAssets/MedievalGirl/Mesh/SK_MedievalGirl.SK_MedievalGirl'"));
if (NPCMeshRef.Object)
{
GetMesh()->SetSkeletalMesh(NPCMeshRef.Object);
}
static ConstructorHelpers::FClassFinder<UAnimInstance> AnimInstanceClassRef(TEXT("Game/ExternAssets/MedievalGirl/Demo/Animations/ThirdPerson_AnimBP.ThirdPerson_AnimBP_C"));
if (AnimInstanceClassRef.Class)
{
GetMesh()->SetAnimInstanceClass(AnimInstanceClassRef.Class);
}
NPCTrigger = CreateDefaultSubobject<UBoxComponent>(TEXT("NPCTrigger"));
NPCTrigger->SetBoxExtent(FVector(100.0f, 100.0f, 100.0f));
NPCTrigger->SetRelativeLocation(FVector(0.0f, 0.0f, 50.0f));
NPCTrigger->SetupAttachment(GetMesh());
NPCTrigger->SetCollisionProfileName(CPROFILE_ABTRIGGER);
NPCTrigger->OnComponentBeginOverlap.AddDynamic(this, &AABCharacterNPC::OnBoxTriggerBeginOverlap);
UE_LOG(LogTemp, Log, TEXT("NPC Trigger event binding: %s"), NPCTrigger->OnComponentBeginOverlap.IsBound() ? TEXT("Success") : TEXT("Failed"));
bIsOverlapping = false;
}
void AABCharacterNPC::OnBoxTriggerBeginOverlap(UPrimitiveComponent* OverlappedComponent, AActor* OtherActor,
UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepHitResult)
{
UE_LOG(LogTemp, Log, TEXT("%s"), *OtherActor->GetName());
bIsOverlapping = true;
}Cpp 파일에 OnBoxTriggerBeginOverlap를 바인드 해서 사용할려는데 로그로 바인드는 되었다고 뜨는데 함수안에 있는 로그는 왜 안찍히는 건가요?
답변 2
1
문제 해결 했습니다...
오브젝트 삭제하고 다시 설치 하니까 체크가 되었습니다.
언리얼 Generate 까지 했는데 안되어서 코드 문제 인줄 알았는데...
0
저도 이 문제였네요; 변수 지웠다가 다시 생성하니까 바인딩된 함수 호출 되네요;;
아무래도 헤더 소스코드 파싱에서 문제가 있었던게 아닐까... 생각되네요.
해결법 공유 감사합니다.
무한맵 제작과정중에 GetWorld 가 Nullptr 을 반환합니다.
0
46
2
12강 행동트리에서 질문이 있습니다.
0
52
1
위젯 사이즈랑 위치 질문드려요.
0
81
3
행동트리의 데코레이션 관련하여 질문이 있습니다.
0
94
3
VS 2026 의 문제일까요?
0
488
2
에셋참조 블루프린트질문
0
67
2
애님 몽타주 콤보 관련질문
0
70
2
ThirdPerson CDO 에러가 생깁니다.
0
95
3
캐릭터가 움직이지 않습니다.
0
182
4
쿠킹 폴더 지정시 , Item 이외에는 지정하지 않는지 궁금합니다.
0
62
2
TSoftObjectPtr 를 사용했음에도, 메모리에 로드 됩니다.
0
94
2
7강에 나오는 생성자에 대해서 궁금합니다.
0
78
2
6강을 마무리하며 트레이스 채널 을 이해하지 못했습니다.
0
73
2
3강을 마무리 하며, 카메라가 움직이지 않습니다.
0
71
2
Use Controller Rotation 옵션값이 궁금합니다.
0
84
2
3강 입력 시스템 적용 중, 5.6 버전은 입력 매팅이 2개 입니다.
0
65
2
PlayerController 에 대헤 제가 잘못 이해한 것 같습니다.
0
78
2
13강 UpdateStat 부분에서 문제를 겪고 있습니다.
0
64
2
BP_PlayerController의 CustomEvent노드 이유가 궁금합니다.
0
65
1
콤포넌트 포인터 선언시 TObjectPtr<>과 UStaticMeshComponent* 차이점
0
72
2
CharacterMovementComponent의 RotationRate관련해서 질문이 있습니다.
0
115
2
언리얼 공부방법에 대해 질문드립니다.
0
87
2
4강 에서 이상한 그림자가 남습니다.
0
46
1
2강에서 카메라 회전안되시는분 참고
2
91
2





