판 비교

이전빈 문서 (처음 만든 판)
이후#160 · AI 조사: 게임 제작 도구 문서 · GGWiki 자동 ·
+116줄−0줄+6,355자
1번째 줄 근처
추가: ## 개요
추가: LibGDX(libGDX)는 자바 프로그래밍 언어로 작성되었으며 성능 의존적인 코드를 위해 일부 C와 C++ 컴포넌트를 포함하는 자유-오픈 소스 게임 개발 애플리케이션 프레임워크이다. 동일 코드 베이스를 사용하여 데스크톱과 모바일 게임 개발을 가능하게 하며, 마이크로소프트 윈도우, 리눅스, macOS, 안드로이드, iOS, 블랙베리 OS, WebGL 지원 웹 브라우저를 지원하는 크로스 플랫폼이다[1][2][3]. OpenGL(ES) 기반으로 작동하며, 공식 사이트에서는 "검증되고 견고한 환경에서 빠른 프로토타이핑과 신속한 반복 개발을 제공한다"고 설명한다[4]. 라이선스는 아파치 라이선스 2.0이며, GNU 약소 일반 공중 사용 허가서(LGPL)도 함께 명시되어 있다[1].
추가:
추가: ## 역사
추가:
추가: ### 초기 개발과 AFX에서 LibGDX로
추가:
추가: 2009년 중반, LibGDX의 창시자인 마리오 제크너(Mario Zechner)는 안드로이드 게임을 만들고자 AFX(Android Effects)라는 프레임워크 개발을 시작했다. 데스크톱에서 안드로이드 기기로 변경 사항을 배포하는 과정이 번거로워지자, 그는 AFX를 데스크톱에서도 작동하도록 수정하여 프로그램 테스트를 용이하게 만들었다. 이것이 나중에 LibGDX로 알려지게 된 게임 프레임워크의 첫걸음이었다[3].
추가:
추가: ### 오픈 소스 전환과 라이선스 변경
추가:
추가: 2010년 3월, 제크너는 AFX를 오픈 소스로 전환하고 구글 코드(Google Code)에 GNU 약소 일반 공중 사용 허가서(LGPL) 하에 호스팅했다. 당시 그는 "이 프레임워크를 데스크톱 게임 제작에 사용하는 것은 의도하지 않았다"고 밝히며 안드로이드를 주 타겟으로 삼았다. 4월에는 첫 기여자가 생겼고, 10월에는 네이선 스위트(Nathan Sweet)가 합류하여 결국 주요 기여자가 되고 저작권을 공유하게 되었다[3].
추가:
추가: 제크너가 Box2D JNI 래퍼를 만들면서 물리 게임이 유행하던 당시 더 많은 사용자와 기여자를 끌어모았고, 이로 인해 안드로이드 관련 많은 문제가 해결되었다. LGPL이 안드로이드에 적합하지 않다는 많은 사용자의 제안에 따라, 2010년 7월 라이선스를 아파치 라이선스 2.0으로 변경하여 클로즈드 소스 상업 게임에서도 프레임워크를 사용할 수 있게 했다. 같은 달 phpBB 포럼이 개설되었다[3].
추가:
추가: ### 기술적 기반 다지기 (2011~2012)
추가:
추가: 2011년 1월, 자바 사운드(Java Sound) 문제로 인해 데스크톱 오디오 구현이 OpenAL로 전환되었다. 오픈 소스 STB 라이브러리에 의존하는 작은 이미지 조작 라이브러리 Gdx2D 개발도 완료되었다. 2011년 나머지 기간은 UI 라이브러리 추가와 3D API 기초 작업에 쓰였다[3].
추가:
추가: 2012년 초, 제크너는 JNI 바인딩 개발을 쉽게 하는 작은 헬퍼 라이브러리 gdx-jnigen을 만들었다. 이를 통해 이후 몇 달 동안 gdx-audio와 gdx-freetype 확장이 개발될 수 있었다. 구글의 PlayN 크로스 플랫폼 게임 개발 프레임워크가 구글 웹 툴킷(GWT)을 사용해 자바를 자바스크립트로 컴파일하는 방식에서 영감을 받아, 제크너는 수 주에 걸쳐 HTML/자바스크립트 백엔드를 작성하여 LibGDX 애플리케이션이 WebGL 지원 브라우저에서 실행되도록 했다. 구글이 PlayN을 포기한 후 마이클 베인(Michael Bayne)이 유지보수하며 iOS 지원을 추가했고, LibGDX는 이 작업의 일부를 자사의 모노터치(MonoTouch) 기반 백엔드에 활용했다[3].
추가:
추가: ### 인프라 이전과 버전 관리 변경
추가:
추가: 2012년 8월, 프로젝트는 버전 관리 시스템을 서브버전(Subversion)에서 깃(Git)으로 전환하고 구글 코드에서 깃허브(GitHub)로 이전했다. 다만 이슈 트래커와 위키는 1년 더 구글 코드에 남았다. 주요 빌드 시스템도 메이븐(Maven)으로 변경되어 서로 다른 IDE를 사용하는 개발자들이 협업하기 쉬워졌다[3].
추가:
추가: ### iOS 백엔드 교체와 3D API 확장
추가:
추가: 모노터치 iOS 백엔드 문제로 니클라스 테르니히(Niklas Thernig)가 2013년 3월 RoboVM 백엔드를 작성했고, 9월에 프로젝트에 통합되었다. 2013년 3월부터 5월까지 새로운 3D API가 개발되어 라이브러리에 통합되었다[3].
추가:
추가: ### 웹사이트 개편과 커뮤니티 성장
추가:
추가: 2013년 6월, 프로젝트 웹사이트가 개편되어 사용자가 LibGDX로 만든 게임을 제출할 수 있는 갤러리가 생겼다. 2016년 1월 기준 3000개 이상의 게임이 제출되었다[3].
추가:
추가: 소스 코드가 깃허브로 이전된 지 1년 후인 2013년 9월, 이슈 트래커와 위키도 구글 코드에서 깃허브로 이전했다. 같은 달 빌드 및 의존성 관리 시스템을 메이븐에서 그레이들(Gradle)로 전환했다[3].
추가:
추가: ### 1.0 릴리스와 수상
추가:
추가: 2014년 초 정리 단계를 거쳐, 프로젝트 시작 4년 만인 2014년 4월 20일 LibGDX 버전 1.0이 출시되었다[1][3]. 2014년 LibGDX는 연례 듀크스 초이스 어워드(Duke's Choice Award) 수상자 중 하나로 선정되었으며, "플랫폼 독립성에 초점을 맞춘 점"이 선정 이유로 꼽혔다[3].
추가:
추가: ### iOS 백엔드 재변경과 최신 버전
추가:
추가: 2016년 4월, RoboVM 중단에 따라 iOS 백엔드를 인텔의 멀티 OS 엔진(Multi-OS Engine)으로 전환할 것이 발표되었다. 2016년 5월 16일 LibGDX 1.9.3 릴리스와 함께 멀티 OS 엔진이 대안으로 제공되었으며, 기본적으로는 RoboVM 오픈 소스 버전의 자체 포크를 사용한다[3].
추가:
추가: 공식 사이트 기준 최신 버전은 2025년 10월 20일 출시된 1.14.0과 2026년 5월 28일 출시된 1.14.1, 1.14.2이다[4].
추가:
추가: ## 기능과 사용법 개요
추가:
추가: ### 크로스 플랫폼 아키텍처
추가:
추가: LibGDX는 개발자가 자신의 데스크톱 PC에서 애플리케이션을 작성, 테스트, 디버깅하고 동일한 코드를 안드로이드에서 사용할 수 있게 한다. 일반적인 윈도우/리눅스 애플리케이션과 안드로이드 애플리케이션 간의 차이를 추상화하며, 주요 목표는 데스크톱과 모바일 기기 간의 완전한 호환성을 제공하는 것이다. 주요 차이는 속도와 처리 능력뿐이다. 일반적인 개발 주기는 데스크톱 PC에 최대한 머무르면서 주기적으로 안드로이드에서 프로젝트가 여전히 작동하는지 확인하는 식으로 이루어진다[3].
추가:
추가: ### 백엔드 시스템
추가:
추가: 라이브러리는 다양한 백엔드를 통해 플랫폼별 코드를 투명하게 사용하여 호스트 플랫폼의 기능에 접근한다. 대부분의 경우 개발자는 스타터 클래스(런처라고도 함)를 제외하고 플랫폼별 코드를 작성할 필요가 없다. 스타터 클래스는 백엔드에 따라 다른 설정이 필요하기 때문이다[3].
추가:
추가: * **데스크톱**: 경량 자바 게임 라이브러리(LWJGL)를 사용한다. 실험적인 JGLFW 백엔드도 있었으나 더 이상 개발되지 않는다. 버전 1.8에서 새로운 LWJGL 3 백엔드가 도입되어 기존 LWJGL 2 백엔드를 대체할 예정이다[3].
추가: * **HTML5**: 구글 웹 툴킷(GWT)을 사용하여 자바를 자바스크립트 코드로 컴파일하며, 이는 일반 브라우저 환경에서 실행된다. LibGDX는 직접 지원되지 않는 표준 API의 여러 구현을 제공하며, 특히 리플렉션(reflection)이 주목할 만하다[3].
추가: * **안드로이드**: 안드로이드 SDK로 컴파일된 자바 코드를 실행한다[3].
추가: * **iOS**: RoboVM의 커스텀 포크를 사용하여 자바를 네이티브 iOS 명령어로 컴파일한다. RoboVM 중단 이후 인텔의 멀티 OS 엔진이 대안으로 제공되고 있다[3].
추가:
추가: ### 기타 JVM 언어 지원
추가:
추가: LibGDX는 주로 자바로 작성되었으나, 컴파일된 바이트코드는 언어 독립적이어서 많은 다른 JVM 언어로 직접 라이브러리를 사용할 수 있다. 문서에서는 실론(Ceylon), 클로저(Clojure), 코틀린(Kotlin), 자이썬(Jython), JRuby, 스칼라(Scala)와의 상호 운용성을 명시하고 있다[3].
추가:
추가: ### 주요 확장 기능
추가:
추가: 공식 및 서드파티 확장이 여러 가지 존재하여 라이브러리에 추가 기능을 제공한다[3].
추가:
추가: * **gdxAI**: 2014년 10월 버전 1.4.1과 함께 메인 라이브러리에서 분리되어 별도 저장소로 이동한 인공지능(AI) 프레임워크다. 초기에는 LibGDX용으로 만들어졌으나 다른 프레임워크에서도 사용할 수 있다. 경로 탐색, 의사 결정, 이동 등 게임에 유용한 AI에 초점을 맞춘다[3].
추가: * **gdx-freetype**: 정적 비트맵 이미지 대신 런타임에 FreeType 폰트를 렌더링하는 데 사용된다. 비트맵 이미지는 확장이 잘 되지 않기 때문이다[3].
추가: * **Box2D**: Box2D 물리 라이브러리 래퍼로, 2010년에 도입되었고 1.0 릴리스와 함께 확장으로 이동했다[3].
추가: * **packr**: 애플리케이션에 커스텀 JRE를 번들로 포함하여 최종 사용자가 별도로 JRE를 설치할 필요가 없도록 돕는 도구다[3].
추가:
추가: ## 생태계·커뮤니티
추가:
추가: ### 공식 커뮤니티 채널
추가:
추가: LibGDX는 디스코드(Discord), 레딧(Reddit), 스택 오버플로(Stack Overflow) 등 다양한 플랫폼에서 매우 활발한 커뮤니티를 보유하고 있다. 공식 사이트는 "시작하기 좋은 곳을 찾는다면 우리의 디스코드 서버가 단연 올바른 곳"이라고 안내한다[4]. 깃허브(GitHub), 위키, 패트리온(Patreon)도 커뮤니티 허브로 운영된다[4].
추가:
추가: ### 게임 잼
추가:
추가: 커뮤니티는 정기적으로 다양한 주제의 LibGDX 게임 잼을 개최한다. 이는 LibGDX와 커뮤니티를 알아가기에 이상적인 기회다[4]. 2015년 12월 18일부터 2016년 1월 18일까지 RoboVM, itch.io, Robotality와 함께 첫 LibGDX 게임 잼이 열렸다. 초기 180개 주제 제안 중 "Life in space"(우주에서의 삶)가 메인 테마로 선정되었으며, 대회 기간 동안 83개의 게임이 제작되었다[3]. 이후에도 2025년 12월(35회), 2026년 3월(36회) 등 정기적으로 잼이 이어지고 있다[4].
추가:
추가: ### 쇼케이스와 서드파티 생태계
추가:
추가: 공식 사이트 쇼케이스 섹션에는 Pathway(Robotality), Residual(Orangepixel), Space Haven(Bugbyte Ltd.), Delver(Priority Interrupt), Transfinite Dungeon(icefill), Forsaken Portals(Pottgames) 등 LibGDX로 제작된 게임들이 전시되어 있다[4]. "광범위한 서드파티 생태계"가 존재하며, 많은 게임이 오픈 소스로 공개되어 있다[4].
추가:
추가: ## 사용 사례·작품
추가:
추가: LibGDX로 개발되었거나 개발에 사용된 주요 게임 및 애플리케이션은 다음과 같다[3].
추가:
추가: * **Ingress**: Niantic의 위치 기반 AR 게임. Ingress Prime으로 재출시되기 전 버전.
추가: * **Slay the Spire**: MegaCrit의 로그라이크 덱 빌딩 카드 게임.
추가: * **Delver**: Priority Interrupt의 1인칭 로그라이크 액션 게임. 공식 사이트 쇼케이스에도 등장한다[4].
추가: * **Mindustry**: Anuken의 샌드박스 타워 디펜스/팩토리 게임.
추가: * **Shattered Pixel Dungeon**: Evan Debenham의 로그라이크 게임. Pixel Dungeon 포크.
추가: * **Wildermyth**: Worldwalker Games의 파티 기반 전술 RPG.
추가: * **Spine**: Esoteric Software의 2D 스켈레탈 애니메이션 도구. 게임이 아닌 제작 도구임에도 LibGDX로 개발되었다.
추가:
추가: ## 평가
추가:
추가: ### 기술적 평가
추가:
추가: LibGDX는 "자바 플랫폼의 '한 번 작성, 어디서나 실행' 약속을 게임 개발에 특화하여 실현하는 것"을 목표로 한다. 창시자 마리오 제크너는 "LibGDX의 목표는 자바 플랫폼의 '한 번 작성, 어디서나 실행' 약속을 게임 개발에 특화하여 이행하는 것"이라고 밝혔다[3].
추가:
추가: 공식 사이트는 "신중한 API 설계와 커스텀 컬렉션 사용으로 ART/자바스크립트 환경에서 가비지 컬렉션을 피하는 데 중점을 둔다"고 강조하며, "견고한 기반과 문서를 갖춘 잘 검증되고 신뢰할 수 있는 프레임워크"라고 자평한다[4].
추가:
추가: ### 수상 내역
추가:
추가: 2014년 연례 듀크스 초이스 어워드 수상자로 선정되었으며, 플랫폼 독립성에 대한 기여가 인정받았다[3].
추가:
추가: ### 커뮤니티 평가
추가:
추가: "매우 환영하는 게임 및 애플리케이션 개발자 커뮤니티로부터 훌륭한 지원을 받을 수 있다"는 점이 강점으로 꼽힌다[4]. 정기적인 게임 잼 개최와 활발한 서드파티 생태계는 커뮤니티의 건강성을 보여주는 지표로 작용한다[3][4].
추가:
추가: 이 문서는 GGWiki AI가 공개 자료(아래 출처)를 조사해 새로 쓴 초안입니다. 틀린 내용은 편집하거나 이의 제기로 알려 주세요.