   Multi-stream geometry performance hit?
  Using DX9...I have been toying with the concept of using multiple streams to store and draw my geometry. Is there a performance hit for using multiple streams for my geometry (e.g. 1 for positions, another for normals, and another for texcoods, etc), and then drawing them with multiple calls to SetStreamSource then a DrawIndexedPrimitive call?If there is a performance hit, how severe is it?  Would this be a generally bad idea?Does anything change when i move my stuff to DX11 with regards to this? Is there a performance hit (or less of one)?If there wasnt that much of a hit (or no hit), doing things this way would be helpful architectural technique, for reducing data redundancy between different version of the same geometry in the scene. E.g. some version of the same object would require TBN frames for each vertex and some would not.Thx   
  In my personal experience there is definitely a performance hit from using multiple vertex streams. It's probably related to the fact that when you use multiple streams, the GPU must fetch vertex data from multiple locations in memory. The performance hit probably depends on a variety of factors including the hardware, the driver, how many streams, where the vertex buffers are located in memory, what part of the pipeline is bottlenecked,etc. I haven't done any real profiling in DX10/DX11, but my guess would be that the problem would still be present. You'll have to profile to know for sure.   