Android에서 작고 효율적으로 동작하도록 설계된 Android, iOS, Linux, macOS, Windows 및 WebGL2용 실시간 물리 기반 렌더링 엔진입니다.
bkaradzic/bgfx
Direct3D, Metal, OpenGL, Vulkan, WebGL을 추상화해 자체 엔진에 연결할 수 있는 크로스 플랫폼 C++ 렌더링 라이브러리입니다.
- 스타
- 17,616
- 포크
- 2,163
- 열린 이슈
- 66
- 마지막 커밋
- 11시간 전
어떤 프로젝트인가요?
bgfx는 애플리케이션과 그래픽 API 사이에서 동작하는 렌더링 라이브러리입니다. Direct3D 11/12, Metal, OpenGL, OpenGL ES, Vulkan, WebGL 각각에 맞춰 별도의 코드를 작성하는 대신, 개발자는 단일 인터페이스를 통해 드로우 콜을 전달하고 bgfx가 대상 플랫폼에서 사용할 수 있는 백엔드로 이를 처리합니다. bgfx는 "엔진이나 프레임워크는 직접 가져오는" 방식을 염두에 두고 설계됐기 때문에, 씬 관리나 에셋 파이프라인을 갖춘 완전한 게임 엔진을 제공하는 대신 렌더링을 담당합니다.
이 라이브러리는 Windows, Linux, macOS, iOS, tvOS, Android, Raspberry Pi와 Emscripten을 통한 WebAssembly를 지원하며, C#, Python, Rust, Zig, Java, Go, Lua 등을 위한 바인딩도 제공합니다. 프로젝트는 BSD-2-Clause 라이선스를 따르며, HARFANG 3D 프레임워크와 게임 Crypt of the NecroDancer 등 출시된 여러 게임과 도구에서 사용되고 있습니다.
핵심 기능
- 01단일 API로 Direct3D 11/12, Metal, OpenGL, OpenGL ES, Vulkan, WebGL을 지원합니다.
- 02Wasm/Emscripten을 포함해 데스크톱, 모바일, 콘솔 라이선스 기반 플랫폼, 웹에서 실행됩니다.
- 03C#, Python, Rust, Zig, Java, Go, Lua 등 다양한 언어의 바인딩을 제공합니다.
- 04기존 엔진이나 프레임워크를 대체하기보다 그 안에 통합해 사용하는 것을 목표로 설계됐습니다.
- 05BSD-2-Clause 라이선스를 따릅니다.
활용 사례
- 커스텀 게임 엔진이나 애플리케이션 프레임워크에 여러 백엔드를 지원하는 렌더링 기능 추가
- 데스크톱과 모바일에서 모두 실행해야 하는 3D 도구나 시각화 앱 개발
- WebGL 또는 WebAssembly를 통해 브라우저 기반 콘텐츠용 그래픽 레이어 배포
- bgfx 바인딩이 제공되는 언어로 렌더링 코드 프로토타이핑
빠른 시작
- 1
사용 중인 플랫폼과 컴파일러에 맞는 공식 빌드 가이드를 읽어 보세요
사용 전 알아둘 점
- 렌더링 라이브러리이며 완전한 엔진은 아니므로, 자체 엔진이나 프레임워크를 준비해야 합니다.
- GNM 백엔드는 라이선스를 보유한 PS4 개발자만 사용할 수 있습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- bgfx은(는) 무엇인가요?
- Direct3D, Metal, OpenGL, Vulkan, WebGL을 추상화해 자체 엔진에 연결할 수 있는 크로스 플랫폼 C++ 렌더링 라이브러리입니다. bgfx는 애플리케이션과 그래픽 API 사이에서 동작하는 렌더링 라이브러리입니다. Direct3D 11/12, Metal, OpenGL, OpenGL ES, Vulkan, WebGL 각각에 맞춰 별도의 코드를 작성하는 대신, 개발자는 단일 인터페이스를 통해 드로우 콜을 전달하고 bgfx가 대상 플랫폼에서 사용할 수 있는 백엔드로 이를 처리합니다. bgfx는 "엔진이나 프레임워크는 직접 가져오는" 방식을 염두에 두고 설계됐기 때문에, 씬 관리나 에셋 파이프라인을 갖춘 완전한 게임 엔진을 제공하는 대신 렌더링을 담당합니다.
- bgfx은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- bgfx은(는) BSD-2-Clause 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- bgfx은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. bgfx의 마지막 커밋은 2026년 11월 6일입니다.
- bgfx은(는) 어디에 사용할 수 있나요?
- 커스텀 게임 엔진이나 애플리케이션 프레임워크에 여러 백엔드를 지원하는 렌더링 기능 추가 데스크톱과 모바일에서 모두 실행해야 하는 3D 도구나 시각화 앱 개발 WebGL 또는 WebAssembly를 통해 브라우저 기반 콘텐츠용 그래픽 레이어 배포 bgfx 바인딩이 제공되는 언어로 렌더링 코드 프로토타이핑
- bgfx는 어떻게 설치하나요?
- 사용 중인 플랫폼과 컴파일러에 맞는 공식 빌드 가이드를 읽어 보세요
- bgfx은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/bkaradzic/bgfx
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
OGRE는 C++와 Python으로 3D 애플리케이션을 만들 수 있도록 Vulkan, Direct3D, OpenGL을 추상화하는 모듈형 C++ 렌더링 엔진입니다.
GPU 포인터와 디스크립터 힙을 사용해 버퍼와 디스크립터 세트를 대체하는 Metal 4 및 Vulkan 1.4용 최소한의 C++20 그래픽 라이브러리입니다.
2D/3D 그래픽, 입력, 오디오와 크로스 플랫폼 지원을 제공하고 외부 의존성이 없는 간단한 게임 개발용 C 라이브러리입니다.
Stride는 사실적인 렌더링과 VR을 지원하는 C# 기반 무료 오픈소스 크로스 플랫폼 게임 엔진이며, Game Studio라는 비주얼 에디터를 제공합니다.