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

移动网站怎么做的网页版传奇服务端

移动网站怎么做的,网页版传奇服务端,微商怎么引流被加精准粉,无备案网站加速一.总体思路: 如果实时加载UE模型,需要先将之前的模型删除。再生成出来,放在根节点,保持相对位置,相对的俯仰角。 void AAirForce::LoadWeapon(int ID, int Type, double X, double Y, double Z) {//m_weaponMap.Emp…

一.总体思路:

如果实时加载UE模型,需要先将之前的模型删除。再生成出来,放在根节点,保持相对位置,相对的俯仰角。

void AAirForce::LoadWeapon(int ID, int Type, double X, double Y, double Z)
{//m_weaponMap.Empty();//生成工厂if (m_weaponMap.Contains(ID)){AActorBase* ab =Cast<AActorBase>(*m_weaponMap.Find(ID));if (ab != nullptr && ab->IsValidLowLevel() && !ab->IsPendingKill()){ab->Destroy();}m_weaponMap.Remove(ID);}ATargetFactory* TargetFactory = GetWorld()->SpawnActor<ATargetFactory>();//FString tmpWeaponPath = UKismetSystemLibrary::GetProjectDirectory() + "Plugins/HMSCore/Saved/Config/" + "AG_300M" + ".Json";FString tmpWeaponPath = UKismetSystemLibrary::GetProjectDirectory() + "Plugins/HMSCore/Saved/Config/" + m_WeaponType[Type] + ".Json";AActorBase* TargetActor = TargetFactory->TargetSpawn(ETargetType::WEAPON_TYPE, tmpWeaponPath);TargetActor->SetID(ID);TargetActor->AttachToComponent(Cast<USceneComponent>(RootComponent), FAttachmentTransformRules::KeepRelativeTransform);TargetActor->SetActorRelativeLocation(FVector(X, Y, Z));//UE_LOG(LogTemp, Warning, TEXT("%f, %f , %f"), it.PositionX, it.PositionY, it.PositionZ);TargetActor->SetActorRelativeRotation(FRotator(0, 0, 0));TargetActor->SetScale(FVector(1, 1, 1));m_weaponMap.Add(ID, TargetActor);TargetFactory->Destroyed; 
}

二.管理Map

TMap<int, UObject*>	m_weaponMap;	//组件字典

首先看武器的Map里是否,包含之前加载的武器模型。如果包含这个ID的武器。找到并拿到它,销毁。然后在Map里移除这个指针。

	if (m_weaponMap.Contains(ID)){AActorBase* ab =Cast<AActorBase>(*m_weaponMap.Find(ID));if (ab != nullptr && ab->IsValidLowLevel() && !ab->IsPendingKill()){ab->Destroy();}m_weaponMap.Remove(ID);}

重新生成,m_WeaponType在构造时初始化,工厂然后通过,工厂生成武器。

	TMap<int32, FString> m_WeaponType;  //武器字典2321F
ATargetFactory* TargetFactory = GetWorld()->SpawnActor<ATargetFactory>();
//FString tmpWeaponPath = UKismetSystemLibrary::GetProjectDirectory() + "Plugins/HMSCore/Saved/Config/" + "AG_300M" + ".Json";
FString tmpWeaponPath = UKismetSystemLibrary::GetProjectDirectory() + "Plugins/HMSCore/Saved/Config/" + m_WeaponType[Type] + ".Json";
AActorBase* TargetActor = TargetFactory->TargetSpawn(ETargetType::WEAPON_TYPE, tmpWeaponPath);

武器生成后,就可以了,然后销毁工厂。

设置ID,让它们绑定到组件上,将根组件变为USceneComponet组件,就有位置信息。

AttachToComponent(USeneComponnet,FAttachmentTransformRules::KeepRelativeTransform).

让后设置相对于根节点的相对位置。

TargetActor->SetID(ID);TargetActor->AttachToComponent(Cast<USceneComponent>(RootComponent), FAttachmentTransformRules::KeepRelativeTransform);TargetActor->SetActorRelativeLocation(FVector(X, Y, Z));//UE_LOG(LogTemp, Warning, TEXT("%f, %f , %f"), it.PositionX, it.PositionY, it.PositionZ);TargetActor->SetActorRelativeRotation(FRotator(0, 0, 0));TargetActor->SetScale(FVector(1, 1, 1));m_weaponMap.Add(ID, TargetActor);TargetFactory->Destroyed; 

如果想要不在跟组件上,就使用如下代码。

			int WeaponID = FCString::Atoi(*it.NodeID);TargetActor->SetID(WeaponID);if (m_childComponentMap.Contains(it.ParentName))TargetActor->AttachToComponent(Cast<USceneComponent>(m_childComponentMap[it.ParentName]), FAttachmentTransformRules::KeepRelativeTransform);elseTargetActor->AttachToComponent(Cast<USceneComponent>(RootComponent), FAttachmentTransformRules::KeepRelativeTransform);TargetActor->SetActorRelativeLocation(FVector(it.PositionX, it.PositionY, it.PositionZ));UE_LOG(LogTemp, Warning, TEXT("%f, %f , %f"), it.PositionX, it.PositionY, it.PositionZ);TargetActor->SetActorRelativeRotation(FRotator(it.RotationPitch, it.RotationYaw, it.RotationRoll));TargetActor->SetScale(FVector(it.ScaleX, it.ScaleY, it.ScaleZ));m_weaponMap.Add(WeaponID, TargetActor);

删除map,可以用for(auto& it:Map).逐个Destroy。再Reset重置。

void HMSTargetManager::RemoveTarget(int targetID)
{AActorBase* ab = *m_TargetMap.Find(targetID);if (ab != nullptr){ab->Destroy();}m_TargetMap.Remove(targetID);
}void HMSTargetManager::RemoveAllTarget()
{for (auto& it:m_TargetMap){AActorBase* ab = it.Value;if (ab != nullptr){ab->Destroy();}}m_TargetMap.Reset();
}

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

相关文章:

  • 网站怎么做引流建设网站的功能及目的是什么意思
  • 做网站 什么语言好一二三四影视在线观看免费视频
  • 网站开发方案书怎样建设个人游戏网站
  • 奇点网站建设广州开发网站建设
  • 佛山网站建设服务商免费网站空间可访问
  • 正规网站优化推广软件开发属于哪个专业
  • 网站二级目录打不开西安网站建设联系方式
  • 深圳建立网站公司网站华为荣耀商城
  • 如何变更网站备案信息查询凡科小程序免费制作平台
  • 外贸网站建设双语网站建设网站建设流程和费用
  • 综合类网站怎么做单页导航网站
  • 做的好的中医网站找深圳做网站的公司
  • 网站的链接结构怎么做app推广平台接单渠道
  • 微企免费做网站网站seo平台
  • 哔哩哔哩网站建设分析免费做网络推广
  • 优秀网站设计要素wamp 配置wordpress
  • 唐山网站建设公司哪家好企业信息查询app哪个最好
  • 做网站服务器收费吗wordpress添加支付教程
  • 和网站用户体验相关的文章网站制作熊猫建站
  • 哪些网站权重高厦门百度关键词推广
  • 网站建设改手机号东莞网站托管
  • 点胶机 东莞网站建设wordpress 雪花插件
  • 个人网站备注模板做非法网站判刑多少年
  • 网站建设的提升修改wordpress插件
  • 自己免费做网站的流程建设校园网站的意义
  • 企业网站开发目的和意义注册安全工程师通过率
  • 网站制作文案杭州关于网站的设计和制作
  • 烟台哪里做网站好wordpress后台 菜单
  • 100网站建设网站建设发布ps科技感
  • 3g开发网站深圳网站建设行业新闻