📄 dxutmisc.cpp
字号:
return s_DynamicD3DPERF_GetStatus();
else
return 0;
}
HRESULT WINAPI DXUT_Dynamic_CreateDXGIFactory( REFIID rInterface, void ** ppOut )
{
if( DXUT_EnsureD3D10APIs() && s_DynamicCreateDXGIFactory != NULL )
return s_DynamicCreateDXGIFactory( rInterface, ppOut );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10CreateDevice( IDXGIAdapter* pAdapter,
D3D10_DRIVER_TYPE DriverType,
UINT32 Flags,
CONST void* pExtensions,
UINT32 SDKVersion,
ID3D10Device** ppDevice )
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10CreateDevice != NULL )
return s_DynamicD3D10CreateDevice( pAdapter,
DriverType,
(HMODULE)0,
Flags,
SDKVersion,
ppDevice );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10CreateStateBlock( ID3D10Device *pDevice, D3D10_STATE_BLOCK_MASK *pStateBlockMask, ID3D10StateBlock **ppStateBlock )
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10CreateStateBlock != NULL )
return s_DynamicD3D10CreateStateBlock( pDevice, pStateBlockMask, ppStateBlock );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskUnion(D3D10_STATE_BLOCK_MASK *pA, D3D10_STATE_BLOCK_MASK *pB, D3D10_STATE_BLOCK_MASK *pResult)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskUnion != NULL )
return s_DynamicD3D10StateBlockMaskUnion( pA, pB, pResult );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskIntersect(D3D10_STATE_BLOCK_MASK *pA, D3D10_STATE_BLOCK_MASK *pB, D3D10_STATE_BLOCK_MASK *pResult)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskIntersect != NULL )
return s_DynamicD3D10StateBlockMaskIntersect( pA, pB, pResult );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskDifference(D3D10_STATE_BLOCK_MASK *pA, D3D10_STATE_BLOCK_MASK *pB, D3D10_STATE_BLOCK_MASK *pResult)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskDifference != NULL )
return s_DynamicD3D10StateBlockMaskDifference( pA, pB, pResult );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskEnableCapture(D3D10_STATE_BLOCK_MASK *pMask, D3D10_DEVICE_STATE_TYPES StateType, UINT RangeStart, UINT RangeLength)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskEnableCapture != NULL )
return s_DynamicD3D10StateBlockMaskEnableCapture( pMask, StateType, RangeStart, RangeLength );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskDisableCapture(D3D10_STATE_BLOCK_MASK *pMask, D3D10_DEVICE_STATE_TYPES StateType, UINT RangeStart, UINT RangeLength)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskDisableCapture != NULL )
return s_DynamicD3D10StateBlockMaskDisableCapture( pMask, StateType, RangeStart, RangeLength );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskEnableAll(D3D10_STATE_BLOCK_MASK *pMask)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskEnableAll != NULL )
return s_DynamicD3D10StateBlockMaskEnableAll( pMask );
else
return E_FAIL;
}
HRESULT WINAPI DXUT_Dynamic_D3D10StateBlockMaskDisableAll(D3D10_STATE_BLOCK_MASK *pMask)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskDisableAll != NULL )
return s_DynamicD3D10StateBlockMaskDisableAll( pMask );
else
return E_FAIL;
}
BOOL WINAPI DXUT_Dynamic_D3D10StateBlockMaskGetSetting(D3D10_STATE_BLOCK_MASK *pMask, D3D10_DEVICE_STATE_TYPES StateType, UINT Entry)
{
if( DXUT_EnsureD3D10APIs() && s_DynamicD3D10StateBlockMaskGetSetting != NULL )
return s_DynamicD3D10StateBlockMaskGetSetting( pMask, StateType, Entry );
else
return E_FAIL;
}
//--------------------------------------------------------------------------------------
// Trace a string description of a decl
//--------------------------------------------------------------------------------------
void WINAPI DXUTTraceDecl( D3DVERTEXELEMENT9 decl[MAX_FVF_DECL_SIZE] )
{
int iDecl=0;
for( iDecl=0; iDecl<MAX_FVF_DECL_SIZE; iDecl++ )
{
if( decl[iDecl].Stream == 0xFF )
break;
DXUTOutputDebugString( L"decl[%d]=Stream:%d, Offset:%d, %s, %s, %s, UsageIndex:%d\n", iDecl,
decl[iDecl].Stream,
decl[iDecl].Offset,
DXUTTraceD3DDECLTYPEtoString( decl[iDecl].Type ),
DXUTTraceD3DDECLMETHODtoString( decl[iDecl].Method ),
DXUTTraceD3DDECLUSAGEtoString( decl[iDecl].Usage ),
decl[iDecl].UsageIndex );
}
DXUTOutputDebugString( L"decl[%d]=D3DDECL_END\n", iDecl );
}
#define TRACE_ID(iD) case iD: return L#iD;
//--------------------------------------------------------------------------------------
WCHAR* WINAPI DXUTTraceWindowsMessage( UINT uMsg )
{
switch( uMsg )
{
TRACE_ID(WM_NULL);
TRACE_ID(WM_CREATE);
TRACE_ID(WM_DESTROY);
TRACE_ID(WM_MOVE);
TRACE_ID(WM_SIZE);
TRACE_ID(WM_ACTIVATE);
TRACE_ID(WM_SETFOCUS);
TRACE_ID(WM_KILLFOCUS);
TRACE_ID(WM_ENABLE);
TRACE_ID(WM_SETREDRAW);
TRACE_ID(WM_SETTEXT);
TRACE_ID(WM_GETTEXT);
TRACE_ID(WM_GETTEXTLENGTH);
TRACE_ID(WM_PAINT);
TRACE_ID(WM_CLOSE);
TRACE_ID(WM_QUERYENDSESSION);
TRACE_ID(WM_QUERYOPEN);
TRACE_ID(WM_ENDSESSION);
TRACE_ID(WM_QUIT);
TRACE_ID(WM_ERASEBKGND);
TRACE_ID(WM_SYSCOLORCHANGE);
TRACE_ID(WM_SHOWWINDOW);
TRACE_ID(WM_WININICHANGE);
TRACE_ID(WM_DEVMODECHANGE);
TRACE_ID(WM_ACTIVATEAPP);
TRACE_ID(WM_FONTCHANGE);
TRACE_ID(WM_TIMECHANGE);
TRACE_ID(WM_CANCELMODE);
TRACE_ID(WM_SETCURSOR);
TRACE_ID(WM_MOUSEACTIVATE);
TRACE_ID(WM_CHILDACTIVATE);
TRACE_ID(WM_QUEUESYNC);
TRACE_ID(WM_GETMINMAXINFO);
TRACE_ID(WM_PAINTICON);
TRACE_ID(WM_ICONERASEBKGND);
TRACE_ID(WM_NEXTDLGCTL);
TRACE_ID(WM_SPOOLERSTATUS);
TRACE_ID(WM_DRAWITEM);
TRACE_ID(WM_MEASUREITEM);
TRACE_ID(WM_DELETEITEM);
TRACE_ID(WM_VKEYTOITEM);
TRACE_ID(WM_CHARTOITEM);
TRACE_ID(WM_SETFONT);
TRACE_ID(WM_GETFONT);
TRACE_ID(WM_SETHOTKEY);
TRACE_ID(WM_GETHOTKEY);
TRACE_ID(WM_QUERYDRAGICON);
TRACE_ID(WM_COMPAREITEM);
TRACE_ID(WM_GETOBJECT);
TRACE_ID(WM_COMPACTING);
TRACE_ID(WM_COMMNOTIFY);
TRACE_ID(WM_WINDOWPOSCHANGING);
TRACE_ID(WM_WINDOWPOSCHANGED);
TRACE_ID(WM_POWER);
TRACE_ID(WM_COPYDATA);
TRACE_ID(WM_CANCELJOURNAL);
TRACE_ID(WM_NOTIFY);
TRACE_ID(WM_INPUTLANGCHANGEREQUEST);
TRACE_ID(WM_INPUTLANGCHANGE);
TRACE_ID(WM_TCARD);
TRACE_ID(WM_HELP);
TRACE_ID(WM_USERCHANGED);
TRACE_ID(WM_NOTIFYFORMAT);
TRACE_ID(WM_CONTEXTMENU);
TRACE_ID(WM_STYLECHANGING);
TRACE_ID(WM_STYLECHANGED);
TRACE_ID(WM_DISPLAYCHANGE);
TRACE_ID(WM_GETICON);
TRACE_ID(WM_SETICON);
TRACE_ID(WM_NCCREATE);
TRACE_ID(WM_NCDESTROY);
TRACE_ID(WM_NCCALCSIZE);
TRACE_ID(WM_NCHITTEST);
TRACE_ID(WM_NCPAINT);
TRACE_ID(WM_NCACTIVATE);
TRACE_ID(WM_GETDLGCODE);
TRACE_ID(WM_SYNCPAINT);
TRACE_ID(WM_NCMOUSEMOVE);
TRACE_ID(WM_NCLBUTTONDOWN);
TRACE_ID(WM_NCLBUTTONUP);
TRACE_ID(WM_NCLBUTTONDBLCLK);
TRACE_ID(WM_NCRBUTTONDOWN);
TRACE_ID(WM_NCRBUTTONUP);
TRACE_ID(WM_NCRBUTTONDBLCLK);
TRACE_ID(WM_NCMBUTTONDOWN);
TRACE_ID(WM_NCMBUTTONUP);
TRACE_ID(WM_NCMBUTTONDBLCLK);
TRACE_ID(WM_NCXBUTTONDOWN);
TRACE_ID(WM_NCXBUTTONUP);
TRACE_ID(WM_NCXBUTTONDBLCLK);
TRACE_ID(WM_INPUT);
TRACE_ID(WM_KEYDOWN);
TRACE_ID(WM_KEYUP);
TRACE_ID(WM_CHAR);
TRACE_ID(WM_DEADCHAR);
TRACE_ID(WM_SYSKEYDOWN);
TRACE_ID(WM_SYSKEYUP);
TRACE_ID(WM_SYSCHAR);
TRACE_ID(WM_SYSDEADCHAR);
TRACE_ID(WM_UNICHAR);
TRACE_ID(WM_IME_STARTCOMPOSITION);
TRACE_ID(WM_IME_ENDCOMPOSITION);
TRACE_ID(WM_IME_COMPOSITION);
TRACE_ID(WM_INITDIALOG);
TRACE_ID(WM_COMMAND);
TRACE_ID(WM_SYSCOMMAND);
TRACE_ID(WM_TIMER);
TRACE_ID(WM_HSCROLL);
TRACE_ID(WM_VSCROLL);
TRACE_ID(WM_INITMENU);
TRACE_ID(WM_INITMENUPOPUP);
TRACE_ID(WM_MENUSELECT);
TRACE_ID(WM_MENUCHAR);
TRACE_ID(WM_ENTERIDLE);
TRACE_ID(WM_MENURBUTTONUP);
TRACE_ID(WM_MENUDRAG);
TRACE_ID(WM_MENUGETOBJECT);
TRACE_ID(WM_UNINITMENUPOPUP);
TRACE_ID(WM_MENUCOMMAND);
TRACE_ID(WM_CHANGEUISTATE);
TRACE_ID(WM_UPDATEUISTATE);
TRACE_ID(WM_QUERYUISTATE);
TRACE_ID(WM_CTLCOLORMSGBOX);
TRACE_ID(WM_CTLCOLOREDIT);
TRACE_ID(WM_CTLCOLORLISTBOX);
TRACE_ID(WM_CTLCOLORBTN);
TRACE_ID(WM_CTLCOLORDLG);
TRACE_ID(WM_CTLCOLORSCROLLBAR);
TRACE_ID(WM_CTLCOLORSTATIC);
TRACE_ID(MN_GETHMENU);
TRACE_ID(WM_MOUSEMOVE);
TRACE_ID(WM_LBUTTONDOWN);
TRACE_ID(WM_LBUTTONUP);
TRACE_ID(WM_LBUTTONDBLCLK);
TRACE_ID(WM_RBUTTONDOWN);
TRACE_ID(WM_RBUTTONUP);
TRACE_ID(WM_RBUTTONDBLCLK);
TRACE_ID(WM_MBUTTONDOWN);
TRACE_ID(WM_MBUTTONUP);
TRACE_ID(WM_MBUTTONDBLCLK);
TRACE_ID(WM_MOUSEWHEEL);
TRACE_ID(WM_XBUTTONDOWN);
TRACE_ID(WM_XBUTTONUP);
TRACE_ID(WM_XBUTTONDBLCLK);
TRACE_ID(WM_PARENTNOTIFY);
TRACE_ID(WM_ENTERMENULOOP);
TRACE_ID(WM_EXITMENULOOP);
TRACE_ID(WM_NEXTMENU);
TRACE_ID(WM_SIZING);
TRACE_ID(WM_CAPTURECHANGED);
TRACE_ID(WM_MOVING);
TRACE_ID(WM_POWERBROADCAST);
TRACE_ID(WM_DEVICECHANGE);
TRACE_ID(WM_MDICREATE);
TRACE_ID(WM_MDIDESTROY);
TRACE_ID(WM_MDIACTIVATE);
TRACE_ID(WM_MDIRESTORE);
TRACE_ID(WM_MDINEXT);
TRACE_ID(WM_MDIMAXIMIZE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -