LWJGL이 OpenGL 또는 Ogre3D의 Unity 구현보다 훨씬 느린 이유는 무엇입니까? 내가 테스트 한 것에 대해 "벤치 마크"로 시작하겠다. 화면에 35 개 삼각형LWJGL과 다른 OpenGL 구현 간의 주요 성능 차이에 대한 설명
(스탠포드 드래곤 수정) 장소 : 3570k의 @의 4.3GHZGTX 780 1150 MHZ
첫 번째 테스트 @ -
I5 :
하드웨어
결과 :
- GTX 780 ~ 300 FPS (UNITY3D 사용)
- GTX 780 (OGRE3D 사용) ~ 280 FPS
번째 테스트에서 렌더링시 (LWJGL 사용) 37 FPS
- GTX 780 렌더에서 렌더링 : 질감/(I 주위에 20 만 정점을 믿고?) 승 크라이 텍 Sponza 렌더링
결과 :
- GTX 780
- GTX 780 FPS (130) ~ (AT OGRE3D 사용) 렌더링 (UNITY3D 사용) FPS 150 ~에
- GTX 780 렌더 (LWJGL 사용) 2 FPS에서 렌더링
일반적 I 사용하거나 Ogre3D, Unity3D, 또는 Panda3D를 사용하여 게임 프로젝트를 렌더링 할 수 있지만 프레임 속도의 차이는 엄청납니다. Unity가 Occlusion Culling과 같은 것을 가지고 있기 때문에 일반적으로 가장 빠르지 만 Ogre3D와 유사한 호출을 사용할 때도 LWJGL과 비슷한 결과를 기대할 것입니다 ... Ogre3D와 LWJGL은 모두 Front Face 만 컬링하고 있지만 LWJGL은 그렇지 않습니다. 모든 종류의 렌더링과 비교하여 성능이 향상됩니다. 마지막으로, LWJGL은 Sponza를 렌더링 할 때 RAM 사용량을 2.5GB로 줄이는 경향이 있지만 다른 결과는 설명하지 않습니다.
LWJGL은 ByteBuffers 및 JNA 호출을 사용하여 자바 기반입니다. 이들은 자체적으로 저렴하지 않습니다. –
LWJGL **은 OpenGL 구현이 아닙니다. GPU 드라이버는 OpenGL 구현입니다. LWJGL은 OpenGL을 사용하고 같은 시스템에서 실행되는 모든 다른 프로그램과 동일한 OpenGL 드라이버 (= 구현)와 인터페이스하는 * 언어 바인딩입니다. – datenwolf