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

郑州网站建设郑州苏州注册公司需要什么条件

郑州网站建设郑州,苏州注册公司需要什么条件,一个刚起步的公司要如何管理,广告公司管理软件《Electric Dreams》项目中提供了一些自定义节点和子图#xff08;文件位置:“/Content/PCG/Assets/PCGCustomNodes”#xff09;#xff0c;这些节点和子图在《Electric Dreams》被广泛使用#xff0c;对于理解《Electric Dreams》非常重要#xff0c;而且它们可以直接移… 《Electric Dreams》项目中提供了一些自定义节点和子图文件位置:“/Content/PCG/Assets/PCGCustomNodes”这些节点和子图在《Electric Dreams》被广泛使用对于理解《Electric Dreams》非常重要而且它们可以直接移植到新的项目中使用。所以写个博客分析一下 文章目录 前导文章Passthrough节点作用Execute with Context PointNormalToColor节点作用Point Loop BodyExecute with Context PointFromPCGVolume节点作用Execute with Context 前导文章 《虚幻引擎程序化资源生成框架PCG 之 UPCGBlueprintElement源码笔记一》 《虚幻引擎程序化资源生成框架PCG 之 UPCGBlueprintElement源码笔记二数据流》 Passthrough节点 作用 数据流的开关 Execute with Context 用Enabled控制是否将从Input输入进来的从Output输出当Enabled为false的时候输出的PCGDataCollection中的Tagged Data数组将会是一个空数组。 PointNormalToColor节点 作用 将Point法线存入Color属性 Point Loop Body 先看一下它的Point Loop Body Point Loop Body的逻辑就是将每一个Point的Up Vector存储在Color属性中然后把修改过的Point输出。 Execute with Context 注释见上图在PointLoopBody后面有一个Initialize from Data节点代码如下 void UPCGSpatialData::InitializeFromData(const UPCGSpatialData* InSource, const UPCGMetadata* InMetadataParentOverride, bool bInheritMetadata, bool bInheritAttributes) {if (InSource TargetActor.IsExplicitlyNull()){TargetActor InSource-TargetActor;}if (!Metadata){Metadata NewObjectUPCGMetadata(this);}if (!bInheritMetadata || InMetadataParentOverride || InSource){const UPCGMetadata* ParentMetadata bInheritMetadata ? (InMetadataParentOverride ? InMetadataParentOverride : (InSource ? InSource-Metadata : nullptr)) : nullptr;Metadata-Initialize(ParentMetadata, bInheritAttributes);}else{UE_LOG(LogPCG, Warning, TEXT(InitializeFromData has both no source and no metadata override));} }Initialize from Data做了两件事 将源Data中的TargetActor赋值给新PCGSpatialData的TargetActor用源Data的metadata初始化新PCGSpatialData的metadata PointFromPCGVolume节点 作用 使用Context中Source的Component或者Component的几何信息(Transform和Bound)构造1个PCGPoint。 Execute with Context 我们先看一下GetComponent和GetOriginalComponent UPCGComponent* UPCGBlueprintHelpers::GetComponent(FPCGContext Context) {return Context.SourceComponent.Get(); }UPCGComponent* UPCGBlueprintHelpers::GetOriginalComponent(FPCGContext Context) {if (Context.SourceComponent.IsValid() CastAPCGPartitionActor(Context.SourceComponent-GetOwner()) CastAPCGPartitionActor(Context.SourceComponent-GetOwner())-GetOriginalComponent(Context.SourceComponent.Get())){return CastAPCGPartitionActor(Context.SourceComponent-GetOwner())-GetOriginalComponent(Context.SourceComponent.Get());}else{return Context.SourceComponent.Get();} }再看看它是如何获取GetActorLocalBoundsPCG的 UPCGBlueprintHelpers::GetActorLocalBoundsPCG FBox UPCGBlueprintHelpers::GetActorLocalBoundsPCG(AActor* InActor, bool bIgnorePCGCreatedComponents) {return PCGHelpers::GetActorLocalBounds(InActor, bIgnorePCGCreatedComponents); }PCGHelpers::GetActorLocalBounds FBox GetActorLocalBounds(const AActor* InActor, bool bIgnorePCGCreatedComponents){// Specialized version of CalculateComponentsBoundingBoxInLocalScape that skips over PCG generated components// This is to ensure stable bounds and no timing issues (cleared ISMs, etc.)FBox Box(EForceInit::ForceInit);const bool bNonColliding true;const bool bIncludeFromChildActors true;if (InActor){const FTransform ActorToWorld InActor-GetTransform();const FTransform WorldToActor ActorToWorld.Inverse();InActor-ForEachComponentUPrimitiveComponent(bIncludeFromChildActors, [bNonColliding, bIgnorePCGCreatedComponents, WorldToActor, Box](const UPrimitiveComponent* InPrimComp){if ((bNonColliding || InPrimComp-IsCollisionEnabled()) (!bIgnorePCGCreatedComponents || !InPrimComp-ComponentTags.Contains(DefaultPCGTag))){const FTransform ComponentToActor InPrimComp-GetComponentTransform() * WorldToActor;Box InPrimComp-CalcBounds(ComponentToActor).GetBox();}});}else{UE_LOG(LogPCG, Error, TEXT(Actor is invalid in GetActorLocalBounds));}return Box;}所谓LocalBounds就是把所属Actor的所有PrimitiveComponent叠加起来获得最大的FBox
http://www.dnsts.com.cn/news/13772.html

相关文章:

  • 演示动画制作免费网站ui设计是怎么实现的
  • 浦东网站开发培训系统开发合同
  • 建设银行网站怎么登陆不了了wordpress的媒体选项
  • 微信网站开发详解建设网站后如何上线
  • 库尔勒网站建设价格平面设计好的网站
  • 怎么给自己的公司建立网站推广发布任务平台app下载
  • 免费看的logo图片网站seo优化步骤
  • 馆陶县网站重庆建站培训
  • 网站建设如何推广业务阿里邮箱 网站开发
  • vs 团队网站开发社保代缴网站开发
  • 做菠菜网站代理犯法吗关于旅游电子商务网站建设论文
  • 金属质感 网站网站推广销售腾讯会员被告怎么办
  • 做视频网站把视频放在哪里找帝国cms免费模板
  • 杭州行业网站建设公司西安网站建设费用
  • 阿里巴巴的网站二维码怎么做游戏试玩平台代理
  • 重庆网站品牌推广经三路专业做网站
  • 安徽设计网站建设规划案例网站
  • 建站外贸网站建设wordpress 底部登录
  • 网站建设中最重要的环节附近的装修公司地点
  • 有哪些教育网站做的比较好公司网页怎么设计
  • 长沙网页设计培训机构seo在线优化系统
  • 优秀网站首页免费大数据查询
  • 深圳入户申请网站官网学勇建站
  • 深圳建设工程交易服务网老网站品牌官方网站建设需要什么
  • wordpress网站安装插件高端设计网站
  • 所有网站的分辨率网站图片要求
  • 免费下载代码项目的网站旅行网站排名前十名
  • 太原企业网站seo软件开发公司网站模板
  • 禅城网站开发规划网站的思路
  • 昆明建设招聘信息网站企业邮箱网易登录入口