VG技术下,美术在资源制作时的规范
- 作者:admin
- /
- 时间:6小时前
- /
- 浏览:25 次
- /
- 分类:厚积薄发
这是第441篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。
UWA社区主页:community.uwa4d.com
UWA QQ群:793972859
本期精选了UWA DAY 2025部分议题的相关问答分享给大家。更多关于大会议题的提问可转至UWA问答继续交流。
https://answer.uwa4d.com/question/686b88da3d306f3e9d594f0b
大世界场景工业化:程序化生成x模块化资产x渲染优化工作流
Q:VG技术下,美术在资源制作时,对于场景、机甲等模型面片数的控制会是什么样的规范呢?有多大的自由度?
A:在接入VG后,我们的美术资源面数规范给了150%的上调空间,项目中的Shader复杂度过高,如果使用简单Shader,面数的上调空间应该有200%。 实际应用上美术资源并没有做太多的突破,相对比较保守,对于一些较高面数的模型,比如大型山体、机甲的容忍度变得更高;对于面数较高的机甲、人形角色还是有一定的控制。
目前场景大型模型的三角形面数标准为15000,中型模型按类别3000或5000,大型山石标准为30000,中型崖壁标准10000,树6000,灌木3000。 机甲由多个部件组成,一整套机甲+武装的标准是不超过20万。 人形角色的脸部12000,身体60000,头发20000。
感谢何文雅老师提供了回答
《大世界场景工业化:程序化生成x模块化资产x渲染优化工作流》课程链接直达:
https://edu.uwa4d.com/course-intro/1/634
UE-DS的长跑挑战 - 长生命周期大世界的性能治理探索之路
Q1:FindFloor函数放到多线程里,是不是一个线程用于模拟有阻挡的情况下角色移动后的最终位置?一个线程直接使用无阻挡情况的位移?如果遇到真的无阻挡,FindFloor在其他线程的结果就是一致,如果不一致,即使用抬高,位移下落的FindFloor结果? 不知这样理解对不对?
A:这里直接在TickComp里使用当前速度预测前方抬高后终点,然后创建Tick任务分发给AnyThread运行然后回调回来之后再让MoveComp在同一个TickGroup里执行真正的移动即可。移动抬高那步只是处理斜坡或者可跨越地板的操作,水平速度是不变的,所以即使被抬高向前水平向终点是确定的。只有一种情况对终点预测失败就是完全被挡住抬了可跨越高度也无法向前,被停在位移中途,因为AI会用Nav寻路所以概率不高。如果要更精准可以直接在异步任务里抬高做一次Sweep检测看看停在那里确定精确位置。
Q2:GameThread里的MovementTick会开启两个(或者多个)Findfloor,findfloor是否可以理解成检索最近的可着落点?如果是我理解的“TickComp里使用当前速度预测前方抬高后终点”,那么tickcomp里已经有findfloor了,为啥还有多线程去find?
A:直接用速度算水平坐标地面在什么位置,但是FindFloor里是物理查询,需要查那个位置的平面和法线和具体的Z轴坐标的。是把FindFloor从引擎提前,把物理查询多线程化。
感谢赵珂老师提供了回答
《UE-DS的长跑挑战 - 长生命周期大世界的性能治理探索之路》课程链接直达:
https://edu.uwa4d.com/course-intro/1/636
《归环》项目研发效率提升之路
Q:项目开发过程中,哪些点会因为PC和移动端过大的差异而需要设计不同的流程、框架或者方案?哪些是值得在项目初期就需要提前考虑好的?
A:核心原则:能够统一设计的尽量统一设计,这样便于资源的生产和代码的维护。 可能存在差异的点:
- 因为品质需求不同而需要单独制作的美术资源,比如场景物件可能会有不同的lod层级,不同的层级可能会在不同平台使用;
- 渲染管线,PC和移动平台的渲染管线不同,需要定制优化;
- 贴图压缩格式,这个即便是移动平台i OS和安卓本身都不同;
- 资产性能规范;
- input差异,PC是键鼠、移动端是触屏,主机平台是手柄,这里要做好抽象和设计;
- 各种后处理效果。 其他可能还有一些琐碎的细节。
在这些所有区别中,首先要确定的是效果以移动端为主还是PC为主,然后制定对应的资产规范,移动端为主就可能会牺牲一些PC效果,PC为主会需要牺牲一些移动端下沉适配机型。然后基于目标制定美术制作规范和引擎渲染的管线以及各种Feature,很多Feature在PC上和移动端要做不同的适配,实现方案可能都有不同。然后输入最好做好设计,技术做好抽象,交互同学做好统一的规范。
前期注意的主要是这些吧,其他的影响反而是小的,遇到了自然就知道怎么处理,修改成本也不算高。
感谢贾伟昊老师提供了回答
《《归环》项目研发效率提升之路》课程链接直达:
https://edu.uwa4d.com/course-intro/1/635
Unity引擎资源管理经验 - 如何使用YooAsset进行高效的资源管理
Q:把AB打包策略自动化是否可行,比如配置一些基本的限制之后,由算法来决定打包粒度,划分资源到不同的AB里。其中的难点可能会有哪些?
A:课程里有讲到导致构建文件发生变化的8条因素,这里面有一条因素需要注意下,就是AB文件里记录了其依赖的Bundle名称列表,哪怕是依赖关系没变,但是依赖的bunlde名称发生变化也会导致文件MD5发生变化。 另外自动化打包策略的稳定性也是关键,这需要大量的项目实践,然后不断调整算法直到稳定。
感谢何冠峰老师提供了回答
《Unity引擎资源管理经验 - 如何使用YooAsset进行高效的资源管理》课程链接直达:
https://edu.uwa4d.com/course-intro/1/622
虚幻引擎5构建开放世界下的优化、挑战以及开发方向
Q:请问虚幻引擎下一个开放世界项目主要会关注哪些方向?
针对以上问题,有经验的朋友欢迎转至社区交流:
https://answer.uwa4d.com/question/686b88da3d306f3e9d594f0b
《虚幻引擎5构建开放世界下的优化、挑战以及开发方向》课程链接直达:
https://edu.uwa4d.com/course-intro/1/638
封面图来源于网络
今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。
UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com
UWA学堂:edu.uwa4d.com
官方技术QQ群:793972859