GNU GCC는 매우 일반적인 컴파일러이지만 AAA 게임과 같은 대규모 프로젝트에는 거의 사용하지 않는 것 같습니다. 나에게 그것은 잘 작동하지만 아무런 문제가 없었습니다. 그러나 왜 모든 AAA 게임이 인텔 스튜디오와 같은 상용 컴파일러를 사용하는 것 같습니까? 왜 중요한가요? GNU GCC는 또한 인텔이 아닌 모든 시스템에 맞게 코드를 최적화합니다. 왜 인텔 스튜디오와 같은 것들을 방해합니까?
GNU GCC는 매우 일반적인 컴파일러이지만 AAA 게임과 같은 대규모 프로젝트에는 거의 사용하지 않는 것 같습니다. 나에게 그것은 잘 작동하지만 아무런 문제가 없었습니다. 그러나 왜 모든 AAA 게임이 인텔 스튜디오와 같은 상용 컴파일러를 사용하는 것 같습니까? 왜 중요한가요? GNU GCC는 또한 인텔이 아닌 모든 시스템에 맞게 코드를 최적화합니다. 왜 인텔 스튜디오와 같은 것들을 방해합니까?
답변:
인텔의 컴파일러는 다른 컴파일러 일뿐입니다. GCC ++ 및 VC ++는 인텔의 ICC와 마찬가지로 프로덕션 품질 코드를 생성합니다. 주요 차이점은 4 가지 주요 영역에 있습니다.
(대부분의) Intel CPU에서 성능의 모든 마지막 부분을 짜내려고 할 때 AAA 스튜디오는 그 비용을 지불하고 ICC는 약간의 봄을 기꺼이 지불합니다. 위대한 일화 이야기를 보려면 여기 를 참조하십시오 . ICC가 비정품 인텔 명령어 세트 CPU (예 : AMD)에서 제대로 실행되지 않는다는 비난을받는 그의 단점에도주의를 기울이십시오.
일부 콘솔 및 핸드 헬드를 포함한 많은 비 PC 플랫폼은 수정 된 GCC를 기본 / 전용 컴파일러로 사용합니다.
PC에서 대부분의 게임 개발자는 Visual Studio의 컴파일러 만 사용합니다. 컴파일러의 선택은 일반적으로 엔진 디자인 및 그래픽에 비해 런타임 속도에 거의 영향을 미치지 않으며 IDE로 설정된 기능으로 인해 Visual Studio에 비용을 지불했으며 GCC는 설치 및 시작하기가 비교적 어렵습니다. 반복 시간과 생산성을 향상시키는 데별로 도움이되지 않습니다. 모든 사람들이 이미 투자 한 대안과 비교할 때 GCC를 사용해야 할 충분한 이유가 없습니다.
예, AA 게임에 사용할 수 있습니다.
거의 모든 AAA 게임이 상용 컴파일러를 사용하는 이유는 상용 제품이 일반적으로 지원하고 있으며 AAA에서 발생할 수있는 모든 문제를 처리 할 때 24/7 또는 최대한 빨리 도움을 받거나 도움을받을 수 있기 때문입니다. 산업, 시간은 돈을 의미합니다. 큰 팀과 회사, 특히 후자에게는 큰 돈이 걸려있을 때 커뮤니티에 의존하고 싶지 않습니다. 계약에 의한 지원에 투자하는 것이 좋습니다.
반면에 엔진은 SDK에 의존합니다. SDK가 컴파일러를 지원하지 않는 경우, 사용자가 스스로 있고 해결 방법을 수행하는 것이 수익성이 없다는 것을 의미합니다.
마지막으로 최적화. 많은 플레이어가 인텔을 사용하고 있다는 사실을 알고 있다면 게임을 기꺼이 제공하고자합니다.