effect updating moved to update from render & rendering performance checker removed
This commit is contained in:
@@ -162,89 +162,21 @@ void CPythonApplication::Exit()
|
||||
PostQuitMessage(0);
|
||||
}
|
||||
|
||||
bool PERF_CHECKER_RENDER_GAME = false;
|
||||
|
||||
void CPythonApplication::RenderGame()
|
||||
{
|
||||
if (!PERF_CHECKER_RENDER_GAME)
|
||||
{
|
||||
float fAspect=m_kWndMgr.GetAspect();
|
||||
float fFarClip=m_pyBackground.GetFarClip();
|
||||
|
||||
m_pyGraphic.SetPerspective(30.0f, fAspect, 100.0, fFarClip);
|
||||
|
||||
CCullingManager::Instance().Process();
|
||||
|
||||
m_kChrMgr.Deform();
|
||||
m_kEftMgr.Update();
|
||||
|
||||
m_pyBackground.RenderCharacterShadowToTexture();
|
||||
|
||||
m_pyGraphic.SetGameRenderState();
|
||||
m_pyGraphic.PushState();
|
||||
|
||||
{
|
||||
long lx, ly;
|
||||
m_kWndMgr.GetMousePosition(lx, ly);
|
||||
m_pyGraphic.SetCursorPosition(lx, ly);
|
||||
}
|
||||
|
||||
m_pyBackground.RenderSky();
|
||||
|
||||
m_pyBackground.RenderBeforeLensFlare();
|
||||
|
||||
m_pyBackground.RenderCloud();
|
||||
|
||||
m_pyBackground.BeginEnvironment();
|
||||
m_pyBackground.Render();
|
||||
|
||||
m_pyBackground.SetCharacterDirLight();
|
||||
m_kChrMgr.Render();
|
||||
|
||||
m_pyBackground.SetBackgroundDirLight();
|
||||
m_pyBackground.RenderWater();
|
||||
m_pyBackground.RenderSnow();
|
||||
m_pyBackground.RenderEffect();
|
||||
|
||||
m_pyBackground.EndEnvironment();
|
||||
|
||||
m_kEftMgr.Render();
|
||||
m_pyItem.Render();
|
||||
m_FlyingManager.Render();
|
||||
|
||||
m_pyBackground.BeginEnvironment();
|
||||
m_pyBackground.RenderPCBlocker();
|
||||
m_pyBackground.EndEnvironment();
|
||||
|
||||
m_pyBackground.RenderAfterLensFlare();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
//if (GetAsyncKeyState(VK_Z))
|
||||
// STATEMANAGER.SetRenderState(D3DRS_FILLMODE, D3DFILL_WIREFRAME);
|
||||
|
||||
DWORD t1=ELTimer_GetMSec();
|
||||
m_kChrMgr.Deform();
|
||||
DWORD t2=ELTimer_GetMSec();
|
||||
m_kEftMgr.Update();
|
||||
DWORD t3=ELTimer_GetMSec();
|
||||
m_pyBackground.RenderCharacterShadowToTexture();
|
||||
DWORD t4=ELTimer_GetMSec();
|
||||
|
||||
m_pyGraphic.SetGameRenderState();
|
||||
m_pyGraphic.PushState();
|
||||
|
||||
float fAspect=m_kWndMgr.GetAspect();
|
||||
float fFarClip=m_pyBackground.GetFarClip();
|
||||
float fAspect = m_kWndMgr.GetAspect();
|
||||
float fFarClip = m_pyBackground.GetFarClip();
|
||||
|
||||
m_pyGraphic.SetPerspective(30.0f, fAspect, 100.0, fFarClip);
|
||||
|
||||
DWORD t5=ELTimer_GetMSec();
|
||||
|
||||
CCullingManager::Instance().Process();
|
||||
|
||||
DWORD t6=ELTimer_GetMSec();
|
||||
m_kChrMgr.Deform();
|
||||
|
||||
m_pyBackground.RenderCharacterShadowToTexture();
|
||||
|
||||
m_pyGraphic.SetGameRenderState();
|
||||
m_pyGraphic.PushState();
|
||||
|
||||
{
|
||||
long lx, ly;
|
||||
@@ -253,79 +185,42 @@ void CPythonApplication::RenderGame()
|
||||
}
|
||||
|
||||
m_pyBackground.RenderSky();
|
||||
DWORD t7=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.RenderBeforeLensFlare();
|
||||
DWORD t8=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.RenderCloud();
|
||||
DWORD t9=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.BeginEnvironment();
|
||||
m_pyBackground.Render();
|
||||
|
||||
m_pyBackground.SetCharacterDirLight();
|
||||
DWORD t10=ELTimer_GetMSec();
|
||||
m_kChrMgr.Render();
|
||||
DWORD t11=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.SetBackgroundDirLight();
|
||||
m_pyBackground.RenderWater();
|
||||
DWORD t12=ELTimer_GetMSec();
|
||||
m_pyBackground.RenderSnow();
|
||||
m_pyBackground.RenderEffect();
|
||||
DWORD t13=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.EndEnvironment();
|
||||
|
||||
m_kEftMgr.Render();
|
||||
DWORD t14=ELTimer_GetMSec();
|
||||
m_pyItem.Render();
|
||||
DWORD t15=ELTimer_GetMSec();
|
||||
m_FlyingManager.Render();
|
||||
DWORD t16=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.BeginEnvironment();
|
||||
m_pyBackground.RenderPCBlocker();
|
||||
m_pyBackground.EndEnvironment();
|
||||
DWORD t17=ELTimer_GetMSec();
|
||||
|
||||
m_pyBackground.RenderAfterLensFlare();
|
||||
DWORD t18=ELTimer_GetMSec();
|
||||
DWORD tEnd=ELTimer_GetMSec();
|
||||
|
||||
if (GetAsyncKeyState(VK_Z))
|
||||
STATEMANAGER.SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
|
||||
|
||||
if (tEnd-t1<3)
|
||||
return;
|
||||
|
||||
static FILE* fp=fopen("perf_game_render.txt", "w");
|
||||
|
||||
fprintf(fp, "GR.Total %d (Time %d)\n", tEnd-t1, ELTimer_GetMSec());
|
||||
fprintf(fp, "GR.DFM %d\n", t2-t1);
|
||||
fprintf(fp, "GR.EFT.UP %d\n", t3-t2);
|
||||
fprintf(fp, "GR.SHW %d\n", t4-t3);
|
||||
fprintf(fp, "GR.STT %d\n", t5-t4);
|
||||
fprintf(fp, "GR.CLL %d\n", t6-t5);
|
||||
fprintf(fp, "GR.BG.SKY %d\n", t7-t6);
|
||||
fprintf(fp, "GR.BG.LEN %d\n", t8-t7);
|
||||
fprintf(fp, "GR.BG.CLD %d\n", t9-t8);
|
||||
fprintf(fp, "GR.BG.MAIN %d\n", t10-t9);
|
||||
fprintf(fp, "GR.CHR %d\n", t11-t10);
|
||||
fprintf(fp, "GR.BG.WTR %d\n", t12-t11);
|
||||
fprintf(fp, "GR.BG.EFT %d\n", t13-t12);
|
||||
fprintf(fp, "GR.EFT %d\n", t14-t13);
|
||||
fprintf(fp, "GR.ITM %d\n", t15-t14);
|
||||
fprintf(fp, "GR.FLY %d\n", t16-t15);
|
||||
fprintf(fp, "GR.BG.BLK %d\n", t17-t16);
|
||||
fprintf(fp, "GR.BG.LEN %d\n", t18-t17);
|
||||
|
||||
|
||||
fflush(fp);
|
||||
}
|
||||
|
||||
void CPythonApplication::UpdateGame()
|
||||
{
|
||||
DWORD t1=ELTimer_GetMSec();
|
||||
POINT ptMouse;
|
||||
GetMousePosition(&ptMouse);
|
||||
|
||||
CGraphicTextInstance::Hyperlink_UpdateMousePos(ptMouse.x, ptMouse.y);
|
||||
|
||||
DWORD t2=ELTimer_GetMSec();
|
||||
|
||||
//!@# Alt+Tab Áß SetTransfor ¿¡¼ ƨ±è Çö»ó ÇØ°áÀ» À§ÇØ - [levites]
|
||||
//if (m_isActivateWnd)
|
||||
@@ -338,56 +233,27 @@ void CPythonApplication::UpdateGame()
|
||||
s.BuildViewFrustum();
|
||||
}
|
||||
|
||||
DWORD t3=ELTimer_GetMSec();
|
||||
TPixelPosition kPPosMainActor;
|
||||
m_pyPlayer.NEW_GetMainActorPosition(&kPPosMainActor);
|
||||
|
||||
DWORD t4=ELTimer_GetMSec();
|
||||
m_pyBackground.Update(kPPosMainActor.x, kPPosMainActor.y, kPPosMainActor.z);
|
||||
|
||||
DWORD t5=ELTimer_GetMSec();
|
||||
m_GameEventManager.SetCenterPosition(kPPosMainActor.x, kPPosMainActor.y, kPPosMainActor.z);
|
||||
m_GameEventManager.Update();
|
||||
|
||||
DWORD t6=ELTimer_GetMSec();
|
||||
m_kChrMgr.Update();
|
||||
DWORD t7=ELTimer_GetMSec();
|
||||
|
||||
m_kEftMgr.Update();
|
||||
m_kEftMgr.UpdateSound();
|
||||
DWORD t8=ELTimer_GetMSec();
|
||||
|
||||
m_FlyingManager.Update();
|
||||
DWORD t9=ELTimer_GetMSec();
|
||||
m_pyItem.Update(ptMouse);
|
||||
DWORD t10=ELTimer_GetMSec();
|
||||
m_pyPlayer.Update();
|
||||
DWORD t11=ELTimer_GetMSec();
|
||||
|
||||
// NOTE : Update µ¿¾È À§Ä¡ °ªÀÌ ¹Ù²î¹Ç·Î ´Ù½Ã ¾ò¾î ¿É´Ï´Ù - [levites]
|
||||
// ÀÌ ºÎºÐ ¶§¹®¿¡ ¸ÞÀÎ Äɸ¯ÅÍÀÇ Sound°¡ ÀÌÀü À§Ä¡¿¡¼ Ç÷¹ÀÌ µÇ´Â Çö»óÀÌ ÀÖ¾úÀ½.
|
||||
m_pyPlayer.NEW_GetMainActorPosition(&kPPosMainActor);
|
||||
SetCenterPosition(kPPosMainActor.x, kPPosMainActor.y, kPPosMainActor.z);
|
||||
DWORD t12=ELTimer_GetMSec();
|
||||
|
||||
if (PERF_CHECKER_RENDER_GAME)
|
||||
{
|
||||
if (t12-t1>5)
|
||||
{
|
||||
static FILE* fp=fopen("perf_game_update.txt", "w");
|
||||
|
||||
fprintf(fp, "GU.Total %d (Time %d)\n", t12-t1, ELTimer_GetMSec());
|
||||
fprintf(fp, "GU.GMP %d\n", t2-t1);
|
||||
fprintf(fp, "GU.SCR %d\n", t3-t2);
|
||||
fprintf(fp, "GU.MPS %d\n", t4-t3);
|
||||
fprintf(fp, "GU.BG %d\n", t5-t4);
|
||||
fprintf(fp, "GU.GEM %d\n", t6-t5);
|
||||
fprintf(fp, "GU.CHR %d\n", t7-t6);
|
||||
fprintf(fp, "GU.EFT %d\n", t8-t7);
|
||||
fprintf(fp, "GU.FLY %d\n", t9-t8);
|
||||
fprintf(fp, "GU.ITM %d\n", t10-t9);
|
||||
fprintf(fp, "GU.PLR %d\n", t11-t10);
|
||||
fprintf(fp, "GU.POS %d\n", t12-t11);
|
||||
fflush(fp);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void CPythonApplication::SkipRenderBuffering(DWORD dwSleepMSec)
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
|
||||
#include <stb_image.h>
|
||||
|
||||
extern bool PERF_CHECKER_RENDER_GAME;
|
||||
extern D3DXCOLOR g_fSpecularColor;
|
||||
extern BOOL bVisibleNotice = true;
|
||||
extern BOOL bTestServerFlag = FALSE;
|
||||
@@ -76,10 +75,7 @@ PyObject* appEnablePerformanceTime(PyObject* poSelf, PyObject* poArgs)
|
||||
if (!PyTuple_GetInteger(poArgs, 1, &nEnable))
|
||||
return Py_BuildException();
|
||||
|
||||
bool isEnable=nEnable ? true : false;
|
||||
|
||||
if (strcmp(szMode, "RENDER_GAME")==0)
|
||||
PERF_CHECKER_RENDER_GAME = isEnable;
|
||||
// TODO: remove this function
|
||||
|
||||
return Py_BuildNone();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user