Hi…

jetzt kann man ja immer daher schwadronieren, wie einfach etwas ist und es bleibt eine Hochglanzwerbeaussage, solange man es nicht selbst ausprobiert hat. Also habe ich mich mal an Windows Phone 7 und XNA herangewagt.

Meine Idee war es, ein sehr erfolgreiches Demo aus einer Webcast-Serie von vor (gefühlt) 10.000 Jahren auf das Phone zu bringen.

Also habe ich ein XNA Demo genommen und mir die Render-Routine für eine Kugel geklaut. Die Klasse musste ich um einen Konstruktor erweitern, der sowas wie Farbe und Position individuell beachtete. Dann habe ich in einer XML Datei Elemente und deren Van-Der-Waals-Radius sowie die gewünschte Farbe des Atoms abgelegt. In einer weiteren XML Datei habe ich die Atom-Positionen im Raum und das jeweilige Element gespeichert. Das Editieren des XMLs war auch die zeitaufwendigste Geschichte, weil ich aus Plain-Text und Physikbuch die Infos zusammengebastelt habe. Das Lesen und Auswerten des XML ist mit Hilfe von LINQ dann wieder sehr einfach gewesen.

Naja, also im wesentlichen Erzeuge ich mir zuerst ein Dictionary mit den Elementen. Danach lade ich mir eine Liste mit den Atomen im Molekül. Ich erzeuge dafür gleich die geometrischen Primitive (Kugeln) mit den entsprechenden Farben und Positionen im Raum, in dem ich XML-Info mit den Element-Infos aus dem Dictionary kombiniere.

Beim Zeichnen durchlaufe ich einmal die Liste und lasse die Atome zeichnen. Die Game-Loop verändert die Welt-Matrix (damit das Ding ein wenig zappelt) und zeichnet das Bild.

Und so sieht das Ergebnis im Emulator aus (Ich habe Anilin genommen, weil es aussieht wie ein Teddy-Bär ;-):

 

clip_image002

Zeitaufwand: Drei Stunden neben Kaffeetrinken und Apfelkuchen essen. Ich glaube, das Thema hat Potential…

Daher werden wir auch demnächst das Thema mal richtig verproben. Ein kleiner Teaser zu unserem Coding-Wochenende auf der Burg gefällig??

Unter dem Motto „Entdecke die neue Welt des Mobile Developments!“ veranstaltet Microsoft 7.-9. Mai auf der alten Ritterburg Burg Freusburg in einem unvergleichlichen Ambiente, ein Entwicklercamp für Studierende. Gemeinsam mit den Experten Frank Prengel, auch bekannt als Dr. Mobile, Oliver Scheer alias Mr. deep zoom und Tom Wendel alias the ant man erwartet Dich die ultimative Coding-Erfahrung! Melde Dich jetzt hier an und sichere Dir einen der 30 Plätze!

Ich bin mal sehr gespannt was wir danach sagen können…

CU

0xff