U kunt overwegen handmatig 3D-effecten tot stand te brengen.
In Flash Player 10 en AIR 1.5 werd een 3D-engine geïntroduceerd waarmee u perspectieftransformatie op weergaveobjecten kunt toepassen. U kunt deze transformaties toepassen met behulp van de eigenschappen
rotationX
en
rotationY
of met de
drawTriangles()
-methode van de Graphics-klasse. U kunt dan ook diepte toepassen met de
z
-eigenschap. Onthoud, dat elk met een perspectief getransformeerd weergaveobject als een bitmap gerasterd is en daarom meer geheugen vereist.
In de volgende afbeelding ziet u de anti-aliasing die door de rastering tijdens de perspectieftransformatie wordt gemaakt.
Antialiasing treedt op wanneer vectorinhoud dynamisch wordt gerasterd als een bitmap. Deze anti-aliasing doet zich voor wanneer u 3D-effecten gebruikt in de desktopversie van AIR en Flash Player en in AIR 2.0.1 en AIR 2.5 voor mobiele apparaten. Anti-aliasing wordt echter niet toegepast op Flash Player voor mobiele apparaten.
Als u handmatig een 3D-effect kunt maken zonder op een eigen API te vertrouwen, kan dit het geheugengebruik verminderen. De nieuwe 3D-functies die in Flash Player 10 en AIR 1.5 werden geïntroduceerd, maken textuurmapping eenvoudiger, dankzij methoden zoals
drawTriangles()
die textuurmapping zelf verwerkt.
Als ontwikkelaar bepaalt u of het 3D-effect dat u wilt maken een betere prestatie levert als deze via de native API of handmatig wordt verwerkt. Houd rekening met de uitvoerings- en renderingsprestatie en het geheugengebruik van ActionScript.
In mobiele toepassingen van AIR 2.0.1 en AIR 2.5, waarin u de toepassingseigenschap
renderMode
op
GPU
instelt, voert de GPU de 3D-transformaties uit. Als de eigenschap
renderMode
is ingesteld op
CPU
, voert de CPU en niet de GPU de 3D-transformaties uit. In Flash Player 10.1-toepassingen voert de CPU de 3D-transformaties uit.
Wanneer de CPU de 3D-transformaties uitvoert, moet u er rekening mee houden dat voor het toepassen van 3D-transformatie op een weergaveobjectect, twee bitmaps in het geheugen zijn vereist. Eén bitmap is bedoeld voor de bronbitmap en een tweede bitmap voor de versie met het gewijzigde perspectief. 3D-transformaties werken in dit opzicht net als filters. Maak daarom spaarzaam gebruik van 3D-eigenschappen wanneer de CPU de 3D-transformaties uitvoert.