통합 그래픽 카드 (Integrated VGA) 최적화

다각형 개수의 중요성

요즘 대부분의 그래픽카드에서는 다각형은 개수는 그렇게 중요하지 않다. 보통 객체의 수와 프레임 속도가 더욱더 중요하다. 불행히도 대부분의 오래된 칩 (Intel 945 / GMA 950 와 비슷한 종류)에서는 그렇지 않다. 얼마나 중요한지는 꼭지점 쉐이더 또는 빛의 복잡도 그리고 CPU의 속도(맞다, 대부분의 통합 카드는 꼭지점의 변환과 빛을 CPU에서 한다)에 따라 달라진다.

Big Bang Brain Games은 1-2 꼭지점 빛을 사용하고 픽셀 빛(특히 VertexLit rendering path)을 사용하지 않는 화면에서 절대 25000개 이상의 삼각형을 넘지 않는다. 퀄리티 설정은 프레임 속도가 떨어질 때 자동으로 성능을 높이는데 사용되곤 했다. 그래서 고성능 컴퓨터에서는 픽셀 빛이 활성화된 높은 퀄리티 설정이 사용되었다.

속도를 느려지는 원인은 복잡한 꼭지점 쉐이더와 많은 다각형을 이용한 객체들을 여러번 그리는 것이다.

이 말은:

  • 가능한 VertexLit rendering path를 이용하라. 이것은 얼마나 많은 빛이 존재하건 각 객체를 한번씩만 그린다.
  • 빛을 사용하지 않도록 노력하라. 꼭지점 빛마저도 말이다. 사용자의 기하가 움직인다거나 빛이 움직이면 빛의 사용이 맞는 것이지만 그렇지 않으면 Lightmapper를 이용해서 조명을 굽고 이것은 더 빠르고 보기 좋게 돌아갈 것이다.
  • 기하를 최적화 하라(아래 섹션을 보라).

모델 기하 최적화

모델의 기하를 최적화할때 두가지 기본 룰이 있다:

  • 필요하지 않으면 과도한 양의 면(face)를 사용하지 마세요.
  • UV 맵핑 이음매와 하드한 변의 개수를 가능한 낮추세요.

그래픽 하드웨어가 처리해야하는 실제 꼭지점의 수가 3D 프로그램에서 보여지는 수와는 같지 않음에 주의하라. 모델링 프로그램은 보통 기하 꼭지점 개수를 보여준다. 즉 모델을 만드는데 점의 개수이다.

하지만 그래픽 카드에서는 어떤 꼭지점은 몇개의 점으로 구별되야 한다. 꼭지점이 여러개의 법선(이것은 하드한 변에 있다)을 가지고 있거나 여러개의 UV 좌표를 가지거나 여러개의 꼭지점 색상을 가지면 이 꼭지점은 나뉘어 져야 한다. 그래서 유니티에서 보는 꼭지점의 수는 거의 항상 3D 프로그램에서 보여지는 수와 다릅니다.

빛 굽기

빛을 빛맵이나 꼭지점 색상으로 구우세요. 유니티는 훌륭한 내장된 Lightmapper을 가지고 있고 또한 여러 3D모델링 패키지에 있는 빛맵을 구울수 있다.

빛맵 환경을 만드는 과정은 유니티에서 단순히 빛을 위치시키는 것보다 조금더 걸릴 뿐이다. _그러나_:

  • 훨씬 빠른 속도로 실행 된다. 특히 많은 빛을 가졌을 때 그렇다.
  • 전체적 조명을 구울 수 있으므로 훨씬 좋아 보이다.

차세대 게임 조차도 아직 빛맵핑에 많이 의존하고 있다. 보통 빛맵 환경을 사용하며 하나 또는 두개의 실시간 동적 빛을 사용한다.

역링크