Move SetTexture calls to the renderer class
Trac #21727
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1337 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/renderer/Renderer.cpp b/src/libGLESv2/renderer/Renderer.cpp
index a6b75d7..1b5f5d8 100644
--- a/src/libGLESv2/renderer/Renderer.cpp
+++ b/src/libGLESv2/renderer/Renderer.cpp
@@ -381,6 +381,24 @@
}
}
+void Renderer::setTexture(gl::SamplerType type, int index, gl::Texture *texture)
+{
+ int d3dSamplerOffset = (type == gl::SAMPLER_PIXEL) ? 0 : D3DVERTEXTEXTURESAMPLER0;
+ int d3dSampler = index + d3dSamplerOffset;
+ IDirect3DBaseTexture9 *d3dTexture = NULL;
+
+ if (texture)
+ {
+ d3dTexture = texture->getD3DTexture();
+ // If we get NULL back from getTexture here, something went wrong
+ // in the texture class and we're unexpectedly missing the d3d texture
+ ASSERT(d3dTexture != NULL);
+ }
+
+ mDevice->SetTexture(d3dSampler, d3dTexture);
+}
+
+
void Renderer::releaseDeviceResources()
{
while (!mEventQueryPool.empty())