3D-Funktionen im Flash Player und der AIR-LaufzeitumgebungFlash Player 10 und höher, Adobe AIR 1.5 und höher In Flash Player-Versionen vor Flash Player 10 und Adobe AIR-Versionen vor Adobe AIR 1.5 verfügen Anzeigeobjekte über zwei Eigenschaften, x und y, mit denen sie auf einer 2D-Ebene positioniert werden. Ab Flash Player 10 und Adobe AIR 1.5 besitzt jedes ActionScript-Anzeigeobjekt auch eine z-Eigenschaft, die Ihnen die Positionierung entlang einer z-Achse erlaubt, die in der Regel zur Darstellung von Tiefe und Entfernung verwendet wird. In Flash Player 10 und Adobe AIR 1.5 wurde die Unterstützung von 3D-Effekten eingeführt. Im Prinzip jedoch sind die Anzeigeobjekte flach. Jedes Anzeigeobjekt, z. B. ein MovieClip- oder ein Sprite-Objekt, wird letztendlich in zwei Dimensionen, auf einer einzigen Ebene, dargestellt. Die 3D-Funktionen ermöglichen Ihnen jedoch, diese Flächenobjekte in allen drei Dimensionen zu platzieren, zu verschieben, zu drehen oder in anderer Weise zu transformieren. Sie erlauben die Verarbeitung von 3D-Punkten und deren Konvertierung in zweidimensionale x/y-Koordinaten, sodass Sie 3D-Objekte auf eine 2D-Sicht projizieren können. Anhand dieser Funktion können Sie viele Arten der räumlichen Wahrnehmung simulieren. Das von ActionScript verwendete dreidimensionales Koordinatensystem unterscheidet sich von anderen Koordinatensystemen. Wenn Sie in ActionScript zweidimensionale Koordinaten verwenden, erhöht sich der x-Wert beim Verschieben nach rechts entlang der x-Achse und der y-Wert erhöht sich beim Verschieben nach unten entlang der y-Achse. Das dreidimensionale Koordinatensystem behält diese Konventionen bei und fügt die z-Achse hinzu, deren Wert erhöht wird, wenn vom Standpunkt weg, also nach hinten, verschoben wird. ![]() Die positiven Richtungen auf der x-, y- und z-Achse im dreidimensionalen ActionScript-Koordinatensystem
Hinweis: Bedenken Sie, dass Flash Player und AIR dreidimensionale Anzeigeobjekte in Ebenen darstellt. Das bedeutet, dass Objekt A, wenn es in der Anzeigeliste vor Objekt B kommt, in Flash Player oder AIR immer vor Objekt B angezeigt wird, und zwar ungeachtet der z-Achsenwerte der beiden Objekte. Um diese Unstimmigkeit zwischen Anzeigeliste und z-Achsenreihenfolge aufzuheben, verwenden Sie die transform.getRelativeMatrix3D()-Methode, um die Ebenen von dreidimensionalen Anzeigeobjekten zu speichern und neu anzuordnen. Weitere Informationen finden Sie unter Verwenden von 3DMatrix-Objekten zur Neuanordnung der Anzeige.
Die folgenden ActionScript-Klassen unterstützen die neuen 3D-bezogenen Funktionen:
Es gibt zwei verschiedene Ansätze, um 3D-Bilder in ActionScript zu simulieren:
|
|