0

があり、位置Xから始まるN個std::vector<int> aroundの値を更新(/上書き)する必要があります。

部屋全体の頂点を保持している頂点のリストを想像してみてください。

ランダムに、椅子を移動し、椅子に属する頂点のみを更新する必要があるため、部屋全体の頂点リスト内の椅子の頂点のセットを更新する必要があります。

擬似コード:

void CVertexBuffer::Update(int iOffset, const std::vector<tVertex>& vVerticesList)
{

  // Update VAO
     ...


  //
  // Update m_vVertices (holding current vertices list) 
  // with vVerticesList (holding updated vertices data )
  // starting at position iOffset
  // The size of m_vVertices never changes
  // 
  // The Dumb way ( just for pseudocoding )

  for(int a = iOffset; a < vVerticesList.size(); a++)
  {
     m_vVertices[a] = vVerticesList[a-iOffset];
  }
}

それを行うために私が使用できるものはありますstd::vectorか?

4

1 に答える 1

5

直接使用できますstd::copy

 std::copy(vVerticesList.begin(), vVerticesList.end(), 
                                         m_vVertices.begin() + iOffset);
于 2012-10-10T11:03:16.173 に答える