diff --git a/projects.md b/projects.md index 60544e0..fe0cf75 100644 --- a/projects.md +++ b/projects.md @@ -141,7 +141,8 @@ Jedes Projekt/Kontext besteht aus einem Link bzw Quell, einer Beschreibung, den - Quelle: `vr-bits/AssetDownloader` und Telekom DevOps GitLab. - Kontext: Unity- und .NET-Standard-Bibliothek zum Herunterladen, Zwischenspeichern und Vorbereiten von 3D-Assets für eine Production-Manual-Anwendung. - Herausforderungen: Robuste asynchrone Downloads großer Dateien mit Fortschrittsanzeige, Abbruch und Wiederaufnahme; überprüfbare Cache-Konsistenz; Trennung einer Unity-agnostischen Kernbibliothek von der Unity-Anbindung; Unterstützung mehrerer 3D-Dateiformate. -- Lösungen: HTTP-Streaming mit temporären Dateien und Range-Requests für wiederaufnehmbare Downloads; konfigurierbare parallele Download-Jobs, Fortschritts- und Fehlerereignisse sowie Dateicache mit Prüfsummen und Metadaten; Formatprüfung für glTF, GLB, USD und USDZ sowie Unity-Wrapper; testgetriebene Entwicklung mit NUnit, Moq, HTTP-Mocks und Arrange-Act-Assert-Tests für Download, Cache, Abbruch, Integrität, Import und Resume. +- Lösungen: HTTP-Streaming mit temporären Dateien und Range-Requests für wiederaufnehmbare Downloads; konfigurierbare parallele Download-Jobs, Fortschritts- und Fehlerereignisse sowie Dateicache mit Prüfsummen und Metadaten; Formatprüfung für glTF, GLB, USD und USDZ sowie Unity-Wrapper; testgetriebene Entwicklung mit NUnit, Moq, HTTP-Mocks und Arrange-Act-Assert-Tests für Download, Cache, Abbruch, Integrität, Import und Resume; Konzeption und Anforderungserhebung für den universellen Downloader, detaillierte CacheManager-Spezifikation sowie tägliche Fortschritts- und Testdokumentation. +- Das projekt wurde durch mich mehr oder weniger komplett mittels KI erstellt unter der Maßgabe verlässlches TestDriven Design anzuwenden. Das hat sehr gut funktioniert. ## Roche Prozessrallye @@ -167,7 +168,7 @@ Jedes Projekt/Kontext besteht aus einem Link bzw Quell, einer Beschreibung, den - Nicht öffnentlicher Showcase: https://local.vr-bits.de/showcases/Roche-iPad/ - Kontext: Unity-WebGL-Anwendung für interaktive, modulare Schulungen zu Laborbereichen und -abläufen, darunter Chemieraum, Kühlraum, Schleusen, Flowbox, Freezer und Abfallmanagement. - Herausforderungen: Wiederverwendbare Umsetzung zahlreicher Teiltrainings mit geführten 3D-Interaktionen; zuverlässige Persistenz und Auswertung von Trainingsfortschritten im Browser; Übergabe der Lernstände an das Cornerstone-LMS; wartbare mehrsprachige Inhalte und automatisierte Auslieferung der WebGL-Anwendung. -- Lösungen: Mindport VR Builder mit JSON-basierten Prozessen sowie eigene Komponenten und Editor-Werkzeuge zum Generieren von Teiltrainings und `ScriptableObject`-basierten Workplans; Zustandsverwaltung pro Trainingsmodul und Rücksetzen der Browserdaten über `PlayerPrefs`; C#-/JavaScript-Brücke mittels `Application.ExternalCall`, `postMessage` und eingebetteter Iframes zur Übernahme und Meldung erfolgreicher Teiltrainings sowie des Gesamtstatus an das LMS; SCORM- und anschließend AICC-HACP-Paketierung für Cornerstone; Anpassung von Unity-Localization-String-Tables anhand von CSV-Dateien; GitHub-Actions-Pipeline mit GameCI für WebGL-Build und Deployment. +- Lösungen: Mindport VR Builder mit JSON-basierten Prozessen sowie eigene Komponenten und Editor-Werkzeuge zum Generieren von Teiltrainings und `ScriptableObject`-basierten Workplans; Zustandsverwaltung pro Trainingsmodul und Rücksetzen der Browserdaten über `PlayerPrefs`; C#-/JavaScript-Brücke mittels `Application.ExternalCall`, `postMessage` und eingebetteter Iframes zur Übernahme und Meldung erfolgreicher Teiltrainings sowie des Gesamtstatus an das LMS; SCORM- und anschließend AICC-HACP-Paketierung für Cornerstone; Anpassung von Unity-Localization-String-Tables anhand von CSV-Dateien; GitHub-Actions-Pipeline mit GameCI für WebGL-Build und Deployment; Refactoring der Interactables und Software-Design-Patterns, Dokumentation des Lokalisierungs-Update-Prozesses für Kund:innen und interne Teams sowie Analyse und Behebung von UI-Fehlern wie doppelt öffnenden SidePanels. ## SaxoCellTraining – WebGL-Training für die Personalschleuse @@ -214,7 +215,7 @@ Jedes Projekt/Kontext besteht aus einem Link bzw Quell, einer Beschreibung, den - Quelle: Jira-Tickets `VRBITSPROJ-48: Conneforde Virtuelles Umspannwerk` und `VAA-197: Tennet Virtuelles Umspannwerk – 3D Vista Anwendung`; nicht öffentlicher Showcase: https://local.vr-bits.de/showcases/UWConneforde/index.htm - Kontext: Für TenneT erstellte virtuelle Umspannwerkbegehung in 3D Vista; die Abstimmung und Aufgaben liefen über ein gemeinsames Teams-Projekt mit Die Wegmeister (DWM). - Herausforderungen: Realbildmaterial und audiovisuelle Erläuterungen zu einer verständlichen virtuellen Begehung verbinden. -- Lösungen: 360-Grad-Videoplayer mit eingebundenen 360-Grad-Bildern und 2D-Videos; zusätzliches Sprachfile sowie szenenbezogene Untertitel. +- Lösungen: Hauptverantwortliche Umsetzung der 3D-Vista-Anwendung als 360-Grad-Videoplayer mit eingebundenen 360-Grad-Bildern und 2D-Videos; Erstellung zusätzlicher Sprachfiles und szenenbezogener Untertitel; Dokumentation des Einsatzes von Realbild-Footage in 360-Touren sowie DeepSpeech-Bootstrapping als technische Grundlage für sprachgesteuerte Umspannwerk-Projekte. ### **VRBITSPROJ-48: Conneforde Virtuelles Umspannwerk** * **Zusammenfassung:** 3D Vista Projekt für TenneT. Eine virtuelle Umspannwerkbegehung mit 360-Grad-Video. @@ -228,3 +229,12 @@ Jedes Projekt/Kontext besteht aus einem Link bzw Quell, einer Beschreibung, den * **Zusammenfassung:** Erstellung einer 3D Vista Anwendung für TenneT. * **Details:** Die Kommunikation und Tasks liefen über ein gleichnamiges Teams-Projekt mit der Agentur "Die Wegmeister" (DWM). * **Beteiligte:** Robert Wartenberg (Assignee & Reporter). + +## VRBits SpeakUp + +- Zeitraum: 2025 bis 2026. +- Quelle: Jira- und Confluence-Nachweisen. +- Kontext: Technische Umsetzung, Audiointegration und Qualitätssicherung einer VR-Anwendung zur Kommunikations- und Interaktionsunterstützung. +- Herausforderungen: Verlässlicher Anwendungsstart und Umgang mit ID-Codes; konsistente Einstellungen und Benutzeroberflächen; stabile blickbasierte Interaktionen und Avatar-Verhalten; sprachabhängige Audioausgabe und Lokalisierung; Performance auf VR-Headsets. +- Lösungen: Implementierung der VR-ID-Eingabe und Startintegration; Überarbeitung von Settings- und Multiple-Choice-Panel einschließlich Indikatoren und Schriftgrößen; Stabilisierung der Gaze-Interaktion für Zahnrad und Pamphlet sowie Korrektur von NPC-Blickrichtungen, Kopfanimationen und Beinbewegungen; Behebung von Exceptions im `TrainerAgent`; Einbindung von System- und Master-Prompt in die Text-to-Speech-Ausgabe, sprachabhängiges Laden und Fehlerbehebung bei „No Translation Found“; Aufbau und Anbindung von String-Tables an Google Docs zur Lokalisierung; Hall-Effekte im Thought-Mode und Lautstärkeanpassungen. +- Qualität, Dokumentation und fachliche Integration: Anleitung zum Skalieren der zwölf Szenen und Dokumentation der Sprachausgabe; Testdurchläufe, unter anderem für Build `v1.0.58_dev`, mit Schwerpunkt VR-Headset-Performance; Vorschläge zur Einbindung von SpeakUp in universitäre Fragebögen. diff --git a/roles.md b/roles.md index 40c8fc9..71013aa 100644 --- a/roles.md +++ b/roles.md @@ -39,13 +39,18 @@ Enthält alle Rollen in denen ich schon Tätig war - Entwicklung von ChipAcademy AR-Viewer mit konfigurierbaren Lerninteraktionen, plattformspezifischen Unity-AssetBundles und Drupal-XML-Schnittstelle für Szenenmetadaten; - Implementierung eines Unity-VR-Trainings für Umspannwerksabläufe mit Schrittsteuerung, Spannungsprüfung, Fehlererkennung und SteamVR-gestützter Navigation; - Erstellung von 3D-Vista-Rundgängen für TransnetBW und TenneT mit 360-Grad-Medien, Interaktionspunkten, Karten, Audio, Untertiteln und Web-Veröffentlichung; + - Technische Umsetzung und Qualitätssicherung von VRBits SpeakUp: ID-Eingabe, UI- und Gaze-Interaktionen, Avatar- und `TrainerAgent`-Bugfixes, sprachabhängige TTS-Integration, Lokalisierung, Audioeffekte sowie VR-Headset-Tests; - Entwicklung eines testgetriebenen Unity- und .NET-AssetDownloaders mit HTTP-Streaming, Cache und Formatprüfung für 3D-Assets; + - Anforderungserhebung, CacheManager-Spezifikation sowie Fortschritts- und Testdokumentation für den MMS AssetDownloader; Vollständige Umsetzung mittels TestDriven Design und KI only. - Entwicklung der Roche Prozessrallye mit persistenter Lernspiel-Logik, Minispielen, Budget- und Zeitmodell sowie Navigation zwischen Weltkarte und Innenräumen; - Entwicklung der TenneT-2GW-Platform als mehrsprachige, interaktive Web- und WebXR-Visualisierung auf Basis von Unity, Needle Engine, TypeScript und Three.js; - Entwicklung eines Unity-WebGL-Trainings für Roche mit VR-Builder-Prozessen, Workplan-Steuerung, - CSV-basierter Lokalisierung, SCORM-/AICC-HACP-Anbindung an Cornerstone und GameCI-Delivery-Pipeline; - Entwicklung von SaxoCellTraining als mehrsprachiges WebGL-Training mit Addressables, Workplan-Navigation und responsiver WebGL-UI; - - Ausgliederung und Weiterentwicklung des TrainingGenerators zu einem Unity-UPM-Paket mit UI-Toolkit-Wizard, Szenentemplates, CLI-/Batchmode-Erzeugung, WebGL-Build und Regressionstests. + - Ausgliederung und Weiterentwicklung des TrainingGenerators zu einem Unity-UPM-Paket mit UI-Toolkit-Wizard, Szenentemplates, CLI-/Batchmode-Erzeugung, WebGL-Build und Regressionstests; + - Refactoring von Interactables und Software-Design-Patterns, Lokalisierungsdokumentation für Kund:innen und interne Teams sowie UI-Fehleranalyse im Roche-RMD-Training; + - Dokumentation und Wartung des zentralen Dockerhosts auf Proxmox, Mitarbeit an Build-Automatisierung, VR-Builder-Glossar und Coding-Guidelines; + - Recherche zu NeRF, KI-Modellgenerierung, Needle Engine, Unity DOTS und xAPI sowie Pflege von Markt-, Event- und Wissensübersichten, einschließlich Wettbewerbsauswertung (unter anderem 3Spin), Branchenverzeichnissen, Firmenevent-Planung und Messen-/Konferenzenübersicht. ### Freelance Full-Stack Developer diff --git a/technologies.md b/technologies.md index e59759d..91a7c8a 100644 --- a/technologies.md +++ b/technologies.md @@ -10,6 +10,7 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Einsatz: Konzeption, Entwicklung und Betreuung von mehr als 20 VR-, AR- und Flat-3D-Anwendungen; Multi-Target-Entwicklung aus gemeinsamen Unity-Codebasen für XR, Web und Mobile; Client-Server-Kommunikation und Performance-Optimierung. - Zusätzlicher Einsatz: Konfigurierbare AR-Lernszenen mit Lern- und Prüfungsmodus, Schrittsequenzen, Medienanzeige und Zuordnungsinteraktionen im ChipAcademy AR-Viewer-PackageBuilder. - Kontext: vrbits GmbH, seit 2019, sowie ChipAcademy AR-Viewer +- Zusätzlicher Einsatz: Implementierung von ID-Eingabe, Settings- und Multiple-Choice-UI, blickbasierten Interaktionen, Avatar-Fehlerbehebungen und `TrainerAgent`-Stabilisierung in VRBits SpeakUp, 2025 bis 2026. ### OpenXR, Meta Quest SDK, Mindport VR Builder und Needle Engine @@ -60,6 +61,7 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Komplexität: Browserbasierte 3D-Anwendung mit bidirektionaler Kommunikation zu einem Learning-Management-System. - Einsatz: C#-/JavaScript-Brücke über `Application.ExternalCall`, `postMessage` und Iframes; Übernahme des Lernstands, Meldung erfolgreicher Teiltrainings und Aktualisierung des Gesamtstatus; Paketierung zunächst als SCORM und anschließend als AICC-HACP für das Cornerstone-LMS. - Projekt: Roche RMD Rotkreuz, September 2022 bis Januar 2025. +- Zusatzwissen: Evaluation der Unity-xAPI-Unterstützung als mögliche Alternative zu SCORM-Paketen. ### Unity Addressables, WebGL-Templates und responsives Layout @@ -74,6 +76,7 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Zusätzlicher Einsatz: Erstellung von Unity-Localization-`StringTable`-Collections aus CSV-Dateien und Ableitung von Teiltrainings sowie Infopunkten aus den Inhalts-Schlüsseln. - Zusätzlicher Einsatz: Synchronisation von String-Tables mit Google Sheets einschließlich Rich-Text-Unterstützung sowie Bereitstellung der Sprachressourcen als Addressables. - Projekte: Roche RMD Rotkreuz, September 2022 bis Januar 2025; SaxoCellTraining, Juni bis September 2024; und VR Builder Scene Generation / TrainingGenerator, Oktober 2024 bis September 2025. +- Zusätzlicher Einsatz: Sprachabhängige Text-to-Speech-Ausgabe, Synchronisation von String-Tables mit Google Docs sowie Fehleranalyse bei fehlenden Übersetzungen in VRBits SpeakUp, 2025 bis 2026. ### Unity AR Foundation, ARCore und ARKit @@ -93,6 +96,12 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Einsatz: Integration von SteamVR, OpenVR, Oculus und VRTK; erzwungene Teleportation mit konfigurierbarem Blink-Übergang sowie Controller- und Teleportationslogik in der Intro-Szene. - Projekt: VR-Training für EnviaM-Umspannwerk von Dezember 2019 bis Juli 2022. +### Mozilla DeepSpeech + +- Komplexität: Einrichtung einer lokal eingebundenen Spracherkennungs-Engine für eine Unity-Trainingsanwendung. +- Einsatz: Dokumentation des DeepSpeech-Bootstrappings mit dem trainierten deutschen Mozilla-Netz, .NET-Core-3.1-Publisher und Unity-Szenenkonfiguration für sprachgesteuerte Umspannwerk-Projekte. +- Kontext: TenneT VR Training und Umspannwerk-Projekte. + ### Unity Package Manager und vrbits StepManager - Komplexität: Wiederverwendbare Paketabhängigkeiten und zustandsbasierte Schrittsteuerung für eine Trainingsanwendung. @@ -322,6 +331,7 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Einsatz: CI-Pipelines auf lokalen und Remote-Runnern für sämtliche Zielplattformen. - Kontext: vrbits GmbH. - Zusätzlicher Einsatz: Geplanter und manuell auslösbarer GameCI-WebGL-Build mit automatisiertem Deployment für Roche RMD Rotkreuz. +- Zusätzlicher Einsatz: Unterstützung bei der Automatisierung von Build-Prozessen sowie Erarbeitung von Coding-Guidelines für VR-Builder-Trainings. ### Docker, Linux, POSIX Shell und Systemadministration @@ -331,6 +341,7 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Systeme: Debian-Server, Fedora im privaten Einsatz, NixOS, FreeBSD und CentOS. - Zusätzlicher Einsatz: Eigene Shell-Automatisierung für Backups, Serverwartung und PhotoPrism-Indexierung in Docker. - Projekt: `lokale-scripte`, November 2018 bis Mai 2026. +- Zusätzlicher Einsatz: Dokumentation Pflege eines VR-Builder-Glossars. ### NixOS und Nix @@ -437,6 +448,7 @@ Jede Technologie wird einzeln genannt und enthält das Level der verwendeten Kom - Komplexität: Anwendung und kontinuierliche Beschäftigung mit maschinellem Lernen und Sprachmodellen. - Einsatz: ANNs seit 2016; LLMs seit 2020; seit 2025 verstärkter Einsatz von KI im Unternehmenskontext und in der eigenen Softwareentwicklung. - Kontext: berufliche und private Softwareentwicklung. +- Zusätzlicher Einsatz: Recherche und Dokumentation zu Neural Radiance Fields (NeRF), KI-Modellgenerierung mit Stable-3D und ComfyUI sowie Evaluation von Unity DOTS. ### RAG, OpenWebUI, LM Studio, GPUStack, MCP, BMAD, SpecKit, SDD, Context Engineering und Caveman