如何将GLSL mat2类型转换和使用为RenderScript中的等效类型

时间:2019-02-28 21:38:49

标签: matrix glsl renderscript

Renderscript中的glsl mat2类型的等效转换是什么以及如何使用?

我得出的结论是它可能是rs_matrix2x2,但是我找不到任何有关如何使用它的示例代码。

我正在尝试将下一个GLSL代码片段转换为RenderScript:

GLSL:

vec2 test(vec2 coord, float c, float s)
{
    mat2 m = mat2(c, -s, s, c);
    return m * coord;
}

渲染图

float2 test(float2 coord, float c, float s)
{
    //???? -> mat2 m = mat2(c, -s, s, c);
    return m * coord;
}

1 个答案:

答案 0 :(得分:0)

找到解决方案。万一对其他人有用,以下是该问题片段中示例的转换和使用情况:

float2 test(float2 coord, float c, float s)
{
    rs_matrix2x2 m = {c, -s, s, c};
    return rsMatrixMultiply(&m, coord);
}