code: public <V3, M4, C, N, Q> C getWrappedColor(int vertex, int colorset,
              AiWrapperProvider<V3, M4, C, N, Q> wrapperProvider) {
          
          if (!hasColors(colorset)) {
              throw new IllegalStateException("mesh has no colorset " + colorset);
          }
          
          checkVertexIndexBounds(vertex);
          
          return wrapperProvider.wrapColor(
                  m_colorsets[colorset], vertex * 4 * SIZEOF_FLOAT);
      }
docs: Returns the vertex color.<p>
  
  This method is part of the wrapped API (see {@link AiWrapperProvider}
  for details on wrappers).<p>
  
  The built-in behavior is to return a {@link AiColor}.
  
  @param vertex the vertex index
  @param colorset the color set
  @param wrapperProvider the wrapper provider (used for type inference)
  @return the vertex color wrapped as object