Files
XRLib/README.md

46 lines
3.3 KiB
Markdown
Raw Normal View History

2025-08-11 19:48:33 +09:00
# XR Library 1.0
Digital Twin 가상공장 개발 용 라이브러리입니다.
## 주요 기능 및 특징
- **코어 (`UVC.Core`)**
- 애플리케이션의 핵심 로직과 `SingletonScene`과 같은 디자인 패턴을 지원하여 안정적인 개발 기반을 제공합니다.
- **데이터 관리 (`UVC.Data`)**
- **데이터 모델링 (`UVC.Data.Core.DataObject`)**: `DataObject` 클래스는 애플리케이션에서 사용되는 모든 데이터의 기반이 됩니다. `IDataObject` 인터페이스를 구현하며, 데이터의 고유 ID(`Id`), 이름(`Name`), 활성화 상태(`Enable`) 등 공통 속성을 정의합니다. 이를 상속하여 AGV, 설비 등 다양한 종류의 데이터를 표준화된 방식으로 관리할 수 있습니다.
- **데이터 통신**: HTTP, MQTT 등 다양한 프로토콜을 지원하는 Wrapper를 제공하여 외부 시스템과의 데이터 연동을 용이하게 합니다.
- **팩토리 (`UVC.Factory`)**
- **동적 객체 생성**: `AGVManager`와 같이 `DataObject`를 기반으로 씬에 필요한 객체(디지털 트윈, 컴포넌트 등)를 동적으로 생성하고 관리합니다.
- **알람 및 재생**: `AlarmManager`, `PlaybackService` 등을 통해 애플리케이션의 상태 변화에 따른 알람 및 시뮬레이션 재생 기능을 제어합니다.
- **UI 시스템 (`UVC.UI`)**
- **메뉴 & 툴바**: `TopMenuController` 등을 통해 상단 메뉴, 사이드 메뉴, 툴바 등 다양한 형태의 메뉴 시스템을 제공합니다.
- **모달 & 알림**: `Modal` 클래스를 통해 Alert, Confirm, Toast 등 사용자에게 정보를 전달하고 상호작용하는 모달 창을 손쉽게 생성합니다.
- **목록**: 검색, 정렬, 드래그 앤 드롭 기능이 포함된 고성능 목록 UI를 제공합니다.
- **상태 표시**: `UILoading` 로딩 아이콘, `Tooltip` 툴팁 등 사용자에게 현재 상태를 명확하게 전달하는 UI 컴포넌트를 지원합니다.
- **커맨드 패턴 (`UVC.UI.Commands`)**: `ICommand` 인터페이스를 통해 UI 이벤트와 비즈니스 로직을 분리하여 코드의 유지보수성을 높입니다.
- **유틸리티**
- **로깅 (`UVC.Log`)**: `log4net`을 기반으로 한 강력한 로깅 시스템을 제공하여 디버깅 및 운영 효율성을 높입니다.
- **다국어 (`UVC.Locale`)**: 텍스트 기반의 다국어 시스템을 지원하여 손쉽게 글로벌 애플리케이션을 제작할 수 있습니다.
2025-06-04 23:11:59 +09:00
2025-09-03 17:20:21 +09:00
## 사용한 Assets
- **Best MQTT_3.0.4**
- **Best HTTP_3.015**
- **7Zip lzma LZ4 fastLZ zipgzip brotli multiplatform plugins_2.9.2**
- **DOTween Pro_1.0.380**
- **Easy Performant Outline 2D 3D URP HDRP and Built-in Renderer_3.6.2**
- **In-game Debug Console_1.8.2**
- **Shapes2D - Procedural sprites and UI_1.13**
- **Newtonsoft.Json_3.2.1**
- Window > Package Manager > + > Add packacge by name > com.unity.nuget.newtonsoft-json
- **sqlite3.dll**
- sqlite3.dll 파일 Plugins 폴더에 넣기. x86, x64 체크
- **UniTask_2.5.10**
- Window > Package Manager > + > Add packacge from git URL > https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask
- **log4uni_1.2.2**
- https://github.com/HolyShovelSoft/log4uni 다운로드 압축해제 > Assets > Plugins 폴더에 복사