프로젝트 소개
egui("이-구이"로 발음)는 Rust용으로 간단하고 빠르며 이식성이 높은 즉시 모드 GUI 라이브러리입니다. 웹, 네이티브에서 실행되며 게임 엔진에 통합할 수 있습니다. 이 라이브러리는 단순성, 응답성, 이식성에 중점을 두고 가장 사용하기 쉬운 Rust GUI 라이브러리가 되도록 설계되었습니다.
주요 기능은 다음과 같습니다:
- **위젯**: 레이블, 버튼, 슬라이더, 텍스트 편집, 색상 선택기 등.
- **레이아웃**: 가로, 세로, 열, 자동 줄 바꿈.
- **텍스트 편집**: 여러 줄, 복사/붙여넣기, 실행 취소, 이모지 지원.
- **창**: 자동 크기 조정 및 위치 지정으로 이동, 크기 조정, 최소화, 닫기.
- **영역**: 크기 조정, 스크롤, 접이식 헤더, 패널.
- **렌더링**: 앤티앨리어싱된 선, 원, 텍스트, 볼록 다각형.
- **접근성**: 화면 판독기를 위한 선택적 AccessKit 지원.
- **사용자 지정**: `Context::set_style`을 통한 색상, 간격, 글꼴, 크기.
즉시 모드 패러다임을 사용하여 UI가 매 프레임마다 재구축되므로 콜백과 상태 동기화 문제를 제거하여 코드를 단순화합니다. 이 접근 방식은 사용하기 쉽지만 복잡한 레이아웃에는 덜 강력할 수 있습니다.
공식 통합에는 웹 및 네이티브 앱용 `eframe`, OpenGL 렌더링용 `egui_glow`, WebGPU용 `egui-wgpu`, 창 처리용 `egui-winit`이 포함됩니다. Bevy와 같은 게임 엔진용 타사 통합도 제공됩니다.
개발자에게 egui는 Rust에서 간단한 GUI를 만들거나 게임 엔진에 GUI를 추가하는 데 이상적입니다. 프레임워크가 아니라 호출하는 라이브러리이며, 네이티브 모양의 인터페이스나 복잡한 유지 모드 애플리케이션을 위한 것은 아닙니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.