code: public static final GVRPickedObject[] pickBounds(GVRScene scene, List<GVRSceneObject> collidables)
      {
          sFindObjectsLock.lock();
          try
          {
              final GVRPickedObject[] result = NativePicker.pickBounds(scene.getNative(), collidables);
              if (result == null)
              {
                  return sEmptyList;
              }
              return result;
          }
          finally
          {
              sFindObjectsLock.unlock();
          }
      }
docs: Tests the bounding volumes of a set of scene objects against
  all the colliders the scene and returns a list of collisions.
  <p/>
  This function is not meant for general collision detection
  but can be used to implement simple bounds-based collisions.
  Inside GearVRF it is used for cursor hit testing.
  <p>
  This method is thread safe because it guarantees that only
  one thread at a time is examining the scene graph,
  and it extracts the hit data during within its synchronized block. You
  can then examine the return list without worrying about another thread
  corrupting your hit data.
  <p/>
  Unlike ray based picking, the hit location for sphere picking is very
  inexact. Currently the hit location reported is on the surface of the collider.
  Mesh colliders are not supported and the mesh is not examined
  during collision detection. Instead the bounding volume of the scene object
  is used, not it's mesh collider.
  
  @param scene
  The {@link GVRScene} with all the objects to be tested.
  @param collidables
  An array of {@link GVRSceneObject}s to collide against the scene.
  
  @return A list of {@link GVRPickedObject}, sorted by distance from the
  pick ray origin. Each {@link GVRPickedObject} contains the scene object
  which owns the {@link GVRCollider} along with the hit
  location and distance.
  
  @since 1.6.6