본문 바로가기

레퍼런스/고도엔진

고도엔진, 고닷엔진 (Godot Engine) 튜토리얼 시작

방학 동안 2D 게임을 만들어 보고 싶은데 유니티는 또 사용하고 싶지 않아서 알아보다가 고도엔진이라는 오픈소스 에디터가 있길래 남은 한 달 동안 공부해서 게임을 한번 만들어 보자는 취지에서 튜토리얼을 시작하게 되었습니다.



고도엔진의 특징 : 


https://godotengine.org/features


홈페이지에 기재되어 있는 고도엔진의 특성입니다.



혁신적인 디자인


- 고도엔진의 게임개발에 대한 유니크한 접근을 통해 쉽게 게임을 개발하세요.


  • 게임개발을 위한 노드가 있습니다. 고도는 게임 디자인을 산뜻하게 해 줄 수백개의 내장된 노드들이 있으며, 개발자가 스스로 개발하거나 커스텀할 수 있고 에디터 등이 제공됩니다.

  • 놀라운 씬 시스템을 제공합니다. 인스턴스화와 상속을 하기 위해 지원을 받아 노드 구성을 만드세요.

  • 시각적인 에디터, 깔끔하고 아름다운 상황에 맞는 UI에 필요한 모든 도구를 함께 제공합니다.

  • 아티스트, 레벨 디자이너, 애니메이터 등을 위한 친숙한 컨텐츠 제작 파이프 라인이 마련되어 있습니다.

  • 영구적인 라이브 편집 (게임이 멈추어도 변경점들은 사라지지 않습니다.), 모바일 기기에서도 라이브 편집이 됩니다.

  • 놀라운 도구 시스템을 사용하여 사용자 고유의 사용자 지정 도구를 쉽게 만들 수 있습니다. 



가장 눈에 띄는 3D 엔진 중에 하나


- 완전히 새로운 물리 기반 렌더러는 게임을 놀랍게 보이게 할 여러 기능들을 제공합니다.


  • 혁신적인 구조, 최고의 전진 렌더링을 지연 렌더링의 효율성과 결합합니다.
  • 완벽한 MSAA 지원을 통한 물리적 렌더링
  • 완전한 원리를 갖춘 BSDF의 서브 페이스 산란, 반사, 굴절, 이방성, 클리어코트, 투과율 등
  • 화려한 그래픽을 실시간으로 볼 수 있는 글로벌 조명으로, 저가의 기기에서도 좋은 결과를 얻을 수 있습니다.
  • HDR을 지원하는 새로운 Tonemapper, 다중 표준 곡선 및 자동 노출, 스크린 스페이스 반사, 안개, 블룸, 필드 깊이 등을 포함한 중간 및 사후 처리 효과
  • GLSL 기반의 사용이 쉬운 셰이더 언어로, 내장된 편집기와 코드 완성 기능을 갖추고 있습니다.


쉽게 2D 게임을 생성하세요.


- 고도엔진은 수많은 특징들로 꽉 찬 전용의 헌신적인  2D 엔진입니다.


  • 픽셀 단위로 작업하지만 화면 크기 및 가로 세로 비율에 따라 확대합니다.

  • 타일 지도 편집기(자동 조정, 회전, 사용자 지정 그리드 모양 및 여러 계층 포함)

  • 2D 조명과 일반 지도를 통해 2D 게임을 조금 더 사실적으로 보이게 하세요.

  • 컷아웃이나 스프라이트를 기반으로 게임을 애니메이션화합니다,.

  • 물리학적으로 충돌할 수 없는 유연한 운동학적 제어 장치.



모든 것을 애니메이트하세요.

- 최고로 유연한 에니메이션 시스템.

  • 동물적으로 뼈와 물체에서부터 기능적인 호출에 이르기까지 모든 것을 문자로 나타냅니다.
  • 사용자 지정 전환 곡선과 트윈을 사용하여 놀라운 애니메이션을 생성합니다.
  • 골격과 IK를 포함하는 2D 도구들을 애니메이션 하는 데 도움이 됩니다.
  • 효율적인 최적화 프로그램을 통해 가져온 3D 애니메이션을 포장할 수 있습니다.


완전히 자유로운 스크립트

- 다른 엔진에 비해 많은 선택지가 있습니다.


  • GDScript, Python에 가까운 스크립트 언어로 번거로움 없이 게임을 만들도록 설계되었습니다. 왜 우리 커뮤니티가 GDScript를 사랑하는지 알아보세요.
  • C# 7.0은 Mono를 사용하여 지원합니다.
  • 엔진을 다시 조립할 필요 없이 완전한 C++을 지원합니다.
  • 블록 및 연결을 사용한 시각적 스크립팅
  • 추가 언어, 커뮤니티에서 제공하는 Python, Nim, D 그리고 기타 언어에 대한 지원
  • 구문 강조 표시, 실시간 구문 분석기 및 코드 완료 기능이 포함된 내장 편집기
  • 통합 문서화, 브라우저 및 전체 API 오프라인 검색, 편집기를 종료하지 않고


디버그와 최적화

- 내장 디버거를 이용해 버그를 해결하고 병목현상을 해결하세요.

  • 프로젝트가 실행되는 동안 탐색하고 수정될 수 있습니다. 모바일 장치에서도 마찬가지입니다.
  • 프로젝트를 닫은 후 기본적으로 변경 사항을 유지합니다.
  • 프로파일러 내장, 그래프 플로팅 및 시간 탐색 기능 포함
  • 비디오 메모리 디버거
  • 완전한 스택 추적을 포함한 에러 로거


멀티 플랫폼 에디터

- 어느 데스크톱 OS에서도 게임을 만드세요.


  • Windows, OS X, Linux, FreeBSD, OpenBSD 그리고 Haiku. 32비트 64비트를 모두 지원합니다.
  • 20MB 정도의 적은 용량을 차지합니다.
  • 어떠한 플랫폼에서도 쉽게 컴파일이 가능합니다. (종속 문제 없음)

멀티 플랫폼 개발


- 어디에서도 게임을 개발하세요!


  • 모바일 플랫폼, iOS, 안드로이드, 블랙베리 OS
  • 데스크톱 플랫폼, Windows (또한 UWP), OS X, Linux, BSD and Haiku
  • HTML 그리고 Web Assembly를 이용해서 웹으로 출력
  • 대부분의 플랫폼에 원클릭 개발 & 출력, 쉽게 커스텀 빌드를 할 수 있습니다.


쉬운 팀워크

- 고도엔진은 원활한 팀워크를 위해 처음부터 설계되었다.

  • 친숙한 파일 시스템 사용, Git, Subsersion, Mercurial, PlasticSCM, Perforce 등 과 같은 버전 제어 시스템과 함께 원활하게 작동합니다.
  • 씬 인스턴스화는 팀워크를 쉽게 만들어줍니다. 모든 팀 멤버가 장면에 집중하게 해주게 합니다. 캐릭터, 레벨 등 어떤 것이 될 수도 있습니다. 그리고 서로의 걸림돌이 되지 않게 쉽게 편집할 수 있습니다.
  • 텍스트 기반의 설명 및 최적의 장면 형식.
  • GitHub에서 지원되는 스크립트 구문






 이해되지 않는 부분도 있고 해석이 매끄럽지 못한 부분도 있는데 2D 게임 개발을 하면서 하나씩 직접 느껴봐야 할 거 같네요.