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

找网站开发公司需要注意那几点公司网站做百度推广需要交费吗

找网站开发公司需要注意那几点,公司网站做百度推广需要交费吗,企业网站建设的一般要素包括什么,百度快照 查看指定网站本文目标 分析三国:谋定天下的场景渲染技术,提高技术力。主体思路用三谋的,具体实现可能不会完全用和三谋一样的方案集赞,如果点赞收藏超过512,我给大家伙手搓一个三谋场景实现 分析方法 三谋官方技术分享RenderDoc…

本文目标

  • 分析三国:谋定天下的场景渲染技术,提高技术力。主体思路用三谋的,具体实现可能不会完全用和三谋一样的方案
  • 集赞,如果点赞收藏超过512,我给大家伙手搓一个三谋场景实现

分析方法

  • 三谋官方技术分享
  • RenderDoc截帧
  • 我寻思大法

使用RenderDoc截帧分析地形实现方法

结论

  • RenderDoc可以连上mumu模拟器,连不上雷电模拟器
  • 地形一块一块绘制,没有合批
  • 三谋截帧中没有看到compute shader的代码
  • 三谋使用渲染着色器完成地形表面贴图烘焙、编码,Culling在CPU中完成
  • 三谋的场景渲染技术在小程序下也可以使用

RenderDoc调试compute shader

  • https://renderdoc.org/docs/how/how_debug_shader.html#debugging-a-compute-thread

渲染着色器中structuredbuffer是否存在?

不存在,根据RenderDoc截帧shader代码,看到使用的uniform data,所以支持opengles3.0

glsl知识

UBO

  • Uniform Buffer Object
  • UBO通过GL_UNIFORM_BUFFER缓冲类型绑定,常用于只读类型的数据
  • 需要ES 3.0,大部分设备都支持
  • 可以认为ES 3.0 约等于 WebGL2,所以微信小程序也能跑

Uniform Buffer Objects

  • 小容量的结构体数组,一般16k以内
  • 需 ES 3.1+

SSBO

  • Shader Storage Buffer Object,大容量的结构体数组
  • Mali平台使用SSBO会导致early-Z失效
  • 需 ES 3.1+

三谋的一些技术数据

  • 7级LOD,0到6,每加一层,尺寸翻2倍,面积翻4倍
  • LOD6常驻,最小的一块地3.2x3.2平米,LOD6面积204.8x204.8
  • 全图1200x1200,1500x1500个格子
  • 每一级 LOD 都会加载距离视野中间点最近的 5×5 个地块进内存,一共是 25×7,175 个地块

三谋场景渲染优化点

低视角下内存优化

分析
  • 从LOD6到LOD0之间的所有资源都会加载,但只显示最低一层的LOD,并且是LOD6到LOD0加载,最终视野内显示的都是LOD0的资源
  • 一共36个LOD6的分块,同一时间最多同时显示4块LOD6,所以三谋的内存压力蛮大
优化
  • 不加载子LOD的全部分块资源,只加载视野内的地块资源
  • LODn的当前视野内child chunk加载完毕后就算加载完成

实现三谋地形方案

思路

  • 结构:分块,LOD分父子级
  • 资源:Mesh LOD + RVT + RVT自定义编码
  • 显示逻辑:LOD0常驻内存,多个LOD同时显示,但只会和差一级的LOD相邻,LOD之间互相不覆盖

编辑器下处理地形

主流程

  • 美术制作地形
  • 生成模型
  • 生成模型LOD:减面后切割地形

制作地形

unity的terrain或者外部软件

生成模型

地形转模型:T4M(terrain for model)

生成LOD chunk资源

  • 减面后切割地形,要求地形尺寸是3.2m的幂次,如果不是则需要输出LOD chunk资源配置文件,事情会变得复杂点,不过可以用来改造老项目
    • LOD模型 = 减面(生成的地形模型, LOD)
    • LOD的分块模型 = 切割(每一层LOD模型)
    • LODn贴图 = 降分辨率(合并分块(LODn-1))
  • 对不是地形的物件减面
减面工具
Simplygon:微软出品
https://github.com/huailiang/lodunity官方
https://github.com/Whinarn/UnityMeshSimplifier生成LOD资源
https://github.com/Unity-Technologies/AutoLOD
切割模型工具
自己写代码:https://www.bilibili.com/opus/693401957195317251插件:eazy-slicer
切割地形
根据制作方案切,以unity terrain为例自己写切割脚本
https://blog.csdn.net/yang973125061/article/details/135480007Unity Terrain Tools自带的切割工具TerrainSlicer:可能有缝,需要额外处理接缝,对齐相邻地形即可
https://assetstore.unity.com/packages/tools/terrain/terrain-slicer-180920?srsltid=AfmBOopOV1fHjgjR6BN3eTZ-UCgFOvWjQtQBuKWugWKBQxgKV28xbioQTerrain Split and Merge Utility:无缝
https://assetstore.unity.com/packages/tools/utilities/terrain-split-and-merge-utility-209845?locale=zh-CN&srsltid=AfmBOoo3svPC8fi9yF29XKuh7CcBw2sa7ceZp_eaecjt7VGzuyWzUvic

资源构成

地形LOD chunk Mesh,材质,贴图,shader,RVT
物件LOD Mesh,材质

绘制

地形

烘焙
使用渲染着色器烘焙Albedo + Normal
可以使用共265个图层,但单像素只支持4层混合地形着色器
Albedo + Normal + Roughness
RG:Noraml,B:Roughness
简化: Albedo + Normal处理接缝
三谋的接缝是因为加载规则,LODn和LODn+2相邻,贴图精度不一致导致问题,只要让lodn+2采样高精度贴图即可

其它物件

绘制:路、山体、贴花等
采样地形RT把颜色叠加到物体上使用AlphaBlend做融合过渡:根据世界坐标计算归属LOD、chunk,查询Albedo

参考资料

  • 三谋分享:https://developer.unity.cn/projects/671f499dedbc2a001e2ddc77
  • RenderDoc连mumu模拟器:https://zhuanlan.zhihu.com/p/664975271
  • https://renderdoc.org/docs/how/how_debug_shader.html#debugging-a-compute-thread
  • 减面:https://zhuanlan.zhihu.com/p/360524404
http://www.dtcms.com/a/530981.html

相关文章:

  • 做兼职推荐网站购物网站前端浮动特效怎么做
  • 做网站前端难吗电商详情页素材
  • 江西南昌建设厅网站sqlite3做网站数据库
  • ui界面设计图南阳本地网络推广优化公司
  • 池州市网站建设优化网店交易平台
  • 优秀网站网页设计分析如何建站网站
  • 手机上网网站建设用帝国cms做视频网站
  • 灵璧县住房和城乡建设局网站网站的html代码在哪
  • 清镇网站建设wordpress不同分类模板
  • 宁夏成城建设集团网站wordpress后台乱码
  • 西部数码 网站管理wordpress调用所有标签
  • 沈阳沈河区网站建设wordpress自动标签页
  • 房产网站建设方案天津做网络推广公司有哪些
  • 可以免费搭建网站吗潍坊网站建设top
  • 东阳海天建设集团网站wordpress媒体库文件
  • 营口建设工程信息网站中国铁建平台登录
  • 从化定制型网站建设虚拟主机wordpress
  • 早教网站建设方案电商网站的功能
  • 做外贸的网站需要什么ui设计是什么职位
  • 手机网站趋势长沙网站运营外包公司
  • 个人备案网站做企业网可以吗建设网站的费用调研
  • 做网站加入广告联盟手机网站开发外文文献
  • php网站授权app软件程序开发
  • 网站系统评测要怎么做呢怎么搭建一个网站教程
  • 二百块做网站扁平化色块风格的网站
  • 手机网站适应屏幕16素材网
  • 我和你99谁做的网站网站建设流程的步骤
  • 网站 对比怎么用wordpress建立本地网站
  • 校园网站源码php海洋生态文明建设的网站名
  • 如何做公司网站空间免认证域名