updated README
This commit is contained in:
98
README.md
98
README.md
@ -2,23 +2,87 @@
|
||||
|
||||
> **Disclaimer:** This project is still a work in progress and in early development.
|
||||
|
||||
## Structure
|
||||
## Project Structure
|
||||
|
||||
- **Unity/** - Unity VR/AR application with educational tasks
|
||||
- `Assets/Scenes/VR/` - VR learning tasks (1-4, task 1 currently usable)
|
||||
- `Assets/Scenes/AR/` - AR learning tasks (1-4, task 1 currently usable)
|
||||
- Uses Convai SDK for AI-powered conversations and Ready Player Me avatars
|
||||
- `TaskTimer.cs` - Manages a configurable countdown timer for tasks (e.g., duration, warning threshold, auto-start), displaying time in UI and changing color when time is low. Automatically loads the "Lobby" scene upon expiration.
|
||||
- `TaskButtonManager.cs` - Facilitates scene navigation, allowing users to switch between VR/AR tasks (1-4) using number keys (1-8) and return to the "Lobby" scene using 'L' or '0'.
|
||||
- `PositionTracker.cs` - Records and saves the positions of two specified Unity `Transform` objects to a CSV file at a configurable interval, useful for data collection.
|
||||
### Unity VR/AR Application (`Unity/`)
|
||||
|
||||
- **Chat-App/** - Flutter-based AI Chat Lab application
|
||||
- Cross-platform chat interface (Android, iOS, Windows, Linux, macOS, Web)
|
||||
- Connects to AI backend for conversational learning
|
||||
- Uses Convai SDK for AI-powered conversations
|
||||
- Stores conversations with possibility to automatically translate using DeepL API
|
||||
#### Scenes
|
||||
- **`Assets/Scenes/VR/`** - VR learning tasks (1-4, task 1 currently usable)
|
||||
- **`Assets/Scenes/AR/`** - AR learning tasks (1-4, task 1 currently usable)
|
||||
- **`Lobby.unity`** - Main lobby/menu scene
|
||||
|
||||
- **App-Installers/** - Pre-built installers for the chat app
|
||||
- Android APK
|
||||
- Windows executable
|
||||
- Linux AppImage
|
||||
#### Key Scripts
|
||||
- **`TaskTimer.cs`** - Configurable countdown timer with UI display, color warnings when time is low, and auto-return to Lobby on expiration
|
||||
- **`TaskButtonManager.cs`** - Scene navigation using number keys (1-8 for tasks, L/0 for Lobby)
|
||||
- **`PositionTracker.cs`** - Records Transform positions to CSV at configurable intervals for data collection
|
||||
|
||||
#### Technologies
|
||||
- Convai SDK for AI-powered conversations
|
||||
- Ready Player Me for avatars
|
||||
- Meta Quest (Oculus) XR support
|
||||
|
||||
#### Setup Instructions
|
||||
|
||||
1. **Enable Quest Link**
|
||||
- Open the Oculus app on your PC
|
||||
- Connect your Quest headset via USB-C cable
|
||||
- Put on your headset and enable Quest Link when prompted
|
||||
- Alternatively, use Air Link for wireless connection (Settings → Experimental)
|
||||
|
||||
2. **Enable Beta Passthrough (for AR tasks)**
|
||||
- On your PC, open the Oculus app
|
||||
- Go to **Settings → Beta**
|
||||
- Enable **"Passthrough over Oculus Link"** or **"Passthrough API"**
|
||||
- Restart the Oculus app and reconnect your headset
|
||||
|
||||
3. **Run the Unity Project**
|
||||
- Open the project in Unity Editor
|
||||
- Load the `Lobby` scene from `Assets/Scenes/`
|
||||
- Press Play in Unity Editor
|
||||
- The application will run on your Quest via Link
|
||||
|
||||
#### Navigation Controls
|
||||
- **Number Keys 1-8** - Switch between VR/AR tasks
|
||||
- **L or 0** - Return to Lobby
|
||||
- VR controllers for interaction within tasks
|
||||
|
||||
---
|
||||
|
||||
### Chat Application (`Chat-App/`)
|
||||
|
||||
Flutter-based cross-platform chat interface.
|
||||
|
||||
#### Features
|
||||
- Cross-platform support (Android, iOS, Windows, Linux, macOS, Web)
|
||||
- AI-powered conversations using Convai SDK
|
||||
- Conversation history with persistent storage
|
||||
- Automatic translation support via DeepL API
|
||||
|
||||
#### Installation
|
||||
Pre-built installers available in `App-Installers/`:
|
||||
- **Android** - `AI-Chat-Lab.apk`
|
||||
- **Windows** - `AIChatLab-Setup.exe`
|
||||
- **Linux** - `ai_chat_lab-0.1.0-x86_64.AppImage`
|
||||
|
||||
#### Development
|
||||
To develop or run the application from source, you'll need to set up your Flutter development environment.
|
||||
|
||||
1. **Install Flutter SDK**
|
||||
* Follow the official Flutter installation guide for your operating system: [https://flutter.dev/docs/get-started/install](https://flutter.dev/docs/get-started/install)
|
||||
* Ensure you have all necessary dependencies (e.g., Android Studio, Xcode for iOS, VS Code, etc.) and run `flutter doctor` to verify your setup.
|
||||
|
||||
2. **Run the Application**
|
||||
* Navigate to the `Chat-App/` directory in your terminal:
|
||||
```bash
|
||||
cd Chat-App/
|
||||
```
|
||||
* Get the project dependencies:
|
||||
```bash
|
||||
flutter pub get
|
||||
```
|
||||
* Run the application on your desired platform (e.g., Android, Windows, Web):
|
||||
```bash
|
||||
flutter run
|
||||
```
|
||||
* To run on a specific device or platform, use the `-d` flag (e.g., `flutter run -d windows`, `flutter run -d chrome`, `flutter run -d <device_id>`).
|
||||
* Ensure you have a device connected or an emulator/simulator running for mobile platforms.
|
||||
|
||||
Reference in New Issue
Block a user