Das cpvrLab am Institute for Human Centered Engineering HuCE hat ein Cave Automatic Virtual Environment (CAVE) in Betrieb. Zum Synthetisieren der 3D-Welt wird die Unity Game Engine eingesetzt. Ein Plug-in ermöglicht nun das Rendern von medizinischen Daten als Volumengrafik. Die Berechnung erfolgt mit Shader-Programmen auf den Grafikprozessoren.
Für die ärztliche Diagnose und Therapie kommen heutzutage computergestützte Verfahren zur Anwendung. Medizinische Bilddaten werden per Computertomograph (CT) aquiriert und in einer Bildanalyse aufbereitet. Solche Volumengrafiken eignen sich auch für die Wissensbildung. Dazu hat das cpvrLab ein CAVE in Betrieb. Das System wird u.a. zur Simulation von Operationssaal-Workflows eingesetzt. Seit Februar 2016 werden die Stereobilder im CAVE mit der Game-Engine von Unity Technologies gerendert. In der Trainingsumgebung sollen nun auch medizinische Bilddaten eingebunden werden.
Mit Unity soll ein Plug-in für das Direct Volume Rendering entwickelt werden. Dabei soll die Rechenkapazität der Grafikprozessoren genutzt werden, indem das Rendern mit Shader-Programmen erfolgt. Aus CT-Daten soll mit einer Sichtstrahl-Methode eine Volumengrafik berechnet werden. Die Kolorierung soll mit einer Transferfunktion (TF) erfolgen.
Im Unity-Editor kann über Menü-Einträge auf die Funktionalität des Plug-ins zugegriffen werden. Es ermöglicht den Import von Bildinformation aus DICOM-Daten. Die Metadaten werden als JSON-Datei angelegt, aus den Bildinformationen wird eine 3D-Textur erstellt.
Mit dem Plug-in kann ein Game-Objekt 'Volume' erstellt werden, welches einen Volume-Filter enthält. Der Filter liest die JSON-Datei und weist die 3D-Textur dem Shader-Programm zu.
Als weiteres untergeordnetes Game-Objekt wird eine Region of Interest (ROI) erstellt. Mit dieser kann der zu rendernde Bereich manuell editiert und eingeschränkt werden. Die ROI hält zudem die Renderer-Komponente mit einem Material als Transferfunktion (TF).
Im Material kann der Typ der Transferfunktion gewählt werden. Das Plug-in hält eine Lookup-Tabelle, eine Liste von editierbaren Farben oder aber eine gradientenbasierte Transferfunktion bereit.
Die Rendermethode - ein Raycaster - wurde als Pixel-Shader in Cg implementiert. Dieser traversiert das Volumen und appliziert die Transferfunktion. Dabei dient der Grauwert eines CT-Pixels als Skalar für das Zuweisen eines Farbwertes an die Volumengrafik.