688人加入学习
(0人评价)
探索虚幻UE5C++:从菜鸟到英雄的编程之路!

制作完成于 2023年9月1日 使用虛幻版本:虚幻5.2,编辑器使用VS2022;

价格 ¥ 229.00
该课程属于 虚幻Unreal - A计划(一年有效期) 请加入后再学习

#include "Components/BoxComponent.h"

.h

UPROPERTY(EditAnywhere,CateGory="OverlapComponent")

UBoxComponent* OverlapComponent; 

UFUNCTION()

void OnComponentBeginOverlap(UPrimitiveComponent* OverlappedComponent,AActor* OtherActor,UPrimitiveComponent* OtherComp,int32 OtherBodyIndex,bool bFromSweep,const FHitResult& SweepResult);

 

.cpp

AMyAcotr::AMyAcotr()

{

       OverlapComponent = CreateDefaultSubobject<UBoxComponent>(TEXT("OverlapComponent"));

        OverlapComponent->SetupAttachment(RootComponent);

        OverlapComponent->SetCollisionResponseToAllChannels(ECollisionResponse::ECR_Overlap);

}

 

void AMyActor::BeginPlay()

{

        OverlapComponent->OnComponentBeginOverlap.AddDynamic(this,&AMyActor::OnComponentBeginOverlap);

}

 void AMyActor:Tick(float DeltaTime)

{

        AddActorWorldOffset(MSpeed,True);

        AddActorWorldRotation(TSpeed,True);

}

 

void AMyActor::OnComponentBeginOverlap(UPrimitiveComponent* OverlappedComponent,AActor* OtherActor,UPrimitiveComponent* OtherComp,int32 OtherBodyIndex,bool bFromSweep,const FHitResult& SweepResult)

{

      //触发事件

}

[展开全文]

.h

UPROPERTY(EditAnywhere,CateGory="Force")

FVector MSpeed;

UPROPERTY(EditAnywhere,CateGory="TForce")

FRotator TSpeed;

 

.cpp

 

 void AMyAcotr:Tick(float DeltaTime)

{

        AddActorWorldOffset(MSpeed,True);

        AddActorWorldRotation(TSpeed,True);

}

[展开全文]

.h

UPROPERTY(EditAnywhere,CateGory="Force")

FVector MSpeed;

UPROPERTY(EditAnywhere,CateGory="TForce")

FRotator TSpeed;

 

.cpp

 

 void AMyAcotr:Tick(float DeltaTime)

{

       FVector NewLocation = GetActorLocation(); 

      NewLocation = GetActorLocation() + FVector(MSpeed.X*DeltaTime,MSpeed.Y*DeltaTime,MSpeed.Z*DeltaTime);

        SetActorLocation(NewLocation);

 

       

     FRotator NewRotation = GetActorRotation(); 

      NewRotation =GetActorRotation() + FRotator(TSpeed.Yaw*DeltaTime,MSpeed.Roll*DeltaTime,MSpeed.Pitch*DeltaTime);

       SetActorRotation(NewRotation);

}

[展开全文]

.h

UPROPERTY(EditAnywhere,CateGory="Force")

FVector Force;

UPROPERTY(EditAnywhere,CateGory="TForce")

FVector TForce;

 

.cpp

AMyAcotr::AMyAcotr()

{

        Force = FVector(0.f,0.f,0.f);

        TForce = FVector(0.f,0.f,0.f);

}

 void AMyAcotr::BeginPlay()

{

       Cube->AddForce(Force,NAME_None,true);

        Cube->AddTorqueInRadians(TForceNAME_None,true);

}

[展开全文]

.h

UPROPERTY(VisibleAnywhere, CateGory = "Cube")
    UStaticMeshComponent* Cube;

 

.cpp

Cube = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Cube"));

    RootComponent = Cube;

[展开全文]

meta = (ClampMin= -5,ClampMin = 5,UIMin = -4,UIMax = 4)//限制最大最小值和UI最大最小zhi

[展开全文]

建议输入法直接设置为在中文输入法下仍旧使用英文符号......

[展开全文]