gpt4 book ai didi

ios - 片段着色器中的纹理读取

转载 作者:行者123 更新时间:2023-11-28 11:51:17 25 4
gpt4 key购买 nike

我正在将纹理传递给片段着色器 我想将该像素值中的纹理颜色与蓝色 Alpha 0.2 混合 我该怎么做?

片段着色器

fragment float4 bezier_fragment(VertexOutBezier params[[stage_in]],
texture2d<float> texture [[texture(0)]]

顶点输出贝塞尔

struct VertexOutBezier {
float4 pos[[position]];
float4 color;

};

目前我正在这样做,但我在示例中的此着色器函数中遇到错误。在 float canvasColor Initialization 行中“没有匹配的成员函数调用‘sample’”

fragment float4 bezier_fragment(VertexOutBezier params[[stage_in]],
texture2d<float> texture [[texture(0)]]
)
{
constexpr sampler defaultSampler;
float4 canvasColor = texture.sample(defaultSampler, params.pos);
float4 finalColor = mix(canvasColor, params.color, 0.2);
return finalColor;
}

最佳答案

替换这一行:

float4 canvasColor = texture.sample(defaultSampler, params.pos);

float4 canvasColor = texture.sample(defaultSampler, params.pos.xy);

2D 纹理由 2 个坐标采样,您提供了 4 个。

关于ios - 片段着色器中的纹理读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51874669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com