- Katılım
- 6 Kas 2021
- Mesajlar
- 4,066
- Tepkime puanı
- 5,491
- Puanları
- 113
- Yaş
- 32
- Konum
- Türkiye
- Dc
- fatihbulut
Gecikme Düzeltme:
Fps limit kaldırma:
Gereksiz Güncellemeleri Kapat:
DirectX Render Güncellemeleri:
Gereksiz Object Update’leri Kaldır:
Sleep (CPU Bekleme):
Texture Cache Optimize Et:
Map Load Sırasında Paket İşleme Durdur:
Python Callback Performansı Artırma:
Direct3D Z-Buffer Optimizasyonu:
Kod:
PythonNetworkStreamPhaseGame.cpp
arat:
const DWORD MAX_RECV_COUNT = 8;
32 olarak düzenle
Fps limit kaldırma:
Kod:
PythonApplication.cpp
arat: m_dwLimitFPS = 60;
veya SetFPS(60);
değiştir:
m_dwLimitFPS = 120;
Gereksiz Güncellemeleri Kapat:
Kod:
PythonCharacterManagerModule.cpp
arat;
PyCallClassMemberFunc(m_apoInstance[i].GetActor(), "Update", Py_BuildValue("()"));
koşulu ekle:
if (!m_apoInstance[i].IsShow())
continue;
Kod:
arat:
ms_lpd3dDevice->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, 0, 1.0f, 0);
Bunun hemen önüne kontrol ekle:
if (ms_lpd3dDevice)
veya
if (FAILED(ms_lpd3dDevice->TestCooperativeLevel()))
return;
böylelikle Özellikle harita yüklenirken FPS drop azaltır.
Gereksiz Object Update’leri Kaldır:
Kod:
PythonCharacterManagerModule.cpp
arat:
PyCallClassMemberFunc(m_apoInstance[i].GetActor(), "Update", Py_BuildValue("()"));
üstüne ekle
if (!m_apoInstance[i].IsShow())
continue;
Görünmeyen karakterlerin boşuna güncellenmesini engeller.
FPS artışı sağlar, özellikle kalabalık şehirlerde etkili.
Sleep (CPU Bekleme):
Kod:
PythonApplication.cpp veya Main.cpp
arat:
Sleep(1);
ve yorum satırı yap
Texture Cache Optimize Et:
Kod:
EterLib/GrpImageInstance.cpp
arat:
m_pImage->Reload();
değiştir:
if (!m_pImage->IsEmpty())
m_pImage->Reload();
Map Load Sırasında Paket İşleme Durdur:
Kod:
PythonNetworkStreamPhaseGame.cpp
arat:
for (DWORD i = 0; i < MAX_RECV_COUNT; ++i)
hemen altına ekle
if (CInstanceBase::IsUpdating())
break;
Harita yüklenirken paket yığılmasını engeller
Python Callback Performansı Artırma:
Kod:
PythonNetworkStream.cpp
arat:
PyCallClassMemberFunc(m_apoPhaseWnd[ePhase], "OnUpdate", Py_BuildValue("()"));
değiştir
if (PyCallable_Check(m_apoPhaseWnd[ePhase]))
PyCallClassMemberFunc(m_apoPhaseWnd[ePhase], "OnUpdate", Py_BuildValue("()"));
Hatalı referanslardan dolayı oluşan Python yavaşlamalarını engeller.
Direct3D Z-Buffer Optimizasyonu:
Kod:
EterLib/GrpDevice.cpp
arat:
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
değiştir:
d3dpp.AutoDepthStencilFormat = D3DFMT_D24S8;
