물리, 애니메이션, 타일맵, 대화 기능을 내장한 D 언어용 간편한 2D 게임 엔진입니다.
emilk/egui
웹과 네이티브 환경에서 실행되고 게임 엔진에 임베드할 수 있는, 사용하기 쉬운 Rust 즉시 모드 GUI 라이브러리입니다.
- 스타
- 31,659
- 포크
- 2,228
- 열린 이슈
- 1,068
- 마지막 커밋
- 12시간 전
어떤 프로젝트인가요?
egui는 순수 Rust로 작성된 즉시 모드 GUI 라이브러리입니다. 콜백이 연결된 위젯 트리를 만들어 유지하는 대신, 매 프레임마다 ui.button("Save").clicked() 같은 UI 함수를 호출하고 그 결과에 따라 바로 동작을 수행합니다. 덕분에 애플리케이션의 GUI 코드를 단순하게 유지하고, 화면과 동기화되지 않는 상태가 생기는 것을 방지할 수 있습니다.
egui 자체는 윈도우 관리, 입력 수집 또는 렌더링을 처리하지 않습니다. 매 프레임 삼각형 메시만 생성하며, 이를 그리는 역할은 통합 레이어가 맡습니다. 공식 eframe 프레임워크는 Web, Linux, Mac, Windows 및 Android를 대상으로 앱을 작성할 수 있도록 이 레이어를 제공하며, 커뮤니티 통합을 통해 egui를 다른 엔진에 임베드할 수도 있습니다.
이 프로젝트에는 레이블, 슬라이더, 체크박스, 색상 선택기, 텍스트 편집기 등의 위젯과 레이아웃, 크기 조절 가능한 창, 스크롤 영역, 이미지, AccessKit을 통한 접근성 지원이 포함됩니다. README에 따르면 API는 아직 변경 중이며, 새 릴리스에 호환성을 깨는 변경 사항이 포함될 수 있습니다.
핵심 기능
- 01즉시 모드 API: 매 프레임 실행되는 일반 함수 호출로 UI를 작성합니다
- 02WebAssembly를 통해 웹에서 실행할 수 있으며, eframe을 통해 Linux, Mac, Windows 및 Android에서도 네이티브로 실행됩니다
- 03슬라이더, 텍스트 편집, 색상 선택기, 접이식 섹션 등의 기본 제공 위젯
- 04가로, 세로, 열 및 자동 줄 바꿈 배치를 지원하는 유연한 레이아웃
- 05Windows와 macOS에서 AccessKit을 통한 접근성 지원
- 06출력된 삼각형 메시를 렌더링해 게임 엔진과 통합할 수 있습니다
활용 사례
- 하나의 코드베이스로 크로스 플랫폼 Rust 데스크톱 도구 만들기
- 게임 엔진이나 시뮬레이션에 디버그 또는 튜닝 패널 추가하기
- Rust로 작성하고 WebAssembly로 컴파일하는 간단한 웹 앱 만들기
- 인터랙티브 데이터 시각화 도구를 빠르게 프로토타이핑하기
빠른 시작
- 1
egui 데모 앱을 로컬에서 실행하기
cargo run --release -p egui_demo_app - 2
공식 문서와 예제를 읽고 직접 앱을 만드는 방법 알아보기
사용 전 알아둘 점
- API가 아직 안정되지 않았으며, 새 릴리스에 호환성을 깨는 변경 사항이 포함될 수 있습니다.
- Linux에서는 데모 앱을 실행하기 전에 여러 시스템 패키지를 설치해야 합니다.
- 네이티브처럼 보이는 GUI가 아니며 Rust 개발자만을 대상으로 합니다.
토픽
자주 묻는 질문
- egui은(는) 무엇인가요?
- 웹과 네이티브 환경에서 실행되고 게임 엔진에 임베드할 수 있는, 사용하기 쉬운 Rust 즉시 모드 GUI 라이브러리입니다. egui는 순수 Rust로 작성된 즉시 모드 GUI 라이브러리입니다. 콜백이 연결된 위젯 트리를 만들어 유지하는 대신, 매 프레임마다 ui.button("Save").clicked() 같은 UI 함수를 호출하고 그 결과에 따라 바로 동작을 수행합니다. 덕분에 애플리케이션의 GUI 코드를 단순하게 유지하고, 화면과 동기화되지 않는 상태가 생기는 것을 방지할 수 있습니다.
- egui은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- egui은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- egui은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. egui의 마지막 커밋은 2026년 10월 21일입니다.
- egui은(는) 어디에 사용할 수 있나요?
- 하나의 코드베이스로 크로스 플랫폼 Rust 데스크톱 도구 만들기 게임 엔진이나 시뮬레이션에 디버그 또는 튜닝 패널 추가하기 Rust로 작성하고 WebAssembly로 컴파일하는 간단한 웹 앱 만들기 인터랙티브 데이터 시각화 도구를 빠르게 프로토타이핑하기
- egui는 어떻게 설치하나요?
- egui 데모 앱을 로컬에서 실행하기: cargo run --release -p egui_demo_app 공식 문서와 예제를 읽고 직접 앱을 만드는 방법 알아보기
- egui은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/emilk/egui
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
고정 팔레트와 저해상도 화면으로 픽셀 아트 게임을 만들 수 있는 Python용 레트로 게임 엔진입니다.
Linux, macOS, Windows에서 로컬 재생과 Spotify Connect를 지원하는 가벼운 Rust 기반 네이티브 Spotify 데스크톱 클라이언트입니다.
AI 생성 픽셀 아트를 고정 팔레트의 깔끔하고 일관된 픽셀 그리드에 맞추는 Rust CLI 및 WASM 도구입니다.
Dear ImGui는 디버그, 도구 및 게임 엔진 인터페이스를 위한 가볍고 의존성이 적은 C++ 즉시 모드 GUI 라이브러리입니다.
2D/3D 그래픽, 입력, 오디오와 크로스 플랫폼 지원을 제공하고 외부 의존성이 없는 간단한 게임 개발용 C 라이브러리입니다.