zoukankan      html  css  js  c++  java
  • unity3d Matrix4x4列为主序

    unity3d的矩阵一直用,但是之前都是测试着用的,效果虽然正确,但是一直没搞清楚它是行矩阵还是列矩阵

    今天测试了下

    Matrix4x4 mat4 = Matrix4x4.Perspective(30,1.0f,3,30);
            Vector4 row1 = mat4.GetRow(0);
            Vector4 row2 = mat4.GetRow(1);
            Vector4 row3 = mat4.GetRow(2);
            Vector4 row4 = mat4.GetRow(3);
    
            Debug.Log("mat4:Row3"+ row3 +"mat4:Row4:"+ row4);
    

    打印出来的数据是这样的:

     mat4:Row3(0.0, 0.0, -1.2, -6.7)mat4:Row4:(0.0, 0.0, -1.0, 0.0)   

    Perspective的矩阵如果是行为主序的,那么这个是不对的

    参考opengl官网

    mat[2] = 0.0; mat[6] = 0.0; mat[10] = -(zfar + znear) / (zfar - znear); mat[14] = -(2.0f * zfar * znear) / (zfar - znear);
    mat[3] = 0.0; mat[7] = 0.0; mat[11] = -1.0; mat[15] = 0.0;
    

     所以他的是列矩阵,就是和opengl一样的

  • 相关阅读:
    带锚点URL同一页面滚动效果的实现
    思路先行
    transliteration -- 2个功能
    html5 section article
    fields('t')
    使用Bootstrap
    JavaScript Switch
    菜单
    写一个博客页面
    自动适应
  • 原文地址:https://www.cnblogs.com/dragon2012/p/4062167.html
Copyright © 2011-2022 走看看