몇 년 전부터 고도를 사용하고 있는 사람으로서 유니티에서 많은 사람들이 오는 것이 흥미롭습니다. 긍정적인 면이 많고 약탈적인 비즈니스 관행을 계속 지원할 필요가 없도록 대안을 찾는 개발자들을 볼 수 있어서 기쁩니다.
하지만 유니티에서 와서 기본적으로 동일한 것을 찾는 사람들을 위해 분명히 하고 싶습니다. 고도는 유니티가 아닙니다. 디자인 목표도 다르고 이력도 다르고 사용자도 다른 엔진입니다. 유니티 스크립트를 고도에 복사하여 붙여넣고 API 호출을 찾아서 교체하는 것이 목표라면 엔진에 매우 실망할 가능성이 높습니다.

이것은 고도가 나쁘고 유니티가 더 좋기 때문이 아닙니다. 그리고 유니티가 나쁘고 고도가 더 좋기 때문이 아닙니다. 둘은 단순히 다릅니다. 네, 둘 다 C#로 스크립트를 작성할 수 있고 3D 및 2D 게임 기능이 있지만 유사점은 여기서 끝납니다. 유니티는 C#에 크게 연결되어 있고 디자인 패턴의 많은 부분이 C#에서 언어로 파생되었습니다. 고도는 그렇지 않으며 마이크로소프트가 고도에게 많은 현금을 기부하고 나서야 모든 종류의 C# 지원을 구현했습니다. 사실 고도의 "메인" 브랜치는 .NET 없이 컴파일되며 C# 지원이 전혀 없습니다.

이것은 당신이 C#에서 발전할 수 없다는 것을 의미하지는 않지만, 만약 당신이 Unity와 같은 방식으로 언어와 긴밀하게 통합되는 엔진을 찾고 있다면, 그것은 존재하지 않을 것입니다. 마찬가지로, 당신이 Unity가 가지고 있는 거대한 사전 구축된 유료 플러그인, 대규모 팀을 위해 설계된 기능, 심층 프로파일링 등 모든 벨과 휘파람을 찾고 있다면, 당신은 그것들을 찾을 수 없을 것입니다.

여기에는 몇 가지 이유가 있습니다. 먼저, Godot은 다른 디자인 철학을 가지고 있습니다. Unity는 거의 20년의 개발 시간을 가진 범용 게임 엔진입니다. Godot은 게임을 단순하게 만드는 것을 중심으로 설계되었으며 기본 도구를 사용하여 보다 복잡한 것으로 구축됩니다. 사용자 지정 스크립트 언어인 GD의 설계조차도 구조를 단순화하고 효율화하여 여러 상속 인터페이스와 추상 클래스가 있는 복잡한 백엔드 데이터 구조보다 노드와 구성에 더 집중할 수 있도록 만들었습니다. 최근 4.0 버전은 GD가 할 수 있는 것을 확장했지만 여전히 단순성과 기능을 염두에 두고 설계되었으며 게임 엔진과 독립적으로 관련된 OOP 관계를 만들지 않았습니다.
더 큰 이유는 고도(Godot)가 더 어리고 유니티(Unity)만큼 자금이 충분하지 않기 때문입니다. 유니티는 현존하는 가장 큰 게임 엔진 중 하나입니다. 시장 점유율이 매우 높고 2005년에 출시되었습니다. 그 이후로 꾸준한 개발이 진행되어 약 18년의 개발 기간을 가지고 있습니다.

반면에 고도는 2014년에 기본적으로 두 사람에 의해 출시되었습니다. 그것은 약 9년 전입니다. 고도는 그 이후 기능과 기여자 모두에서 많이 확장되었지만, 주요 개발자 팀은 여전히 꽤 작고 (흥미롭게도) 주로 에픽과 마이크로소프트의 기부로 살아남았고, 유니티 팀과 비교하면 매우 작습니다. 유니티 게임을 만들기 위해 일하는 수많은 개발자들(그리고 다른 개발자들을 위해 플러그인을 출시하는 것)은 말할 것도 없습니다.

고도는 유니티가 아닙니다. 예산 및 개발 팀의 일부로 개발 시간이 절반에 달했습니다. 그것은 훨씬 적은 수의 개발자가 그것으로 게임을 만드는 일을 하고 있으며, 대부분은 대규모 예산 게임인 AAA가 아닌 단독 또는 매우 소규모 팀입니다. 약간 다른 UI를 가진 유니티를 기대하며 들어간다면 물론, 그것은 측정되지 않을 것입니다.

이러한 한계에도 불구하고 여전히 환상적인 게임을 만들 수 있으며 숙련된 개발자 팀이 이를 통해 놀라운 작업을 수행할 수 있습니다. 또한 오픈 소스이며 쉽게 확장할 수 있으므로 없는 모든 것을 숙련된 프로그래머가 추가할 수 있습니다. 잠재력이 있으며 언젠가는 블렌더가 대형 3D 모델링 및 애니메이션 프로그램에 도전한 것과 같은 방식으로 유니티 및 언리얼과 경쟁할 수도 있지만 블렌더는 1994년부터 어느 정도 개발 단계에 있으며 1998년 첫 번째 버전이 출시되었습니다(그리고 내 연구에서 고도보다 훨씬 많은 FOSS 자금이 지원되었습니다).

엔진의 한계는 여러분이나 여러분의 팀을 위한 것이 아니라는 것을 의미할 수도 있습니다. 괜찮습니다! 대부분의 고도 개발자들은 한계에 꽤 익숙하고 종종 더 집중적인 도구 세트와 간단한 디자인 패턴을 선호합니다. 만약 여러분이 열린 마음으로 엔진에 접근한다면, 여러분 또한 이러한 측면들에 빠져들게 될지도 모릅니다.

하지만 만약 여러분이 아주 적은 자금으로 반년된 엔진을 무료로 사용하기를 원한다면, 여러분은 여기서 그것을 발견할 수 없을 것입니다. 고도는 훌륭한 커뮤니티를 가지고 있고, 도우려고 노력할 것입니다. 하지만 고도가 어떻게 X나 Y를 유니티와 동일하게 하지 않는지, 또는 유니티가 가지고 있는 어떤 기능이 얼마나 부족한지에 대해 반복적으로 글을 올립니다. 고도를 사용하는 사람들은 거의 없는데, 최근 논란이 있기 전에는 대부분의 사람들이 유니티를 사용하지 않았기 때문입니다.

마지막으로, 엔진의 주요 개발자 중 한 명이 고도의 AA/AAA 개발에 대한 이 기사를 읽는 것을 강력히 추천합니다. 만약 그가 제시한 문제가 거래 단절자라면, 결국 실패하게 될 엔진 작업에 많은 시간을 할애한 이전보다 지금 알아보는 것이 더 나을 것입니다.

고도나 고도의 역사에 익숙하지 않은 사람들에게 유용하고, 엔진이 자신에게 맞는지 더 잘 알 수 있기를 바랍니다. 게임을 어떻게 만드든 게임을 만드는 데 행운을 빕니다!



https://www.reddit.com/r/godot/comments/16n46cg/godot_is_not_unity/?share_id=elvQOEZZ6OLChFo_VpX_o&utm_content=2&utm_medium=android_app&utm_name=androidcss&utm_source=share&utm_term=1