code: public GVRMesh getBoundingBox()
      {
          GVRMesh meshbox = new GVRMesh(getGVRContext(), "float3 " + KEY_POSITION);
          float[] bbox = new float[6];
  
          getBoxBound(bbox);
          float min_x = bbox[0];
          float min_y = bbox[1];
          float min_z = bbox[2];
          float max_x = bbox[3];
          float max_y = bbox[4];
          float max_z = bbox[5];
          float[] positions = {
                  min_x, min_y, min_z,
                  max_x, min_y, min_z,
                  min_x, max_y, min_z,
                  max_x, max_y, min_z,
                  min_x, min_y, max_z,
                  max_x, min_y, max_z,
                  min_x, max_y, max_z,
                  max_x, max_y, max_z
          };
          char indices[] = {
                  0, 2, 1, 1, 2, 3, 1, 3, 7, 1, 7, 5, 4, 5, 6, 5, 7, 6, 0, 6, 2, 0, 4, 6, 0, 1, 5, 0,
                  5, 4, 2, 7, 3, 2, 6, 7
          };
          meshbox.setVertices(positions);
          meshbox.setIndices(indices);
          return meshbox;
      }
docs: Constructs a {@link GVRMesh mesh} that contains this mesh.
  <p>
  This is primarily useful with the {@link GVRPicker}, which does
  "ray casting" to detect which scene object you're pointing to. Ray
  casting is computationally expensive, and you generally want to limit the
  number of {@linkplain GVRCollider triangles to check.} A simple
  {@linkplain GVRContext#createQuad(float, float) quad} is cheap enough,
  but with complex meshes you will probably want to cut search time by
  registering the object's bounding box, not the whole mesh.
  
  @return A {@link GVRMesh} of the bounding box.