记录RWTexture在安卓真机上失效问题

在Unity ComputeShader中使用RWTexture时,计算中同读同写,且有乘法等计算。

在不同的OpenGL版本上失效,在安卓真机上失效。

== 问题:==

在NVIDIA显卡上失效。在AMD显卡上正常。

传入的Texture格式修改为ARGBFloat解决。

== 解决:==

传入的Texture格式修改为ARGBFloat解决。

== 问题:==

在安卓真机失效的问题。

== 解决:==

拆分了RT,原本是RWTexture,改为了RWTexture。贴图的格式是RFloat。

== 原因:==

在DX中使用RWTexture时,会与UAV关联。但UAV的支持性在DX的版本之前有很大的差别。使用的使用可以查阅以下文档。
https://learn.microsoft.com/en-us/windows/win32/direct3d12/typed-unordered-access-view-loads

在OpenGL中没有找到具体的支持性的说明。求稳定性可考虑只使用单通道的32位标量类型。

在安卓真机OpenGLES3.2上RWTexture < float4 >对于同读同写只支持加法。减法,乘法,除法都不支持。RWTexture < float>都支持。某些硬件上,RWTexture只能使用32位标量类型(int,uint,float)的纹理。对32位的支持要好些。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值