Famo.us – der HTML5 Turbo für 3D Interfaces
Kommentare

„Brachiale JavaScript-Rendering-Macht!“ So bezeichnete mein Kollege Tom die Tage famo.us und bringt damit ziemlich gut auf den Punkt, was das Entwickler-Framework ausmacht.

Hinter famo.us steckt das gleichnamige Startup, das seine Technologie erstmalig vergangenen September auf der Techcrunch Disrupt in San Francisco der Öffentlichkeit vorgestellt hatte. CEO ist Steve Newcomb, einer der Gründer hinter der von Microsoft für 100 Millionen Dollar gekauften Suchmaschine Powerset (heute Teil von Bing).

Famo.us soll Developer in die Lage versetzen, gestenbasierte 2D- und 3D-Apps zu entwickeln und plattformunabhängig zu deployen – auf Desktop PCs, Android oder iOS Geräten, nativ oder im Browser.

HTML5 Turbo

All das soll ohne Plugins oder Third-Party-Bibliotheken möglich sein und nur mit HTML5 und JavaScript realisiert werden. Die Macher selbst vergleichen famo.us mit Twitter Bootstrap. Nur dass famo.us kein Framework zum Erstellen von Websites ist, sondern ein Framework für App-Entwicklung.

Einen guten Eindruck vom Potenzial von famo.us liefert die Website famo.us. Am besten man ruft sie auf einem Touch-Device auf und spielt ein wenig in den verschiedenen Darstellungsformen des Periodensystems der Elemente (siehe Foto unten) herum.

famo.us

Darüber hinaus haben wir hier ein Video für Euch, indem die flüssige Darstellung demonstriert wird:

Ursprünglich hatte das famo.us Projekt die Entwicklung einer App zum Ziel gehabt – eine Art Mischung aus Pinterest und About.me. Wie Steve Newcomb gegenüber Techcrunch berichtet, kam man aufgrund der hohen Anforderungen an User Interface und Cross-Plattform-Funktionalität zu dem Schluss, HTML5 einzusetzen. Nachdem man sich der Vielzahl von Performance-Problemen von HTML5 angenommen hatte und dabei das mächtige famo.us herausgekommen war, realisierte das Team um Newcomb, dass das dabei entstandene Framework „viel wichtiger war als die ursprünglich geplante App.“

JavaScript Engine

Auf den ersten Blick sticht vor allem die hohe Performanz von famo.us ins Auge. Um sie zu erreichen, müssen Entwickler laut den Machern keine komplizierten Programmiertricks erlernen bzw. anwenden. Gerne wurde das Framework auch schon als JavaScript Game Engine bezeichnet, denn es pfeift komplett auf jede Art von Technologie, die ursprünglich für solch grafisch anspruchsvolle Anwendungszwecke vorgesehen ist. Das heißt: Es kommt kein WebGL und kein Canvas zum Einsatz. Stattdessen wird alles durch Manipulationen von Objects im DOM (Document Object Model) realisiert. Darüber hinaus enthält famo.us eine sogenannte ‚physics engine’, die sich vor allem beim Rendern von dreidimensionalen Objekten bemerkbar machen soll.

Drei Aspekte spielen für die zukünftige Relevanz von famo.us eine herausragende Rolle:

Rendern mit JavaScript

Die famo.us Engine kommuniziert direkt mit der jeweiligen Geräte-Hardware, die für Grafik zuständig ist. Durch diese direkte Ansprache der GPU (egal ob im Smartphone, Tablet, Smart TV oder Spielekonsole) nimmt man dem Browser (insbesondere der WebKit Browser Engine) Schwerstarbeit ab. Dies macht die hohe Performanz von famo.us erst möglich. Vor allem in komplexen 3D-Umgebungen werden so flüssige Darstellungen mit 40 bis 60 Frames pro Sekunde möglich.

Üblicherweise lässt eine HTML5/JavaScrippt/CSS3 Applikation den Browser die CSS Transitions rendern und gibt in der Folge die Kalkulationen an die GPU weiter. Der Geniestreich der famo.us Entwickler: Man beschleunigt die Renderzeit dieser Transitions um ein Vielfaches, indem man sie per JavaScript rendern lässt und die Kalkulationen dann mithilfe eines CSS Tags direkt an die GPU weiterleitet.

Die Flexibilität von famo.us geht noch einen Schritt weiter: Das Framework beherrscht verschiedene Kommunikationsformen zwischen Device und eingebauter GPU und ist in der Lage deren Abwicklung zu übernehmen. Beispielsweise wird unter iOS OpenGL eingesetzt, um auf die GPU zuzugreifen, im Fall von Microsofts X-Box ist es DirectX.

Bewährter Code

Famo.us setzt kein kompliziertes Erlernen einer neuen Programmiersprache voraus. Entwickler können ganz einfach in JavaScript entwickeln und eigene 3D Templates generieren.

Open Source

Wie am Montag auf der HTML5 Developer Conference in San Francisco angekündigt, wird famo.us Entwicklern kostenlos zur Verfügung gestellt. Allerdings müssen entwickelte 3D Templates open source bleiben. Das ist die eine Vorgabe, die famo.us macht.

Fazit und Ausblick

Auf den ersten Blick scheint den Machern ein wichtiger Schritt für die weitere Entwicklung von HTML5 gelungen zu sein. Viele der Vorteile, die native Entwicklungsumgebungen bis dato für sich im Mobile-Bereich für sich beanspruchen konnten, scheinen obsolet. Ja, man könnte fast sagen: ausradiert.

Auch die theoretische Verfügbarkeit von famo.us über eine breite Palette von Gerätegattungen verspricht enormes Potenzial.

Die Demos, die am Montag auf der HTML5 Developer Conference zu sehen waren, haben die meisten Anwesenden vom Stuhl gehauen. Es ist deswegen kein blinder Optimismus zu behaupten, dass famo.us das Zeug hat, nicht nur das Performance-Problem von Web Apps aus dem Weg zu räumen, sondern auch einen Weg hin zu besseren, noch intuitiveren Natural User Interfaces zu ebnen. Denn gerade die Verbindung von 2D- und 3D-User-Interfaces ist eines der wichtigsten Themen der kommenden Jahre.’

Auf der famo.us Website kann man sich derzeit per E-Mail für die Beta anmelden. Das folgende Video vermittelt einen Eindruck des 3D Templates von famo.us.

 

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -