code: @SuppressWarnings("unused")
      private void allocateDataChannel(int channelType) {
          switch (channelType) {
              case NORMALS:
                  m_normals = ByteBuffer.allocateDirect(
                          m_numVertices * 3 * SIZEOF_FLOAT);
                  m_normals.order(ByteOrder.nativeOrder());
                  break;
              case TANGENTS:
                  m_tangents = ByteBuffer.allocateDirect(
                          m_numVertices * 3 * SIZEOF_FLOAT);
                  m_tangents.order(ByteOrder.nativeOrder());
                  break;
              default:
                  throw new IllegalArgumentException("unsupported channel type");
          }
      }
docs: This method is used by JNI. Do not call or modify.<p>
  
  Allocates a byte buffer for a vertex data channel
  
  @param channelType the channel type
  @param channelIndex sub-index, used for types that can have multiple
  channels, such as texture coordinates