OpenTK.Matrix4中的奇怪随机值

时间:2015-04-09 11:04:17

标签: c# matrix opentk

我正在尝试使用OpenTK的Matrix4类为项目构建模型视图矩阵。我正在尝试构建一个平移矩阵,但矩阵不断设置随机值。 以下是控制台的屏幕截图: Console dump

以下是用于构建它的代码:

private static Matrix4 CreateModelview(Rectangle dst)
        {
            var scale = Matrix4.CreateScale(dst.Size.X, dst.Size.Y, 1.0f);
            var translation = new Matrix4();

            translation[0, 0] = 1f;
            translation[1, 1] = 1f;
            translation[2, 2] = 1f;
            translation[3, 3] = 1f;
            translation[3, 0] = dst.Position.X;
            translation[3, 1] = dst.Position.Y;
            translation[0, 3] = 0f;
            translation[1, 3] = 0f;

            Console.WriteLine("Translation:");
            Console.WriteLine(translation);
            Console.WriteLine();
            Console.WriteLine("Scale:");
            Console.WriteLine(scale);
            Console.WriteLine();
            var modelview = scale * translation;

            return modelview;
        }

我尝试使用静态函数Matrix4f.CreateTranslation构建相同的结果。

1 个答案:

答案 0 :(得分:0)

我自己解决了这个问题,它是我翻转行和列并将其错误地上传到统一缓冲区的组合。