Directx IDirectDrawSurface7::Blt-源表面的空指针

Directx IDirectDrawSurface7::Blt-源表面的空指针,directx,directdraw,Directx,Directdraw,调用IDirectDrawSurface7::Blt时,lpDDSrcSurface是否可以为NULL dest_surf->Blt(&dest_rect, NULL, NULL, blt_flags, NULL); 上面的代码似乎只是跳过了blitting,但是MSDN没有对此做任何说明。从语法方面来说,传递NULL是可以的,但实际上,这没有意义,如果源表面为NULL,那么您是从哪里复制的 您可以检查Blt的返回值,看看如果将NULL传递给源曲面会发生什么。谢谢。实际上我有这样

调用IDirectDrawSurface7::Blt时,lpDDSrcSurface是否可以为NULL

dest_surf->Blt(&dest_rect, NULL, NULL, blt_flags, NULL);

上面的代码似乎只是跳过了blitting,但是MSDN没有对此做任何说明。

从语法方面来说,传递NULL是可以的,但实际上,这没有意义,如果源表面为NULL,那么您是从哪里复制的


您可以检查Blt的返回值,看看如果将NULL传递给源曲面会发生什么。

谢谢。实际上我有这样一行:
dest\u-surf->Blt(&dest\rect,srce\u-surf,&srce\rect,Blt\u-flags,NULL)在渲染循环内部,其中srce_surf可以为NULL(如果未创建源曲面)。系统是稳定的还是会出现一些隐藏的错误?为什么不添加一个if块?如果源曲面为null,则不再调用Blt。