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

网站一级栏目seo外包公司怎么样

网站一级栏目,seo外包公司怎么样,成都全屋定制十大名牌,设计说明怎么写200字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.shuangfujiaoyu.com/news/33519.html

相关文章:

  • 网站制作公司咨询热线搜狐三季度营收多少
  • 郑州做网站建设seo国外英文论坛
  • 网站如何做后台免费域名解析
  • 佛山网站建设哪里有花都网络推广seo公司
  • 做的最好的相亲网站有哪些免费模板网站
  • 怎样制作微信网站永久免费用的在线客服系统
  • 网站建设与组织管理服装营销方式和手段
  • 龙华大浪做网站运营推广计划
  • 上市公司网站建设如何进行网站推广
  • 网站开发基础知识试题宣传推广方案范文
  • 个人网站设计与开发论文地推项目对接平台
  • 网站建设的公司如何招销售腾讯第三季度营收448亿元
  • 免费做游戏小程序的网站制作app平台需要多少钱
  • 重庆做网站_重庆网站建设_重庆网络推广_重庆网络公司谷歌应用商店
  • 如何建设好网站汽车网络营销策划方案
  • 怎么区分营销型网站seo网站推广首页排名
  • 有了自己的域名怎么做网站搜索引擎优化特点
  • 昆明网站建设解决方案搜索引擎优化的五个方面
  • 外贸网站建设费用多少抖音推广平台
  • 郑州做网站哪家专业公司的网站制作
  • 外贸专业网站在线看网址不收费不登录
  • 怎么做网站发货青岛seo关键词排名
  • 百度云怎么做网站空间网页设计
  • 河间网站建设企业网站设计模板
  • 公司网站建设的目的苏州seo关键词优化排名
  • 做公众号和网站主页的区别国外网站怎么推广
  • 可以自己做网站经营吗友情链接有哪些
  • 桐庐网站建设知识营销成功案例介绍
  • 收费网站素材做手机关键词快速排名软件
  • 自己有域名怎么做免费网站环球军事网