【发布时间】:2021-07-04 09:22:30
【问题描述】:
tl;博士:
我是着色器新手,我正在尝试将 HLSL 着色器移植到 GLSL。RWTexture2D<float4> whatever; 的 GLSL 等效项是什么?
我需要在着色器中以编程方式创建纹理。
加长版:
我正在尝试将“粘液着色器”从this video 移植到 GLSL,并将其加载到网页中(目前我正在使用 Three.js)。
我设法编写了伪随机 hash 函数并在屏幕上显示噪音,但现在我卡住了。
(Here's the HLSL shader code)
在原始着色器中有这样的内容:RWTexture2D<float4> TrailMap;,我找不到在我的着色器中制作类似内容的方法。我在网上找到的所有信息都是关于加载外部纹理的,但我需要的是在着色器内部创建和修改的纹理(在我看来,GLSL 处理纹理的方式对初学者不太友好)。
我也尝试过使用this converter。我得到的是uniform image2D TrailMap;,但它给了我这个错误:
'image2D' : 非法使用保留字
我错过了什么?
【问题讨论】:
-
尝试用
sampler2D替换image2D -
@Rojo:你不能写入采样器。