<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <channel>
    
    <title>Coobico Developer&#39;s Blog</title>
    <link>http://coobico.com/index.php</link>
    <description>This is Coobico's blog, Linking People's official developer's blog about our free to play online multiplayer game Coobico, flash games, chat and funny internet-stuff we like.</description>
    <dc:language>de</dc:language>
    <dc:creator>http://www.linking-people.com</dc:creator>
    <dc:rights>Copyright 2010</dc:rights>
    <dc:date>2010-03-23T02:11:13+08:00</dc:date>
    <admin:generatorAgent rdf:resource="http://expressionengine.com/" />
    

    <item>
      <title>3D in Flash: Papervision, Away3D and Sandy3D</title>
      <link>http://coobico.com/index.php/site/3d_in_flash_papervision_away3d_and_sandy3d/</link>
      <guid>http://coobico.com/index.php/site/3d_in_flash_papervision_away3d_and_sandy3d/#When:18:40:14Z</guid>
      <description><![CDATA[<p>Ohne zu technisch und trocken zu werden, möchte ich hier kurz die 3D-Engine vorstellen, die Einsatz bei der Entwicklung von Coobico findet:<br />
 
Bis ins letzte Jahr spielte 3D in Flash eine eher untergeordnete Rolle, da Actionscript 2 einfach nicht schnell genug war, um mehr als kleine, unspektakuläre 3D-Szenen zu rendern. Dies hat sich aber mit AS3 komplett gewandelt, und führte dazu, daß im Februar die aktuellen Releases der drei am weitest-verbreiteten 3D Open-Source-Engines <a href="http://blog.papervision3d.org/" title="Papervision">Papervision</a>, <a href="http://away3d.com/" title="Away3D">Away3D</a> und <a href="http://www.flashsandy.org/" title="Sandy3D">Sandy3D</a> veröffentlicht wurden&#8212;was sehr zur Verbreitung von Flash-basierten 3D-Anwendungen führte. Ich habe kurz danach die drei Engines ausprobiert, um herauszufinden, welche für unsere Arbeit am ehesten kompatibel ist. </p>

<p>Sandy3D ist das älteste der drei Frameworks, eines der Releases ist sogar noch in AS2 erhältlich. Papervision ist ein wenig jünger und war bislang in zwei Versionen verfügbar (Effect-Branch und Great White), diese sollen aber demnächst zu einer Version zusammengeführt werden. Away3D ist ein Papervision-Derivat, hat aber seit seiner Abspaltung von PV3D sehr beeindruckende Fortschritte gemacht.</p>

<p>Genau genommen bietet <a href="http://away3d.com/" title="Away3D">Away3D</a> mit die mächtigsten Bibliotheken, hat eine Menge verschiedener Shader und Parser (vor allem ein .Obj-Parser) im Angebot. Das Framework macht auch eine sehr gute Figur beim Z-Sorting, ein derzeitiges Problemfeld der Engines. Trotzdem empfand ich tieferliegenden Routinen als eher unintuitiv (z.B. das dynamische Verändern von Texturen). Zum Thema Texturen: sowohl bei Away als auch bei PV3D gibt es einige Darstellungsartefakte beim Phong-Shading von rechteckigen Körpern, wohl ein Problem der Triangulation, bei der ein Polygon einer Fläche geshadet und das andere ungeshadet dargestellt wird. Ich habe mich schließlich gegen Away3D entschieden, weil weite Teile der Engine (wie bei den meisten Flash-Frameworks) unkommentiert waren. Es ist einfach kontra-produktiv, wenn man sich durch zahlreiche Klassen durchwühlen muss, um ihren Sinn und Zweck zu ergründen. Aber wie gesagt, das liegt nun schon einige Monate zurück, ich kann hier nichts dazu sagen, ob sich die Dokumentation von Away3D mittlerweile verbessert hat. In diesem Fall würde ich Away3D wärmstens empfehlen.&nbsp;  </p>

<p><a href="http://blog.papervision3d.org/" title="Papervision">Papervision</a> hat bereits einen guten Ruf bei einer großen Entwicklergemeinde. Ich fand aber, daß PV3D insgesamt weniger Features bietet als seine Konkurrenten, z.B. den Einsatz von 3D-Sounds und 2D-Sprites. Das Phong-Shading hat dieselben Probleme wie Away3D. Auch hier noch einmal die Anmerkung, daß sich die Situation in den letzten Monaten vielleicht bereits verändert hat.</p>

<p>Zum Thema <a href="http://www.flashsandy.org/" title="Sandy3D">Sandy3D</a> scheint es nicht soviel Hype im Internet zu geben, obwohl Sandy es meiner Meinung nach problemlos mit Away3D aufnehmen kann, sei es nun bei der breiten Menge seiner Features, als auch bei der Geschwindigkeit seiner Rendering-Engine&#8212;Sandy muß allerdings zugegebenerweise noch seine Hausaufgaben im Bereich Z-Sorting machen. Alle Packages sind sehr gut dokumentiert und es gibt eine große Anzahl von Tutorials, die auf alle wichtigen Punkte eingehen (vermutlich weil es Sandy bereits so lange gibt). Vielleicht auch ein Grund, warum ich den Einstieg in Sandy deutlich intuitiver fand als bei den Konkurrenten. Sandy bietet zudem ein für Coobico sehr nützliches Feature: durch das Drosseln der Polygon-Qualität von dreieckig zu rechteckig lassen sich Darstellungsartefakte beim Shading rechteckiger Körper unterdrücken.&nbsp; </p>

<p>Zu guter letzt habe ich mich dafür entschieden, daß die Entwicklung von Coobico auf Sandy basieren soll, die Engine erschien am kompatibelsten mit unserem bisherigen Code und unserer Produktions-Pipeline.</p>

<p>Es gibt natürlich auch noch weitere 3D-Frameworks, diese Liste ist nicht erschöpfend&#8212;da wäre z.B. <a href="http://temp.roxik.com/datas/physics/" title="Sharikura">Sharikura</a> zu nennen, eine Lösung, die alle anderen in den Schatten zu stellen scheint, z.Zt. aber leider noch nicht öffentlich zugängig ist. Und dann wäre da noch <a href="http://blog.alternativaplatform.com/en/" title="Alternativa">Alternativa</a>, ein kommerzielles Produkt, das sehr beeindruckend wirkt, aber bislang noch nicht bewiesen hat, wie gut es sehr große Szenen und Animationen handhaben kann. </p>

<p>Bitte hinterlaßt gerne einen Kommentar, wenn ihr weitere gute 3D-Engines kennt.&nbsp;   </p>]]></description>
      <dc:subject>Project &amp; Story</dc:subject>
      <dc:date>2008-07-27T18:40:14+08:00</dc:date>
    </item>

    
    </channel>
</rss>
