SetTexture()는 같은 텍스쳐가 계속 바인딩에되어도 계속 텍스쳐 스와핑이 일어날까요?

즉 다음과같은 두개의 구분은 속도에 차이가있을까요?
///이것과
for( int i = 0; i < 10000; i ++ )
{
  device->SetTexture(0, texture );
  device->DrawPrimitive();
}

///이것!
device->SetTexture(0, texture );
for( int i = 0; i < 10000; i ++ )
{
    device->DrawPrimitive();
}

SetStreamSouce에 부담이가게되나요 아니면 DrawPrimitive할때 부담이 가게되나요?


For( int i = 0; i < 1000; i ++ )
{
  device->SetStreamSouce();
  device->DrawPrimitive();
}


device->SetStreamSouce();
For( int i = 0; i < 1000; i ++ )
{
  device->DrawPrimitive();
}

는 속도의 차이가있을까요?

아니면 버텍스버퍼에 밀어넣는것이 좋을까요?, 버텍스 버퍼에 밀어넣고 SetTransform()을 불러주면서, DrawPrimitive()를 부르는건 또 어떨까요??

위의 것들이 차이가 있다면, 텍스쳐별로 소팅을하거나,,같은 오브젝트(돌같은것들) 을 여러개 뿌릴경우는 SetStreamSource()하 한번만 일어나게등의 최적화를 수행할 수 있을겁니다.