Castle Game Engine

Castle Game Engine은 Object Pascal로 작성된 자유·오픈 소스 2D·3D 게임 엔진이다. Michalis Kamburelis와 공개 개발 공동체가 유지하며 Free Pascal과 Delphi를 이용해 게임, 시뮬레이션 및 인터랙티브 시각화 프로그램을 제작할 수 있...

분류게임 엔진 또는 게임 제작 프레임워크
개발 주체Michalis Kamburelis 및 Castle Game Engine 공동체
작성 언어Object Pascal
게임 개발 언어Object Pascal
주요 기술glTF·X3D·IFC, 물리·오디오, 2D·3D
지원 플랫폼Windows, Linux, macOS, Android, iOS, 웹 등
라이선스엔진 LGPL 2.0 이상·정적 링크 예외; 편집기 GPL
소스·기술 자료프로젝트 자료
공식 웹사이트공식 사이트
컴파일러Free Pascal, Delphi
편집기Castle Editor
라이선스 구분게임 엔진 코어·편집기·예제별로 다름
자산 형식glTF, X3D, IFC
프로젝트공개 개발

Castle Game Engine은 Object Pascal로 작성된 자유·오픈 소스 2D·3D 게임 엔진이다. Michalis Kamburelis와 공개 개발 공동체가 유지하며 Free Pascal과 Delphi를 이용해 게임, 시뮬레이션 및 인터랙티브 시각화 프로그램을 제작할 수 있다. 통합 시각 편집기와 프로그래밍 API를 제공하며 Lazarus IDE와의 연동도 지원한다.[1]

장면에는 카메라와 조명·3차원 모델·사용자 인터페이스를 배치할 수 있고, glTF와 X3D 등 다양한 파일 형식으로 콘텐츠를 불러올 수 있다. 장면 노드는 공간 좌표와 변환을 관리하며 애니메이션·입력·충돌 및 사운드 기능을 게임 로직과 결합한다. 게임에 따라 데스크톱과 모바일용 입력·화면 구성을 달리할 수 있다.

Castle Editor는 장면과 구성 요소를 시각적으로 편집하고 결과를 시험하는 개발 도구다. 프로그래머는 Pascal 유닛을 사용해 게임 규칙과 런타임 기능을 확장하며 Free Pascal Compiler 또는 Delphi의 컴파일러·디버거를 이용한다. Lazarus와의 연동이 가능하지만 엔진이 Lazarus IDE 자체에 필수로 종속된 것은 아니다.

게임 엔진 코어에는 LGPL 2.0 이상과 정적 링크 예외가 적용돼 비공개 소스의 상업 게임에서도 사용할 수 있다. 다만 코어 변경분의 재배포 의무, 예제 코드의 BSD 라이선스, 시각 편집기에 적용되는 GPL은 서로 구분해야 한다. 편집기를 이용해 게임을 만든다는 사실만으로 게임의 전체 소스가 자동으로 GPL이 되는 것은 아니다.[2]

Castle Game Engine은 C++·C# 대신 Pascal 도구 생태계를 선택한 개발자에게 통합 렌더링·장면 및 에셋 도구를 제공한다. 낮은 수준의 렌더링 라이브러리인 OGRE와는 달리 게임 개발용 편집기와 실행 프레임워크를 함께 제공하며, 소스 공개 및 상용 배포 범위는 각 구성 요소의 라이선스에 따라 달라진다.

역사

개발 조직 및 계보

엔진 아키텍처

렌더링과 그래픽스

객체·장면·게임 규칙

프로그래밍과 스크립팅

물리·애니메이션·AI

제작 도구와 자산 처리

지원 플랫폼

라이선스와 소스 공개

활용 게임

관련 문서

  1. Castle Game Engine 공식 문서 ↩
  2. Castle Game Engine 라이선스 ↩