Cangaja: Erstes Spieledemo!

So, das erste kleine Cangaja Spieledemo ist programmiert. Es ist zwar noch etwas rudimentär, aber schon spielbar. Ziel war es ein erstes kleines leichtes Projekt umzusetzen, um die Tauglichkeit des Cangaja Frameworks zu testen.

Die Wunsch- bzw. Featureliste für das Cangaja Framework ist lang und teilweise sehr sportlich ;-) Freie Zeit und vor allem der Spaß am weiterentwickeln wird zeigen ob noch weitere Features ins FW einfließen werden… Wie in diesem Blogbeitrag schon geschrieben ist die HTML5/Canvas/Framework Front gerade massiv in Bewegung und hat hochkarätige Lösungen hervorgebracht.

Cangaja: Statusbericht ;o)

cangaja-picTja, was soll ich sagen… meine anfängliche Spielerei mit dem Canvas Element und auch mit JavaScript hat sich ganz schön weit entwickelt. Mittlerweile ist ein kleines JS Game Framework, genannt Cangaja (CanvasGameJavaScript) daraus geworden.

Dieses ist eigentlich inspiriert durch Monkey und die dafür existierenden 2D FrameWorks. Hier gibt es das Mojo Framework von Monkey selbst und noch viele andere die darauf aufbauen. Hier seien nur schnell Diddy FW, fantomEngine FW und das Ignition FW genannt. Monkey hat eine geniale Multiplatformunterstützung die ihres gleichen sucht, aber trotzdem bin ich ins Canvas/JavaScript Lager abgedriftet ;-)

Auch die JavaScript FW Front ist gerade massiv in Bewegung. Man kommt aus dem Staunen nicht mehr heraus. Altbekannte Libraries wie z.B. mrdoobs three.js oder das neue pixi.js von GoodBoyDigital leisten beeindruckende Features. Aber auch „einfache“ leicht zu programmierende Frameworks wie Quintus haben ihren Charme. Mit Ludei’s CocoonJS und Ejecta sind zwei sehr interessante Lösungen am Start mit denen man HTML5 Entwicklungen auf Mobile Geräte in fast nativer Performance bringen kann.

Aber zurück zu Cangaja, dieses steht auf Github für jedermann zur Verfügung. Eine kleine Demo- bzw. Featureübersicht ist hier zu finden. Für alle FrameWork Teile gibt es dort einzelne Beispiele. Mittlerweile bin ich auch in die Verlegenheit gekommen eine API Dokumentation zu erstellen, dabei war mit YUIDOC eine große Hilfe. Diese wird in Zukunft hoffentlich intensiv gepflegt.

Enthaltene Features sind: Sprites (unterstützt TexturePacker, wie auch alle ableitenden Klassen), Animationen, Emitter, Particle, Director, Screens, Layer, Buttons, Fonts (unterstützt GlyphDesigner), Maps (unterstützt Tiled), Box2D Wrapper (unterstützt PhysicsEditor), usw., usw.

Manches ist weit fortgeschritten, manches hätte besser smarter gelöst werden können, anderes wird in Zukunft noch geändert ;-) Die Wunschliste ist groß…

 

Extbase / Fluid: Inline Javascript einfügen?

Schön ist es vielleicht nicht wenn man in Extbase/Fluid Inline JavaScript ins Fluid-Template mit aufnehmen will. Aber in manchen Fällen kommt man einfach nicht drum herum ;-) Die Stelle an der es tricky wird ist wenn dynamische Werte mit der geschweiften Klammer in das JavaScript mit aufgenommen werden sollen.

In diesem Fall muss mit einem <![CDATA[ … ]]> gearbeitet werden.

<script type="text/javascript">
	<![CDATA[
	$(document).ready(function(){
		$('.selector]]>{myvalue}<![CDATA[').click()
	})
	]]>
</script>

Ein anderes Szenario ist wenn die eingefügten Inhalte ebenfalls JavaScript oder Json enthalten. Hier müssen die Daten mit dem Fluid „format.html“ ViewHelper eingefügt werden.

<script text="type/javascript"> 

var myObject= <f:format.html parseFuncTSPath="">{json}</f:format.html>

</script>