大地形初探之信息收集

持续加入一些作者文章

Unity5.6 大规模地形加载

主要讲了如何从外部(world machine)工具导入unity,处理原始数据生成TerrainData

https://blog.csdn.net/fcauto2012/article/details/70767973
https://blog.csdn.net/fcauto2012/article/details/72377565
https://blog.csdn.net/fcauto2012/article/details/77113639

大地形加载

只针对内置Terrain进行切割组合,切割的每块地形上的物件打包:assets、lightmap。lightmpa索引与物件对应写入离线文件。

https://zhuanlan.zhihu.com/p/39786097
https://github.com/huailiang/terrain_proj.git

Unity大密度建筑场景加载解决方案

一些插件介绍

https://blog.csdn.net/jxw167/article/details/82455746

Unity的超大开放世界解决方案

作者讲的是unity内部研发的技术支持套件,接触不到不太明白。

https://bbs.gameres.com/thread_860127_1_1.html

基于Unity3D引擎的大地形加载研究

GDC2105提出的virtual texture

https://github.com/MaxwellGengYF/Unity-MPipeline  
https://www.youtube.com/watch?v=kzthHcbG9IM
https://zhuanlan.zhihu.com/p/85417843  
https://zhuanlan.zhihu.com/p/83831633

Unity大场景数据加载及优化方案

https://blog.csdn.net/jxw167/article/details/81483685

Unity手游大地形开发

2.5D可旋转视角,也介绍了一些插件

他的工作流程如下:

image

对上图我的解读:

自动生成分块:类似于地编模式的全貌预览初始级别,猜测:用高度图创建TerrainData、保存

完整大世界白模制作:猜测:用x张分层图加上x倍4张细节图增强表现地形细节。作者它们用了1张+4张(也有3张)。这步得到一个有基础表现的地形地貌

拆分地形为单个chunk场景:猜测1:应该多人并行开发地形,各自分管,然后再第一步拼装第二步白模这样,所以这步为什么要拆分,一开始没理解这一步。猜测2:不管怎样,每块地形拆分为场景是依据单个chunk的尺寸决定的: 1 to 1,or 1 to more,定好尺寸!

同时编辑多个chunk:多个additiveScene编辑,也就是全貌预览级别的:增加大中小物体,花花草草什么的!

Terrain导出Mesh:导出网格数据,及其它的依赖:大中小物体及其它们的依赖

烘焙并处理贴图信息:用mesh网格地形,烘焙光照并处理光照。

每个chunk场景中内容保存为prefab:没有在文中看到对prefab节点和详细保存的论述。这里我有一个想法:场景保存为prefab在打包时的优化和加载时的优化。打包策略:该prefab它只是一个chunk索引并不应该被打包,否则加载它的时候会加载依赖包会很麻烦(看动态加载),它依赖每个子节点,子节点依赖孙节点,这里把最低节点及其它的依赖合并,然后该包依次向上被依赖。公共包。

动态加载:加载时的优化:LOD思想。上面讲了它不参与打包只做一个索引。原因:该prefab也即是chunk它的最大显示单位是地形mesh网格及其绘制的依赖也是LOD最低级别;它的最小显示单位也是LOD最高级别。举例512米及以外不加载大中小物件;256米及以外不加载中小物件;128米及以外不加载小物件;64米…...

https://zhuanlan.zhihu.com/p/28042244

原文地址:https://www.cnblogs.com/baolong-chen/p/13304849.html