출처 : http://leechen.wzsoft.com/ 사이트의 <이준곤> 님이 쓰신 글
디바이스가 바뀔때, 렌더 상태(render-state)나 텍스쳐 스테이지 상태(texture-stage-state), 또는 스트림 소스(stream-source)등이 얼만큼의 비용이 드는지 알고 싶어 할 것이다. 또한 최적화 루틴으로 과부하가 걸리는 상태를 피하고 싶을 것이다. 이럴 때 정확한 함수의 실행 클럭 수치를 파악하고 있다면 좀더 최적화된 게임 개발이 될 것이라 생각된다.
API Call | Avg # of Cycles |
SetVertexDeclaration | 6500 - 11250 |
SetFVF | 6400 - 11200 |
SetVertexShader | 3000 - 12100 |
SetPixelShader | 6300 - 7000 |
SPECULARENABLE | 1900 - 11200 |
SetRenderTarget | 6000 - 6250 |
SetPixelShaderConstant (1 Constant) | 1500 - 9000 |
NORMALIZENORMALS | 2200 - 8100 |
LightEnable | 1300 - 9000 |
SetStreamSource | 3700 - 5800 |
LIGHTING | 1700 - 7500 |
DIFFUSEMATERIALSOURCE | 900 - 8300 |
AMBIENTMATERIALSOURCE | 900 - 8200 |
COLORVERTEX | 800 - 7800 |
SetLight | 2200 - 5100 |
SetTransform | 3200 - 3750 |
SetIndices | 900 - 5600 |
AMBIENT | 1150 - 4800 |
SetTexture | 2500 - 3100 |
SPECULARMATERIALSOURCE | 900 - 4600 |
EMISSIVEMATERIALSOURCE | 900 - 4500 |
SetMaterial | 1000 - 3700 |
ZENABLE | 700 - 3900 |
WRAP0 | 1600 - 2700 |
MINFILTER | 1700 - 2500 |
MAGFILTER | 1700 - 2400 |
SetVertexShaderConstant (1 Constant) | 1000 - 2700 |
COLOROP | 1500 - 2100 |
COLORARG2 | 1300 - 2000 |
COLORARG1 | 1300 - 1980 |
CULLMODE | 500 - 2570 |
CLIPPING | 500 - 2550 |
DrawIndexedPrimitive | 1200 - 1400 |
ADDRESSV | 1090 - 1500 |
ADDRESSU | 1070 - 1500 |
DrawPrimitive | 1050 - 1150 |
SRGBTEXTURE | 150 - 1500 |
STENCILMASK | 570 - 700 |
STENCILZFAIL | 500 - 800 |
STENCILREF | 550 - 700 |
ALPHABLENDENABLE | 550 - 700 |
STENCILFUNC | 560 - 680 |
STENCILWRITEMASK | 520 - 700 |
STENCILFAIL | 500 - 750 |
ZFUNC | 510 - 700 |
ZWRITEENABLE | 520 - 680 |
STENCILENABLE | 540 - 650 |
STENCILPASS | 560 - 630 |
SRCBLEND | 500 - 685 |
TWOSIDEDSTENCILMODE | 450 - 590 |
ALPHATESTENABLE | 470 - 525 |
ALPHAREF | 460 - 530 |
ALPHAFUNC | 450 - 540 |
DESTBLEND | 475 - 510 |
COLORWRITEENABLE | 465 - 515 |
CCW_STENCILFAIL | 340 - 560 |
CCW_STENCILPASS | 340 - 545 |
CCW_STENCILZFAIL | 330 - 495 |
SCISSORTESTENABLE | 375 - 440 |
CCW_STENCILFUNC | 250 - 480 |
SetScissorRect | 150 - 340 |
참고 싸이트 : http://www.circlesoft.org/pages.php?pg=kbasepage&id=12&updateID=18
'게임 개발 > 3D 게임 플밍' 카테고리의 다른 글
SSAO (Screen Space Ambient Occlusion) 처리 기법(소스포함) (0) | 2010.03.17 |
---|---|
SSGI 관련 정리 (소스 포함) (0) | 2010.03.17 |
언리얼 엔진 3 ( Unreal Engine 3 ) (0) | 2009.12.03 |
BSP를 이용한 3D Game Programming (0) | 2005.11.16 |
GLUT 시작 (0) | 2005.11.11 |