code: public Matrix4f reflect(float nx, float ny, float nz, float px, float py, float pz, Matrix4f dest) {
          float invLength = 1.0f / (float) Math.sqrt(nx * nx + ny * ny + nz * nz);
          float nnx = nx * invLength;
          float nny = ny * invLength;
          float nnz = nz * invLength;
          /* See: http://mathworld.wolfram.com/Plane.html */
          return reflect(nnx, nny, nnz, -nnx * px - nny * py - nnz * pz, dest);
      }
docs: /* (non-Javadoc)
  @see org.joml.Matrix4fc#reflect(float, float, float, float, float, float, org.joml.Matrix4f)