但是,我可以访问iOS设备上的深度缓冲区.具体来说,我可以使用屏幕外帧缓冲区对象将深度缓冲区转换为颜色纹理并渲染它.
如果PowerVR架构不使用深度缓冲区,那我怎么能渲染深度缓冲区呢?
解决方法 确实,基于图块的渲染器不需要传统的深度缓冲来工作.TBR将屏幕分割成图块并使用快速片上存储器完全呈现此图块的内容以存储临时颜色和深度.然后,当图块完成时,最终值将移动到实际的帧缓冲区.但是,深度缓冲区中的深度值传统上是临时的,因为它们仅用作隐藏表面算法.然后,在渲染图块之后,可以完全丢弃这种情况下的深度值.
这意味着有效的基于图块的渲染器在较慢的视频内存中并不需要全屏深度缓冲,从而节省了带宽和内存.
Metal API可以轻松地公开此功能,允许您将深度缓冲区的storeAction设置为“不关心”值,这意味着它不会将生成的深度值备份到主内存中.
此情况的例外情况是,您可能需要在渲染后使用深度缓冲区内容(即,对于延迟渲染器或作为某些使用深度值 *** 作的算法的源).在这种情况下,硬件必须确保深度值存储在帧缓冲区中供您使用.
总结以上是内存溢出为你收集整理的ios – PowerVR GPU如何提供深度缓冲?全部内容,希望文章能够帮你解决ios – PowerVR GPU如何提供深度缓冲?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)