   Is it possible for CreateVertexBuffer to create less than the requested size?
  I am converting my rendering system from creating a vertex buffer directly to a pooling system, looks something like this (the important parts):struct VertexBuffer{   IDirect3DVertexBuffer8 * VB; // d3d vertex buffer, this points to a much larger vertex buffer in the pool   DWORD Offset; // starting vertex in the VB   ...};void RenderingSystem::SetVertexBuffer{   ...   CurrentVBOffset = VB->Offset;}void RenderingSystem::DrawPrim{   Device->DrawPrimitive(PrimType, Start + CurrentVBOffset, Size);}  currently i have the pool VB size as a const int at 65536.anyways, i create the vertex buffer for the little axis pointers in my editor, which has 18 vertices, 9 prims (line list). i draw it with 9 primitives, after setting the 18 vertex VB. In the debugger, just before the exception i throw, i check the offset. it is 16,something. WAAY less than 65536 obviously. i check the prim count, its 9. i get the error that says not enough vertices in the vertex buffer, "Streams do not have required number of vertices". so, the buffer is 65536 vertices long, drawing 9 primitives. the start vertex is 16,532. 16,532 + 18 is obviously less than 65536, yet i get that error one line later. what could the problem possibly be? 
Show us your createvertexbuffer code and also show us where and how you set the stream source!;  blah i figured it out, dx uses bytes for everything in creating the vertex buffer, locking it, etc. so when I DrawPrimitive, the m_Offset is in bytes, not vertices, and i didn't even think of it because i never had to convert between bytes/vertices anywhere else.took forever to figure it out though.   [edited by - billybob on August 1, 2003 5:38:09 AM]