您好,欢迎访问一九零五行业门户网

pso缓存是什么

pso有两种意思,分别是:1、指工艺认证“process sign-off”,此为客户对供应商/代工厂进行的生产工艺流程的审核;2、指微粒群优化算法。
本文操作环境:windows7系统、dell g3。
pso缓存是什么?
pso 一是指工艺认证(process sign-off),此为客户对供应商/代工厂进行的生产工艺流程的审核;二是指微粒群优化算法。
当link完了之后,生成一个program,我们会拿到这个data,把它存下来,存在一个文件里。我做了一个虚拟的文件系统,这个虚拟文件的key就是那段program的data。存下来以后,当第一次运行游戏时这个文件是空的。
每次都会link,然后存进去。当第二次运行的时候,情况就会变好了。以前曾经link过的,我直接在文件里找到,通过这个program加载进来,也不需要去设置shader,也不需要link,直接就可以用了。
第三个是多个psocachefile。ue4自己有一个功能是对pso的缓存,原来是叫shadercache,后来改成pipelinecache。他只有一个文件,我们改进了这个功能。在录的时候,我们可以录很多个文件。
比如我们在打boss战的时候,那个boss以前从没出来过。他一出来,不管你是link还是怎么样,反正他会卡顿。因为就算是你link了,他往显卡送的那一刻,往镜头送那一刻,他也会有一定的时间开销。然后当那个boss从来没出现过。
一出来就卡一下,这个效果不太好。还有就是我们游戏运行loading完了之后,我们需要播一个cg,那个cg有很多也是游戏不太用到的资源,它也会卡一下。我们还是想用引擎的pso功能,记录的功能,然后把它预热一下。
但是一个不够,尤其是出现怪物的时候。然后我们就做了一个录不同的pso的cache。psocache需要录渲染所有的参数,shader,各种参数都录下来。录下来之后当你需要播这些、需要画这些文件的时候,它会在后台给你把这些东西跑一遍。
这样的话,当你真正渲染模型的时候就不会卡顿,我们做了多个这样的文件。比如说,在这个loading条结束的时候,我们需要播cg,那在loading条结束的时候,就加载这个场景所对应的记录好的文件。当这个cg播放的时候就会非常的平滑。
没有一丝的卡顿。对于boss也是这样,快到播boss的时候,我们也在后台把这个cache文件加载进来,做一下这样的预热,就会达到非常好的平滑效果。今天的分享大概就是这些,非常感谢。
更多相关知识,请访问常见问题栏目!
以上就是pso缓存是什么的详细内容。
其它类似信息

推荐信息