Away3D

From Wikipedia, the free encyclopedia

Away3D est une plateforme open source permettant de développer des graphiques 3D interactifs pour les jeux vidéo et les applications, en Adobe Flash ou HTML5. La plateforme se compose d'un éditeur de monde 3D (Away Builder)[1],[2], d'un moteur graphique 3D (Away3D ou AwayJS), d'un moteur physique 3D (Away Physics)[3] et d'un format de fichier de modèle 3D compressé (AWD)[4],[5].

Formats lus Away3D scene (v2.x) (d)Voir et modifier les données sur Wikidata
Formats écrits Away3D scene (v2.x) (d)Voir et modifier les données sur Wikidata
Faits en bref Dépôt, Écrit en ...
Away3D
Informations
Dépôt github.com/away3d/away3d-core-fp11Voir et modifier les données sur Wikidata
Écrit en ActionScriptVoir et modifier les données sur Wikidata
Formats lus Away3D scene (v2.x) (d)Voir et modifier les données sur Wikidata
Formats écrits Away3D scene (v2.x) (d)Voir et modifier les données sur Wikidata
Type Moteur 3DVoir et modifier les données sur Wikidata
Licence Licence Apache 2.0Voir et modifier les données sur Wikidata
Site web away3d.comVoir et modifier les données sur Wikidata
Fermer

Le développement est géré par la Away Foundation, une organisation à but non lucratif basée au Royaume-Uni qui se consacre à la création et à la maintenance de ressources logicielles libres et open source pour les jeux mobiles et les applications haute performance[5],[6]. La fondation est soutenue par des entreprises (Adobe[7], JetBrains[8] entre autres) et des donateurs individuels.

Plateforme

Away Builder


Away Builder est un environnement de développement intégré open source permettant d'importer, d'affiner, de préparer et d'exporter des modèles et des animations 3D. Il peut importer des modèles 3D à partir de diverses applications 3D telles que Autodesk 3ds Max, et peut intégrer l'éclairage dans des cartes de texture. L'objectif principal d'Away Builder est d'exporter des paquets de modèles 3D pour le moteur Away3D. Il prend en charge le format binaire compressé AWD, qui permet d'obtenir des modèles 3D plus petits que les formats basés sur ASCII tels que OBJ.

Le plugin Away Extension permet d'exporter du contenu 2D et 3D depuis Adobe Animate vers Away3D ou AwayJS.

Away3D


Away3D est un moteur open source ActionScript 3 permettant de développer des graphiques 3D interactifs dans Adobe Flash Player et Adobe AIR. Away3D fonctionne sur les navigateurs web actuels utilisant Adobe Flash Player et utilise Stage3D pour le rendu accéléré par GPU.[citation nécessaire]

Le moteur peut rendre des modèles 3D et effectuer divers autres calculs 3D. Il prend en charge la transformation hiérarchique d'objets avec des fonctionnalités telles que la position, la rotation et la mise à l'échelle, ainsi que le rendu de textures bitmap. L'éclairage et l'illumination en temps réel sont pris en charge à l'aide du rendu Phong, du rendu Gouraud, de l'éclairage ponctuel et directionnel, des ombres en cascade, du mapping normal et spéculaire, de l'illumination globale et des effets de brouillard. Il prend également en charge le rendu stéréoscopique, le son 3D, les outils d'extrusion, l'animation de particules et l'animation squelettique. Des effets de post-traitement peuvent être utilisés pour améliorer la qualité des graphiques, et Away3D prend en charge le bloom, le flou, la profondeur de champ et le flou de mouvement.

Away3D 4 et les versions ultérieures prennent entièrement en charge les graphiques accélérés par GPU à l'aide de l'API Stage3D introduite dans Flash Player 11, libérant ainsi le CPU pour d'autres tâches de calcul. Comme les processeurs graphiques sont capables de rendre beaucoup plus de triangles texturés par seconde, cela permet d'obtenir beaucoup plus de détails et une meilleure qualité, et jusqu'à 100 000 triangles par image au lieu du plafond habituel de 1 000 avec le rendu Flash basé sur le processeur.

Away Physics est un moteur physique basé sur la bibliothèque physique Bullet, pour la détection des collisions et la dynamique des corps souples et rigides. Le moteur est développé conjointement par l'équipe Away3D et l'équipe JiglibFlash, et est étroitement intégré au pipeline de rendu Away3D.

AwayJS


AwayJS est un moteur de rendu graphique 3D open source JavaScript pour les navigateurs web HTML5, et est un portage de Away3D basé sur Adobe Flash. Le code source d'Away3D a été porté vers Microsoft TypeScript, une version fortement typée de JavaScript qui compile vers des fichiers JavaScript pour assurer la compatibilité avec les normes web modernes. AwayJS fonctionne sur les navigateurs web actuels et utilise WebGL pour le rendu accéléré par GPU.

Le moteur peut rendre des modèles 3D et effectuer divers autres calculs 3D. Il prend en charge la transformation hiérarchique d'objets avec des fonctionnalités telles que la position, la rotation et la mise à l'échelle, le rendu de textures bitmap et l'éclairage en temps réel à l'aide du rendu de Phong ou du rendu de Gouraud. Il prend également en charge le shadow mapping, l'animation de particules et l'animation squelettique.

AwayJS peut rendre du contenu graphique en 2D et 3D à l'aide de WebGL pour un rendu accéléré par GPU. Il permet aux développeurs d'utiliser la boîte à outils Away Builder existante pour éditer, affiner, compresser et texturer des modèles et des animations 3D. AwayJS prend également en charge le format binaire AWD compressé, ce qui permet d'obtenir des modèles 3D plus petits que les formats basés sur ASCII tels que OBJ.

L'API AwayJS est compatible avec la version Flash d'Away3D, ce qui permet aux développeurs existants de migrer de Flash vers HTML5 en toute transparence. Afin de préserver la rétrocompatibilité avec Away3D, AwayJS permet aux développeurs d'écrire des shaders GPU dans le langage Adobe Graphics Assembly Language (AGAL) ou le langage standard OpenGL Shading Language (GLSL).

Historique


Away3D a été lancé en 2007 par Alexander Zadorozhny et Rob Bateman comme un fork de Papervision3D.

Away3D a connu une participation active de la communauté depuis son introduction en 2007 et a remplacé Papervision3D après sa mise à jour pour prendre en charge le rendu accéléré par GPU à l'aide de Stage3D. Trois guides ont été publiés sur le développement de contenu 3D avec Away3D.

L'auteur précise que le moteur a commencé comme un projet de loisir, créé pour le plaisir. Après que de grandes agences de publicité et éditeurs de jeux l'aient adopté, ils ont dû « évoluer pour suivre le rythme ». Dans une interview, il ajoute :

Nous n'aurions jamais imaginé que cela prendrait une telle ampleur, mais notre intention a toujours été de fournir des outils et des bibliothèques accessibles qui facilitent la création de contenu 3D, pour tous, gratuitement et en open source. Nous ne nous lassons jamais de découvrir les choses incroyables que les gens créent à l'aide de nos bibliothèques, et nous avons encore beaucoup à améliorer et à ajouter. — Robert Bateman, fondateur, interview de Robert Bateman, fondateur d'Away3d

En 2009, la communauté Away3D a lancé Away3D Lite, une version allégée du moteur destinée aux publicités Flash et autres contenus soumis à des contraintes de taille. Away3D Lite était le moteur 3D complet le plus rapide et le plus petit jamais conçu pour Flash. Il pesait 25 Ko et était quatre fois plus rapide que le moteur Away3D complet. Aucune version ultérieure n'a été publiée.

En 2011, un livre sur Flash indiquait dans la section « 3D avec Flash » que « Away3D et Alternativa3D sont actuellement les solutions préférées en termes de performances et de fonctionnalités, car elles bénéficient d'une communauté de développement plus active ».

En 2013, Adobe a choisi Away3D comme seul moteur 3D inclus dans le SDK Adobe Gaming. Depuis lors, Adobe a financé le développement d'Away3D et d'Away Builder[9], et a mis à jour le SDK Adobe Gaming avec de nouvelles versions d'Away3D.

En 2016, Away3D 1.2 a été porté vers le langage multiplateforme Haxe, ce qui lui permet d'être compilé de manière croisée vers JavaScript et d'autres langages prenant en charge les graphiques 3D. Cela permet également à Away3D de fonctionner sur OpenFL, un framework logiciel doté d'une API très similaire à l'API Adobe Flash Player[10].

Sources

Related Articles

Wikiwand AI