当前位置: 首页 > news >正文

深圳教育 网站建设app开发和网站开发哪个简单

深圳教育 网站建设,app开发和网站开发哪个简单,肇庆市住房和城乡房屋建设局网站,公司企业宣传片视频1.销毁Actor 1.Actor中存在Destory()函数和Destoryed()函数 Destory()函数是成员函数,它会立即标记 Actor 为销毁状态,并且会从场景中移除该 Actor。它会触发生命周期中的销毁过程,调用 Destroy() 后,Actor 立即进入销毁过程。具体…

1.销毁Actor

        1.Actor中存在Destory()函数和Destoryed()函数

        Destory()函数是成员函数,它会立即标记 Actor 为销毁状态,并且会从场景中移除该 Actor。它会触发生命周期中的销毁过程,调用 Destroy() 后,Actor 立即进入销毁过程。具体来说,它会开始执行 BeginDestroy()EndDestroy(),并且会销毁 Actor 本身及其所有组件

        Destroyed()函数是虚函数(或者是事件函数),它在 Actor 被销毁后被自动调用。你可以在 Destroyed() 中执行一些销毁后的清理工作,Destroyed() 是一个回调函数,当 Actor 销毁过程完成时(通常是调用 Destroy() 后)会被自动调用。可以重写Destoryed()函数完成Actor销毁后的一些操作

        2.Actor在什么时候会被完全销毁

        1.调用 Destroy() 时,Unreal Engine 不会立即释放 Actor 的内存,而是:

  • 标记 Actor 为待销毁状态 (bPendingKill = true)。
  • 移除 Actor 及其组件,停止它的 Tick 和物理模拟。
  • 触发 EndPlay() 事件(如果 Actor 还在 BeginPlay() 之后)。
  • 触发 Destroyed() 事件,让子类可以在销毁前执行额外逻辑。
  • Actor 从世界中移除,停止 Tick 和物理模拟

         2.调用Destroyed()

  • 允许 Actor 在销毁前执行自定义逻辑

        3.UE中的GC机制

        当前阶段会释放掉Actor的内存。

2.移动Actor

        1.使用MoveComponent()函数,

void ASpawnActor::SetActorLocation()
{UStaticMeshComponent* RootComp = Cast<UStaticMeshComponent>(GetRootComponent());if (RootComp){// 定义你想要移动的偏移量FVector Offset(0.f, 0.f, -10.f);  // 向Z轴移动10单位// 使用MoveComponent来平滑移动组件RootComp->MoveComponent(Offset, FRotator::ZeroRotator, true);//UE_LOG(LogTemp, Warning, TEXT("move ment component"));}
}

        我当前的RootComponent是UStaticMeshComponent类型的,如果使用SetupAttachment附加到原本的RootComponent也可以实现,MoveCompoennt是USceneComponent类中的成员函数,只要继承自这个类都可以调用MoveCompoennt函数

        2.创建一个UMoveMentComponent的组件

        创建C++类ActorMovementComponent继承自MoveMentComponent,在,Actor中定义指针,在Actor的构造中初始化这个指针

UPROPERTY(VisibleAnywhere, Category = "Move");
UActorMovementComponent* ActorMovementComponent;ActorMovementComponent = CreateDefaultSubobject<UActorMovementComponent>(TEXT("Move"));

ActorMovementComponent类中实现(TickComponent是虚函数,重写一份,记得)

void UActorMovementComponent::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction)
{//一定记得要写这行Super::TickComponent(DeltaTime, TickType, ThisTickFunction);// 速度和加速度可以从Actor 中设置,也可以默认// 更新速度,应用加速度FVelocity += Acceleration * DeltaTime;// 限制最大速度if (FVelocity.Size() > MaxSpeed){FVelocity = FVelocity.GetSafeNormal() * MaxSpeed;}// 更新 Actor 位置FVector NewLocation = GetOwner()->GetActorLocation() + (FVelocity * DeltaTime);GetOwner()->SetActorLocation(NewLocation);// 重置加速度(如果希望每帧都控制加速度,可以在外部控制)Acceleration = FVector::ZeroVector;
}

3.制作一个简单的空气墙

        1.创建一个UBoxComponent设置SetVisibility(false)将可视性为变成false,设置碰撞类型

SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics);
SetCollisionResponseToAllChannels(ECR_Block);  // 使得所有物体都会被阻挡
SetCollisionResponseToChannel(ECollisionChannel::ECC_Camera,ECollisionResponse::ECR_Ignore);

        2.创建对应蓝图,拖拽到场景中,调整大小。

http://www.yayakq.cn/news/263018/

相关文章:

  • 怎么样做网站赚钱百度seo网站排名优化
  • 商河网站建设在北京做网站制作一个月多少钱
  • 做网站原创要多少钱文章网站建设
  • jsp网站开发的教材衡水做企业网站的公司
  • 吉林市做网站的科技公司外贸怎么做站外推广
  • 天津公司做网站wordpress 复合筛选
  • 织梦新闻门户网站模板 原创精品wordpress二次开发手册chm
  • 做网站工作辛苦吗学做立体书的网站
  • 黑龙江开放网站备案门户网站建设存在的问题和差距
  • 南阳公司网站制作wordpress标题转英文
  • 黄岩做网站公司电话app模板图片
  • 如何创建网站的快捷方式网站建设具体步骤
  • 网站打开是目录结构图自学网站建设看哪本书
  • 网站建设200南京明辉建设有限公司网站
  • 贵州做农业网站网站快速建设入门教程
  • 个人建设网站如何定位专业seo服务商
  • 重庆网站备案查询系统网站开发前端和后端技术
  • 如何建设小说网站并且盈利东莞人才网58同城招聘
  • 有专业做外贸的网站吗wordpress分类目录在
  • 做标识的网站 知乎奉节集团网站建设
  • 网站开发h5页面制作图片下载什么软件
  • 推广做网站电话制作公司网页多钱
  • 自己建立网站服务器企业传统网站开发实例
  • wordpress能导出网站吗济南网站seo顾问
  • 嘉盛建设集团官方网站关于教做鞋的网站
  • 站长之家seo查询WordPress默认模板做的站
  • 腾讯云做的网站会被拦截么全网微商软件激活码货源
  • 开源网站有哪些wordpress主题开发文档
  • 潍坊企业建站系统网站开发有名的公司
  • 建设网站需要哪些域名青海网站建设费用