阅读:2637回复:3
【源码编辑】飞飞多采样抗锯齿设置
老外论坛的,不知道效果如何,我的电脑也看不出有啥变化- -
----------------------- d3dapp.cpp ----------------------- 找到: #ifdef __XUZHU #if 0 // Create the device hr = m_pD3D->CreateDevice( m_pD3D->GetAdapterCount()-1, D3DDEVTYPE_REF, m_hWndFocus, behaviorFlags, &m_d3dpp, &m_pd3dDevice ); 在第二个#else 下面的代码 hr = m_pD3D->CreateDevice( m_d3dSettings.AdapterOrdinal(), pDeviceInfo->DevType, m_hWndFocus, behaviorFlags, &m_d3dpp, &m_pd3dDevice ); 替换为: DWORD MSQuality = 0; D3DMULTISAMPLE_TYPE MSType = D3DMULTISAMPLE_NONE; if( SUCCEEDED( m_pD3D->CheckDeviceMultiSampleType(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, D3DFMT_A8R8G8B8, TRUE, D3DMULTISAMPLE_8_SAMPLES, &MSQuality) )) MSType = D3DMULTISAMPLE_8_SAMPLES; else if( SUCCEEDED( m_pD3D->CheckDeviceMultiSampleType(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, D3DFMT_A8R8G8B8, TRUE, D3DMULTISAMPLE_4_SAMPLES, &MSQuality) )) MSType = D3DMULTISAMPLE_4_SAMPLES; else if( SUCCEEDED( m_pD3D->CheckDeviceMultiSampleType(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, D3DFMT_A8R8G8B8, TRUE, D3DMULTISAMPLE_2_SAMPLES, &MSQuality) )) MSType = D3DMULTISAMPLE_2_SAMPLES; int MSQ = MSQuality - 1; // -------------------------------------------------------------- // ... Below Will Display a message box on Start-Up with the AntiAliasing // ... Multisample level Your Graphics card can handle . // --------------------------------------------------------------- // char msaaText[128]; // sprintf( msaaText, "Multi Sample Type = x%d", MSType ); // MessageBox( NULL, msaaText, "MSAA AMOUNT", MB_OK ); // ------------------------------------------------------------------- m_d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; m_d3dpp.MultiSampleType = MSType; m_d3dpp.MultiSampleQuality = MSQ; m_d3dpp.BackBufferFormat = D3DFMT_X8R8G8B8; m_d3dpp.EnableAutoDepthStencil = TRUE; m_d3dpp.AutoDepthStencilFormat = D3DFMT_D16; m_d3dpp.Flags = 0; m_d3dpp.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT; m_d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT; hr = m_pD3D->CreateDevice( m_d3dSettings.AdapterOrdinal(), pDeviceInfo->DevType, m_hWndFocus, behaviorFlags, &m_d3dpp, &m_pd3dDevice ); m_pd3dDevice->SetRenderState(D3DRS_MULTISAMPLEANTIALIAS, TRUE); m_pd3dDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, TRUE); m_pd3dDevice->SetRenderState(D3DRS_ALPHAFUNC, D3DCMP_GREATEREQUAL); m_pd3dDevice->SetRenderState(D3DRS_ALPHAREF, (DWORD)8); m_pd3dDevice->SetRenderState(D3DRS_ALPHATESTENABLE, TRUE); 完了! |
|
最新喜欢:![]()
100% |
沙发#
发布于:2013-03-13 22:16
测试完毕!
具体效果:模型周边的棱角去除。用元棱角代替。 综合性能:性能不进行增大。但是会增加处理时间(可以处理、读取同时进行、所以不影响吧) 测试显卡:华硕 GTX680 DirectCU II TOP DX版本:DirectX 11 附加特效软件:NVIDIA SLI、PhysX 游戏特效:增加V19的高清游戏模型文理。禁止游戏跳帧。 人物效果图:(不太明显) 使用前: 图片:_~26(_2QFM2%XW[Y(9C1RXC.jpg ![]() 使用后: 图片:_~26(_2QFM2%XW[Y(9C1RXC.bmp ![]() 武器效果图:(明显) 使用前: 使用后: [img]file:///C:\Documents and Settings\Administrator\Application Data\Tencent\Users\1021066096\QQ\WinTemp\RichOle\_~26(_2QFM2%XW[Y(9C1RXC.jpg[/img] |
|
板凳#
发布于:2013-03-13 22:17
坑爹!人物特效两张图片弄反了。。。
|
|
地板#
发布于:2013-03-13 22:38
完了。我也弄不清反不反了。。。。大家帮我辨别一下吧。
|
|