wined3d: FBO texture == drawable handling is already handled in LoadLocation().

This commit is contained in:
H. Verbeet 2008-07-29 23:14:51 +02:00 committed by Alexandre Julliard
parent 9b47996b41
commit c7da79ded3
1 changed files with 0 additions and 15 deletions

View File

@ -922,7 +922,6 @@ void drawPrimitive(IWineD3DDevice *iface,
int minIndex) {
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
IWineD3DSwapChain *swapchain;
IWineD3DSurfaceImpl *target;
int i;
@ -934,27 +933,13 @@ void drawPrimitive(IWineD3DDevice *iface,
/* TODO: Only do all that if we're going to change anything */
if(target /*&& target->Flags & (SFLAG_INTEXTURE | SFLAG_INSYSMEM)*/) {
swapchain = NULL;
if(i == 0) {
IWineD3DSurface_GetContainer((IWineD3DSurface *) target, &IID_IWineD3DSwapChain, (void **)&swapchain);
/* Need the surface in the drawable! */
IWineD3DSurface_LoadLocation((IWineD3DSurface *) target, SFLAG_INDRAWABLE, NULL);
/* TODO: Move fbo logic to ModifyLocation */
IWineD3DSurface_ModifyLocation((IWineD3DSurface *) target, SFLAG_INDRAWABLE, TRUE);
if(swapchain) {
/* Onscreen target. Invalidate system memory copy and texture copy */
IWineD3DSwapChain_Release(swapchain);
} else if(wined3d_settings.offscreen_rendering_mode == ORM_FBO) {
/* FBO offscreen target. Texture == Drawable */
target->Flags |= SFLAG_INTEXTURE;
}
} else {
/* Must be an fbo render target */
IWineD3DSurface_ModifyLocation((IWineD3DSurface *) target, SFLAG_INDRAWABLE, TRUE);
target->Flags |= SFLAG_INTEXTURE;
}
}
}