code: public Matrix4f mulPerspectiveAffine(Matrix4fc view, Matrix4f dest) {
          float nm00 = m00 * view.m00();
          float nm01 = m11 * view.m01();
          float nm02 = m22 * view.m02();
          float nm03 = m23 * view.m02();
          float nm10 = m00 * view.m10();
          float nm11 = m11 * view.m11();
          float nm12 = m22 * view.m12();
          float nm13 = m23 * view.m12();
          float nm20 = m00 * view.m20();
          float nm21 = m11 * view.m21();
          float nm22 = m22 * view.m22();
          float nm23 = m23 * view.m22();
          float nm30 = m00 * view.m30();
          float nm31 = m11 * view.m31();
          float nm32 = m22 * view.m32() + m32;
          float nm33 = m23 * view.m32();
          dest._m00(nm00);
          dest._m01(nm01);
          dest._m02(nm02);
          dest._m03(nm03);
          dest._m10(nm10);
          dest._m11(nm11);
          dest._m12(nm12);
          dest._m13(nm13);
          dest._m20(nm20);
          dest._m21(nm21);
          dest._m22(nm22);
          dest._m23(nm23);
          dest._m30(nm30);
          dest._m31(nm31);
          dest._m32(nm32);
          dest._m33(nm33);
          dest._properties(0);
          return dest;
      }
docs: /* (non-Javadoc)
  @see org.joml.Matrix4fc#mulPerspectiveAffine(org.joml.Matrix4fc, org.joml.Matrix4f)