Hi ^^a
I'm sorry. I can't English very well.
Please understand me.
I'm using 1 static Large VB...
I'm drawing a simple rectangle with moving start vertexbuffer offset.
Let's see code ^^a (English too difficult ??)
stVertexTex1* v = NULL;
pMesh->LockVertexBuffer( 0, (void**)&v );
v[0] = stVertexTex1( -2.0f, -0.5f, 0.0f, 0.0f, 1.0f );
v[1] = stVertexTex1( -2.0f, 0.5f, 0.0f, 0.0f, 0.0f );
v[2] = stVertexTex1( 2.0f, 0.5f, 0.0f, 1.0f, 0.0f );
v[3] = stVertexTex1( 2.0f, -0.5f, 0.0f, 0.0f, 1.0f );
pMesh->UnlockVertexBuffer();
stVertexTex1* vertices;
stVertexTex1* verticesNew;
pMesh->LockVertexBuffer( D3DLOCK_READONLY, (void**)&vertices );
vb->Lock( 0 <- start vertexbuffer offset 0. I want to moving 10
, 4 * sizeof(stVertexTex1)
, (void**)&verticesNew
, D3DLOCK_NOSYSLOCK );
::CopyMemory( verticesNew, vertices, 4 * sizeof(stVertexTex1) );
vb->Unlock();
pMesh->UnlockVertexBuffer();
Drawing code...
Device->SetVertexDeclaration( pDeclFont );
Device->SetStreamSource( 0
, vb
, 0 --> 10 Changing ???
, sizeof(stVertexTex1) );
Device->SetIndices( ibFont );
pEffect->Begin( NULL, NULL );
pEffect->BeginPass(2);
pEffect->CommitChanges();
Device->DrawIndexedPrimitive( D3DPT_TRIANGLELIST
, 0
, 0
, 4
, 0
, 2 );
Code + English...
If ( VB start offset moving )
{
vb->Lock( 0 -----> vb->Lock( 10
}
Then Drawing Code is Change ?
{
Device->SetStreamSource( 0, vb , 0, sizeof(stVertexTex1) ) -------> Drawing very well
----->
Device->SetStreamSource( 0, vb , 10, sizeof(stVertexTex1) ) -----> Can't Drawing ??
}
Using Start VB Offset moving Drawing...
X-files( Tiny, Dwarf etc...) are Drawing Very well.
BUT
This Simple rectalge ONLY can't drawing ??[/font]