PlayCanvas
# PlayCanvas

PlayCanvas ist eine Browser-basierende 3D-Game-Engine. Mit PlayCanvas ist es möglich, interaktive Inhalte wie z. B. Spiele für Webseiten zu erstellen.
Die Engine sowie der erstellte Content funktioniert in allen Browsern, welche OpenGL und alle weiteren HTML5-Standards unterstützen.
PlayCanvas konnte mit Unterstützung von Mozilla, ARM und Activision am 4. Juni 2014 veröffentlicht werden. Die Entwicklung ist Open-Source. und kann auf GitHub eingesehen werden.

## Entwicklungsumgebung

Die Entwicklungsumgebung besteht aus einem Hauptfenster in der Mitte und mehreren Navigationsleisten an den Seiten. Im Hauptfenster werden die derzeitige Szene sowie alle Objekte dreidimensional dargestellt. In der Sidebar auf der linken Seite ist eine Hierarchie mit allen derzeit in der Szene verwendeten Objekten. In der Sidebar auf der rechten Seite ist der Inspektor, welcher eine Übersicht über die Eigenschaften eines ausgewählten Objektes gibt. In der Navigationsleiste, welche sich unten befindet, ist die Ordnerstruktur des Spiels mit allen Assets vorhanden.
PlayCanvas bietet die Möglichkeit, kollaborativ an einem Projekt zu arbeiten. Zu einem Projekt können weitere Teilnehmer hinzugefügt werden, welche in Echtzeit die Änderungen anderer Teilnehmer in der Entwicklungsumgebung sehen. Hierfür werden WebSocket-Verbindungen verwendet.
Die Entwicklungsumgebung besitzt einen Code-Editor.

## Funktionen
### Physik-Engine

Zur Simulierung von physikalischen Eigenschaften nutzt PlayCanvas Starrkörpersimulation. Hierbei spielen verschiedene Faktoren wie z. B. das Gewicht eine Rolle, welche die Bewegung eines Objektes beeinflussen.

### Grafik-Engine

PlayCanvas erzeugt mit Hilfe von WebGL eine dreidimensionale Darstellung.
Die Engine ist kompatibel mit dem WebGL-1.0- und -2.0-Standard und bietet folgende Möglichkeiten:
* Physikalisch basiertes Rendering
* Partikel-System
* Verschiedene Beleuchtungseffekte