TBDR下msaa 在metal vulkan和ogles的解决方案

https://developer.arm.com/solutions/graphics/developer-guides/understanding-render-passes/multi-sample-anti-aliasing

msaa在local mem上做很省但是 带宽不处理多出8x  对于4xmsaa

计算如下

处理前

python
bytesPerFrame4x = 2560 * 1440 * 4 * 4
bytesPerFrame1x = 2560 * 1440 * 4 * 1

# Additional 4x bandwidth is doubled because the additional samples
# are written by one pass and then re-read to resolve the final color
bytesPerFrame = ((bytesPerFrame4x * 2) + bytesPerFrame1x)
bytesPerSecond = bytesPerFrame * 60
               = 7.9 GB/s

处理后

python
bytesPerFrame1x = 2560 * 1440 * 4 * 1

# All additional 4x bandwidth is kept entirely inside the tile memory
bytesPerSecond = bytesPerFrame1x * 60
               = 884 MB/s

处理的方法就是load store action选一共1x那种

vulkan和metal都可以这样处理 之前有发blog

https://www.cnblogs.com/minggoddess/p/10950349.html

对于

ogles

用如下扩展

[EXT_multisampled_render_to_texture][EXT_msaa] extension

https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_multisampled_render_to_texture.txt

vulkan还要用

using VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT and constructing the VkImage with VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT.做memoryless

metal直接设置memoryless

这块memoryless 还不知道ogles的方案 不过好在这块只是footprint没有bandwidth了

所有tbdr下这套解决方案 在ogles 在unity估计写起来比较麻烦。。 多半是extension。。。又够我做一壶的了

原文地址:https://www.cnblogs.com/minggoddess/p/11240211.html

时间: 2024-11-13 06:38:40

TBDR下msaa 在metal vulkan和ogles的解决方案的相关文章

关于ie7下display:inline-block;不支持的解决方案

关于ie7下display:inline-block:不支持的解决方案 今天码的时候遇到这个问题了. 如果本身是内联元素的,把它的display属性设置设置为inline-block时,所有浏览器都是支持的. 相反,如果本身是块级元素的,把它设为display:inline-block;  那么ie6/ie7都是不支持的. IE中对内联元素使用display:inline-block,IE是不识别的,但使用display:inline-block在IE下会触发layout,从而使内联元素拥有了d

破解windows下MySQL服务启动不了的情况下不能对其进行完全卸载的解决方案

以下的文章主要介绍的是在MySQL服务启动不了的情况下,不能对其进行完全卸载的实际解决办法的描述,以下就是对解决MySQL服务启动不了的情况下具体方案的描述,希望在你今后的学习中会对你有所帮助. MySQL 5.1 安装过程中报apply security setting错误的解决办法 1, 卸载MySQL 2, 删除目录 C:\Documents and Settings\All Users\Application Data\MySQL 3, 重新安装MySQL 就 OK 啦 [MySQL]

从Windows8往下换系统-xp 无法引导系统安装的解决方案

开机启动按F1进bios里调[三大项:config.security.startup]1.在config选项内把硬盘模式调为compatibility(这个是兼容模式,兼容win7和XP)2.进入security在security那一项选择disabled(关闭安全模式,关闭后才可以操作3.若已关闭可直接操作第三步)3.选择"Startup"选项,会看到以UEFI/Legacy Boot选项,回车选择"Legacy only"项. legacy only 为传统启动

Ubuntu12.10下Python(pyodbc)访问SQL Server解决方案

一.基本原理 请查看这个网址,讲得灰常详细:http://www.jeffkit.info/2010/01/476/ 二.实现步骤 1.安装linux下SQL Server的驱动程序 安装Freetds,不要使用apt-get install 来安装,因为源里的版本不一定是新的,建议使用stable版本, 下载源码手工编译安装,因为有好些参数需要在编译中指定的. 执行以下命令: tar zfvx freetds-stable.tgz cd freetds-* ./configure --pref

Ubuntu16.4下RStudio1.1.447 中文输入问题的解决方案

Ubuntu16.4下RStudio1.1.447 中文输入问题的解决方案参照:https://blog.csdn.net/matteoshenl/article/details/78603528 RStudio 1.0.153 版本及以上 wget http://ikuya.info/tmp/fcitx-qt5-rstudio-qt542.tar.gz tar xf fcitx-qt5-rstudio-qt542.tar.gz sudo apt install ./fcitx-frontend

ubuntu 下root用户无法访问声音设备的解决方案

原因:root用户没有对pulsaudio的访问权限,而且pulsaudio默认是不能在root下自动启动解决办法: 一.修改自动启动:编辑 gedit /etc/default/pulseaudio,将下面两项改为和下面的一样PULSEAUDIO_SYSTEM_START=1DISALLOW_MODULE_LOADING=0                          二.添加权限:将root分别添加到pulse组和pulse-access组,不添加的话是没有权限访问声音设备的gpass

解决Mac下MX4手机无法连接adb问题之解决方案

一般的android连接mac 很方便不用安装驱动就可以啦,可是不知道为什么特殊情况下有的android手机(小米2,华为等)就是连接不上,下来就说说特殊情况下如何连接. 使用USB连接安卓手机后可以做2件事情: 1.关于本机-->更多信息->概系统览->系统报告->usb->你所连接的device-->供应商ID(Vendor ID) 2..打开终端,输入:system_profiler SPUSBDataType     命令 可以查看连接的usb设备的信息 通过以

Ubuntu下Code Blocks无法运行和Debug的解决方案

前两天尝试用Vim+gcc+gdb来编写C语言,但是对我这样一个新手来说实在时太痛苦了,不得以,转战IDE,找了半天,选了Code Blocks这款大家用的最多的.但是在运行的时候却: 一闪而过,Debug的时候也捕捉不到断点,也不显示控制台,上网查找了一下,目前有这几种解决方案: (1)首先,所有的路径不能有中文,不能有空格. (2)其次,要调试的程序必须在一个项目中,即新建一个项目,将源文件添加进项目才能Debug. (3)再者,还需要调整控制台的样式:Settings->Environme

WIN7下无线不能启动(错误1075,1068)的解决方案!!!

已经很久没写过东西了,大概3-4年了吧.因为一直也没再学过什么东西,另外也没有什么好的安全来写. 今天遇到一个挺好玩的事情跟大家分享一下. 昨天,有个老师,找我,说无线不能用了.我想应该很简单,就让他拿笔记本来找我. 笔记本是学校统一采购的Acer的本子,WIN7旗舰版.这个本子我很熟,这种小问题应该很easy!!!. 拿到本子,首先看了一下无线的硬件开关,开关处于ON的状态,没有问题. 查看系统,无线确实有问题,打开"网络和共享中心"--"更改适配器设置",发现无