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

网站开发需要人员泰州网站制作报价

网站开发需要人员,泰州网站制作报价,企业门户网站实现,潜江资讯网手机版导航数据的构建流程导航数据的收集导航系统中绑定了Actor、Component注册完成以及取消时的委托#xff0c;通过这些委托把数据及时更新到导航系统的八叉树结构中导航系统的辅助结构DefaultOctreeController、DefaultDirtyAreasController分别承担了空间数据查询和置脏区域重新…导航数据的构建流程导航数据的收集导航系统中绑定了Actor、Component注册完成以及取消时的委托通过这些委托把数据及时更新到导航系统的八叉树结构中导航系统的辅助结构DefaultOctreeController、DefaultDirtyAreasController分别承担了空间数据查询和置脏区域重新构建的任务后者会把置脏数据最终投递到导航数据生成器的待处理结构里最终执行生成操作开启构建操作静态构建开启导航数据构建有几种情况开启了动态导航、指令集开启、编辑器模式下的自动构建开启、调整导航偏移导航失效造成的重新构建。构建执行流程大致如下当开启导航构建后导航系统首先重置掉待处理区域变更请求以及控制置脏数据的管理器然后迭代所有的ARecastNavMesh执行同名构建函数RebuildAllARecastNavMesh首先会检查是否有正在构建操作如果存在操作则取消并重置构建新的导航数据生成器实例并执行初始化在初始化中进行有效区域边界更新并置脏所有的边界把边界数据投递到待处理结构中然后通过执行构建生成器的EnsureBuildCompletion函数确认所有的构建工作完成实质上是把所有的待处理结构打包成异步或者同步执行的任务来处理其中值得提及的是收集碰撞数据的方法导航系统的辅助结构DefaultOctreeController中的NavOctree与DirtyBound做交叉检测符合的则做数据收集使用瓦片生成器结构构建瓦片数据瓦片导航数据生成完成以后会把生成的数据添加到ARecastNavMesh数据真正的持有者DetourNavMeshdtNavMesh中动态导航数据与静态生成区别动态导航模式下导航系统中挂载的Actor、Component注册取消委托受场景变更的影响会不断的更新进而推动整个构建导航逻辑的执行而且在动态模式下这些具有碰撞数据的实例会及时导出碰撞数据。生成瓦片数据的逻辑当FRecastTileGeneratorTask异步执行或者同步执行一个构建的任务时FRecastTileGenerator::DoWork的调用就开始了FRecastTileGenerator结构封装了生成单个瓦片的功能逻辑封装Recast导航数据生成流程DoWork的执行流程如下完成几何模型碰撞数据收集和缓存其中包括顶点数据、索引数据、可行走斜坡结构数据、修改器、导航连接、瓦片原生几何数据等构建高度场域数据rcHeightfield计算光栅化遮罩对导航Modifier进行处理光栅化或者说体素化三角形面其中包括几何Transform数据从UE坐标到Recast的坐标转换标记可行走区域体素边界过滤防止边界外生成体素数据通过InclusionBounds边界框判定ApplyVoxelFilterRecast的生成过滤WalkableClimb、walkableHeight生成紧缩高度场域CompactHeightField根据walkableRadius剔除边缘rcErodeWalkableAndLowAreas根据选择的算法生成区域数据rcBuildDistanceField生成导航数据保存到瓦片生成器中回收脚手架结构内存导航数据的查询导航系统封装的查询接口K2_ProjectPointToNavigation 根据传入的点获取在NavMesh上的投影位置K2_GetRandomReachablePointInRadius 获取指定半径内随机的一个导航可达点位K2_GetRandomLocationInNavigableRadius 在给定的原点半径内的导航空间中生成一个随机位置GetPathCost 获取路径消耗不推荐使用GetPathLength 获取路径长度 不推荐使用FindPathToLocationSynchronously 同步地获取两点间的导航路径FindPathToActorSynchronously 同步地获取到达指定Actor的导航路径以K2_GetRandomReachablePointInRadius为例说明导航数据查询路径调用核心ARecastNavMesh的GetRandomPointInNavigableRadius函数ARecastNavMesh很多时候是空壳逻辑它会把逻辑转交给FPImplRecastNavMeshFPImplRecastNavMesh结构的ProjectPointToNavMesh函数会构建出一个dtNavMeshQuery查询结构来完成Ploy2D的相关查询导航系统的配置参数说明属性名字属性描述DefaultAgentName默认的导航代理名字用于适配、查找默认的导航配置、导航数据,为空的情况下默认会把代理配置中的第一项作为默认配置CrowdManagerClass定义导航系统使用的自定义CrowdManager基类目前不需要修改bAutoCreateNavigationData是否自动创建导航数据通常情况下会在地图加载完成时、导航体积发生变更执行操作bSpawnNavDataInNavBoundsLevel是否允许在子关卡中生成导航数据否则在持久关卡中创建bAllowClientSideNavigation是否允许客户端开启导航默认客户端导航模式是关闭的关闭的情况下整个导航系统不会创建bShouldDiscardSubLevelNavData是否要丢弃子关卡中的导航数据该操作在地图加载完成后通过委托回调进行检测完成。如果是勾选状态则整个子关卡中的RecastNavMesh会被销毁占用的内存会被释放bTickWhilePaused当世界关卡处于Paused状态时是否要停止导航系统的TickbInitialBuildingLocked在导航系统初始化完成或者导航系统重新加载完成的时候是否锁定导航系统的构建如果为true只有在释放锁定标记后才能进行导航数据构建bSkipAgentHeightCheckWhenPickingNavData在通过NavConfigProps进行导航数据匹配时是否忽略对代理高度的检查DataGatheringMode影响导航数据收集注释说设置在构建碰撞信息时应如何收集导航数据。它的实质是在世界场景下Actor中的组件注册完成后导航系统中的OnComponentRegistered会被调用进而执行RegisterComponentToNavOctree最终会执行到AddElementToNavOctree该函数会调用FNavigationOctree::AddNode函数这个函数是最终的调用它会执行ComponentExportDelegate委托的绑定而其中绑定的是几何导出的逻辑处理FRecastNavMeshGenerator::ExportComponentGeometryGeometryExportVertexCountWarningThreshold当正在执行导出的数据结构中定点数据容量大于此值时会产生日记记录可参见ValidateGeometryExportDirtyAreaWarningSizeThreshold当该值为正值向置脏控制器中添加的置脏区域2D大于该值时产生警告日志GatheringNavModifiersTimeLimitWarning如果 GatheringNavModifiersWarningLimitTime 为正数如果调用 GetNavigationData 所花费的时间超过 GatheringNavModifiersWarningLimitTime它将打印警告bGenerateNavigationOnlyAroundNavigationInvokers是否仅在指定的目标对象周围生成导航数据,一旦开启全图可导航,依赖于导航动态生成,依赖于NavigationInvokerComponentActiveTilesUpdateInterval激活的Tiles更新间隔依赖于bGenerateNavigationOnlyAroundNavigationInvokersSupportedAgents支持的代理导航配置SupportedAgentsMask导航系统对支持的代理控制导航数据查询规则通过导航配置FNavAgentProperties结构查询导航数据实例时会发现该结构的IsEquivalent函数起着至关重要的作用而该函数中起决定因素的值是AgentRadius、AgentHeight当这两个参数各自的差值小于默认精度5.f则认为这两个导航代理配置是等价的因此有以下匹配规则AgentToNavDataMap中通过FNavAgentProperties类型的Key查询到指定的NavData返回如果无法查询到最佳匹配项则按照最优匹配原则获取指定导航数据配置查询AgentToNavDataMap返回所有NavData实例都会在AgentToNavDataMap、NavDataSet中注册WP情况下对导航的影响WP下多了对区域导航数据的流入流出支持它的核心实质是根据导航数据构建支持流入的Actor实例ANavigationDataChunkActor该实例中保存了生成的导航数据URecastNavMeshDataChunkTArray Tiles。当该Actor实例被装载时携带的导航数据会替换掉DetourNavMesh中的Tile数据卸载的时候又从DetourNavMesh移除。Navigation Mesh参数说明属性名字属性描述CellSize水平方向上体素尺寸tiles大小应设置为每侧32到128个cells之间。这将在运行时重建tiles时提供最佳性能CellHeight垂直方向上体素尺寸AgentRadius代理半径AgentHeight代理高度AgentMaxSlope代理可以移动的最大斜率角度AgentMaxStepHeightAgent的可攀爬高度MinRegionArea允许形成孤岛区域的最小单元数MergeRegionSize分水岭算法中跨度计数小于此值的任何区域都将与更大的区域合并MaxSimplificationError细节网格表面偏离高度场的最大距离TileSizeUU单个tile的大小TilePoolSizeNavMesh可以容纳的最大图块数bFixedTilePoolSize如果为真NavMesh将为Tile分配固定大小的容量开启以支持流式传输MaxSimultaneousTileGenerationJobsCount设置一次运行的异步瓦片生成器的数量限制也用于一些同步任务TileNumberHardLimit导航网格图块数量的绝对硬性限制。在使用带有navmesh的大地图进行修改时要非常非常小心。一个空的tile需要176个字节并且空的tile是预先分配的DefaultMaxSearchNodes指定执行导航查询时使用的A*节点的默认上限限制DefaultMaxHierarchicalSearchNodes指定执行分层导航查询时使用的A*节点的默认上限限制RegionChunkSplits用于区域分区的块分割数沿单轴仅用于ChunkyMonotone算法LayerChunkSplits用于区域分区的层分割数沿单轴仅用于ChunkyMonotone算法bSortNavigationAreasByCost控制导航区域在导航网格生成期间应用到导航网格之前是否按成本排序。 当区域重叠时这是相关的我们也希望区域成本表达区域相关性。 将其设置为 true 将导致区域按成本排序但它也会增加导航网格生成成本一点bIsWorldPartitioned是否是world partitioned mapbPerformVoxelFiltering是否执行体素过滤bMarkLowHeightAreas标记上方自由高度不足的区域而不是将其切掉仅适用于使用替换模式的区域修改器bUseExtraTopCellWhenMarkingAreas应用于导航网格时将区域导航修改器的边界顶部扩展一个单元格高度bFilterLowSpanSequences如果跨度上方的间隙小于指定高度则将可步行跨度标记为不可步行。bFilterLowSpanFromTileCache如果设置只有具有相应区域修改器的低高度跨度将存储在图块缓存中减少内存如果没有完整的图块重建就无法修改bDoFullyAsyncNavDataGatheringnavmesh 数据收集永远不会发生在游戏线程上只会在后台线程上完成导航数据的内存占用NavOctree memory 导航八叉树的空间占用ARecastNavMesh memory : DetourNavMesh中的所有瓦片结构内存总和 激活路径分配的内存ActivePaths 支持的区域结构分配的内存SupportedAreas 查询过滤器分配的内存QueryFilters 区域映射Map分配的内存AreaClassToIdMap 导航生成器内存占用待处理任务数据结构大小 生成器结构本身大小 运行时任务结构大小 瓦片构建器分配的内存总和导航数据生成相关验证多代理下的导航数据验证支持的代理越多产生的数据容量越大而且不同的代理配置生成的数据容量也是不同的
http://www.w-s-a.com/news/124449/

相关文章:

  • 郑州移动端网站建设如何在网上推广自己的公司
  • 企业建站源码系统破解网站后台
  • 石家庄网站开发报价企业注册资本代表什么
  • 招商平台公司宁波seo教程推广平台
  • 哪些网站可以做房产推广垂直门户网站都有什么
  • 不得不知道的网站金石项目管理软件
  • 怎么恢复网站数据库网站开发作业代做
  • 哪里建设网站最好用中国第五冶金建设公司医院网站
  • 雄安网建 网站建设订餐网站建设
  • 广州视频网站建站公司网站 体系
  • 青浦门户网站网站推广烟台公司电话
  • 湖北荆门建设银行网站wordpress购物模板下载
  • 学ui+wordpress模板北京推广优化
  • 建分类网站得花多少钱深圳设计网站开发
  • 网站集群建设和网站集约化百度商桥怎么绑定网站
  • 青岛模板网站建设价格网络品牌网站建设
  • 网站建设的几大要素网站的做网站的公司
  • 怎么登陆自己的公司网站垂直电商网站建设
  • 温州微网站制作哪里有许昌网站建设哪家最好
  • 中国中小企业网站官网网页制作工具按其制作方式分 可以分为
  • 做资源下载网站违法吗河南企业做网站
  • 网站开发总体功能设计网站建设 北京昌平
  • 辽宁省高等级公路建设局网站书画院网站建设方案
  • 本地生活网站 源码重庆本地网站有哪些
  • 企业网站域名服务器国外html响应式网站
  • 东莞网站建设策划企业网站推广策划方法
  • 网站的图片怎么制作WordPress交互式网站
  • pc网站增加手机站什么专业学网页设计制作
  • 婚庆公司网站模板wordpress用什么框架
  • 高校网站建设的时效性长沙市网站建设