- Joined
- Oct 27, 2013
- Messages
- 57
- Reaction score
- 10
I have never had that problem before so I am sorry to say that I can not help you with that :/ Best thing to do is to try out another source then check the difference between them in such files.
I did eventually figure this out, putting the solution here in case anyone else has this issue in the future. The white border glitch is caused by mismatched window style flags
Inside d3dapp.cpp HRESULT CD3DApplication::Create( HINSTANCE hInstance )
Code:
if( !g_Option.m_bStartFullScreen )
{
#ifdef __CSC_VER9_4
m_dwWindowStyle = WS_OVERLAPPEDWINDOW;
#else //__CSC_VER9_4
m_dwWindowStyle = WS_OVERLAPPEDWINDOW | WS_VISIBLE;
#endif //__CSC_VER9_4
m_dwWindowStyle &= ~WS_MAXIMIZEBOX;
m_dwWindowStyle &= ~WS_MINIMIZEBOX;
m_dwWindowStyle &= ~WS_SYSMENU;
}
Should instead be
Code:
if( !g_Option.m_bStartFullScreen )
{
#ifdef __CSC_VER9_4
m_dwWindowStyle = WS_OVERLAPPEDWINDOW;
#else //__CSC_VER9_4
m_dwWindowStyle = WS_OVERLAPPEDWINDOW | WS_VISIBLE;
#endif //__CSC_VER9_4
m_dwWindowStyle &= ~WS_MAXIMIZEBOX;
m_dwWindowStyle &= ~WS_MINIMIZEBOX;
m_dwWindowStyle &= ~WS_SYSMENU;
m_dwWindowStyle &= ~WS_SIZEBOX;
}
The only change being the addition of m_dwWindowStyle &= ~WS_SIZEBOX; to match the flags being used inside of AdjustWindowForChange(). The glitch is caused by the window movement triggering a window update that tries to remove the window frame, problem is the window frame was never there to begin with, causing the white border to appear.