Pryč3D

Pryč3D
Typ bezplatný a open source software a grafický engine
Vývojář Nadace pryč
Klíčoví programátoři Rob Bateman, Alexander Zadorozhny, Fabrice Closier, Peter Kapelyan, Greg Caldwell, Andreas Engstrom, Stephen White, David Lenaerts, Richard Olsson, Cauê Waneck
Datum vydání 2007
Podporovaný OS Web , Windows , iOS , Android , BlackBerry
Psáno v jazycích ActionScript 3 , TypeScript
Licence Apache 2.0
Nejnovější verze 4.1.6
away3d.com

Away3D  je open source platforma pro vytváření interaktivních 3D aplikací a her založených na Adobe Flash nebo HTML5 . Platforma se skládá z editoru 3D světa (Away Builder), [1] [2] 3D grafického enginu (Away3D nebo AwayJS) a 3D fyzikálního enginu (Away Physics). [3]

Implementováno britskou neziskovou organizací Away Foundation , jejímž cílem je vytváření a údržba bezplatného open source softwaru pro vývoj vysoce výkonných mobilních her a aplikací. [4] Tato instituce je financována firemními sponzory (jako jsou Adobe , JetBrains a další) a jednotlivci.

Struktura

Away Builder

Away Builder  je otevřené IDE pro import, vylepšení, umístění a export 3D modelů a animací. [1] Je schopen importovat data z programů jako Autodesk 3ds Max , zapékat osvětlení do texturových map. [1] Hlavním účelem této komponenty je exportovat balíčky 3D modelů pro engine Away3D. [1] Away Builder podporuje komprimovaný binární formát AWD, který umožňuje dosáhnout menších velikostí souborů než formáty založené na ASCII (jako je OBJ ). [4] [5]

Plugin Away Extensions umožňuje exportovat 3D a 2D projekty z Adobe Animate do Away3D nebo AwayJS. [6]

Away3D

Away3D  je otevřený engine ActionScript 3 pro vývoj interaktivní 3D grafiky pomocí Adobe Flash Player a Adobe AIR . Away3D běží v prohlížečích pomocí Adobe Flash Player a používá Stage3D pro hardwarově akcelerované vykreslování .

Engine umí vykreslovat 3D modely a provádět různé další výpočty související s 3D grafikou. Podporuje hierarchickou transformaci objektů s vlastnostmi, jako je poloha, rotace, měřítko, vykreslování textur. [7]

Away3D je vybaven následujícími funkcemi:

  1. Práce s osvětlením:
  2. Nástroje:
    • stereoskopické vykreslování;
    • 3D posouvání zvuku;
    • vytlačovací nástroje;
    • animace částic;
    • kosterní animace .
  3. Efekty po zpracování:

Away3D verze 4 a vyšší plně podporují hardwarovou akceleraci pomocí Stage3D API představeného v Adobe Flash Player 11, čímž uvolňují CPU pro jiné výpočetní úlohy. [8] Vzhledem k tomu, že GPU jsou schopny vykreslit více texturovaných polygonů za sekundu (až 100 000 polygonů na snímek namísto obvyklých 1 000 polygonů při vykreslování pomocí CPU), zlepšuje to detaily a kvalitu obrazu.

Away Physics  je fyzikální engine založený na Bulletu pro detekci kolizí, dynamické vykreslování tuhých a měkkých těles. Byl vyvinut ve spolupráci s týmem JiglibFlash a těsně integrován do renderovacího kanálu Away3D. [3]

AwayJS

AwayJS  je open source 3D grafický renderovací engine pro webové prohlížeče, což je port Away3D založený na Adobe Flash, [9] [10] který byl vytvořen portováním zdrojového kódu Away3D do jazyka TypeScript . [11] Tento engine běží na moderních prohlížečích a používá WebGL pro hardwarově akcelerované vykreslování. Podporuje hierarchickou transformaci objektů spolu s Away3D. [9]

AwayJS má následující funkce:

Engine dokáže vykreslit 2D i 3D obsah. [12] To umožňuje vývojářům používat stávající prostředí Away Builder k úpravě, vylepšení, komprimaci a pečení textur 3D modelů, animací. AwayJS umí číst i dříve zmíněný formát AWD.

Rozhraní API enginu je konzistentní s verzí Flash Away3D, což vývojářům pomáhá hladce přejít z Flash na HTML5. Pro zajištění zpětné kompatibility s Away3D poskytuje AwayJS možnost psát shadery v AGAL (Adobe Graphics Assembly Language) a GLSL (OpenGL Shading Language). [9]

Historie

Vývoj platformy zahájili v roce 2007 Alexander Zadorozhny a Rob Bateman jako odnož projektu Papervision3D. [13]

Díky aktivnímu zapojení komunity Away3D brzy nahradil Papervision3D aktualizací, která přidala podporu pro hardwarově akcelerované vykreslování pomocí Stage3D. Byly vydány tři knihy o vývoji 3D obsahu pomocí Away3D. [14] [15] [16]

Jeden z autorů uvedl, že zpočátku motor vznikal ve volném čase bez vážnějších úmyslů. Poté, co autoři získali úspěch mezi reklamními agenturami a herními vydavateli, museli „držet krok s růstem popularity“.

Nikdy by nás nenapadlo, že se projekt stane tak velkým, ale naším cílem vždy bylo poskytovat dostupné nástroje a knihovny, které pomohou při vytváření 3D obsahu pro každého – zcela zdarma a s otevřeným zdrojovým kódem. Nikdy nebude nudné sledovat, jak lidé vytvářejí úžasné věci pomocí našich nástrojů a knihoven. Navíc je stále tolik funkcí, které bychom rádi vylepšili nebo přidali.

— Rob Bateman v rozhovoru pro JetBrains. [čtyři]

V roce 2009 komunita Away3D vydala Away3D Lite, odlehčenou verzi enginu s možností přidávat reklamy a další obsah s omezenou velikostí. [17] Away3D Lite byl nejrychlejší a nejlehčí 3D engine vestavěný ve Flashi. Jeho velikost byla 25 kilobajtů a rychlost byla 4krát lepší než plná verze. Nenásledovaly žádné další verze programu.

V roce 2011 byly v knize Game Engine Gems 2 v sekci „3D with Flash“ uvedeny Away3D a Alternativa3D jako preferovaná řešení pro jejich výkon a funkčnost, protože obě měly nejaktivnější vývojářskou komunitu. [13]

V roce 2013 si společnost Adobe vybrala Away3D jako jediný modul, který je součástí sady Adobe Gaming SDK. Společnost financovala další vývoj Away3D a Away Builder.

V roce 2016 byl Away3D 1.2 portován na multiplatformní jazyk Haxe , což umožnilo křížovou kompilaci enginu . Umožňuje také spouštět Away3D na OpenFL, frameworku s API velmi podobným tomu Adobe Flash Player. [osmnáct]

Literatura

Poznámky

  1. ↑ 1 2 3 4 Away Builder-Away Tools . awaytools.com . Získáno 19. září 2021. Archivováno z originálu 10. února 2015.
  2. GitHub - awaytools/  AwayBuilder . GitHub . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  3. ↑ 12 Pryč Fyzika |  Nadace Away  _ . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  4. ↑ 1 2 3 Rozhovor s Robertem Batemanem, zakladatelem Away3d, open-source 3D enginu pro platformu Flash | Novinky   JetBrains ? . blog jetbrains . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  5. AWD Format-Away Tools . awaytools.com . Získáno 19. září 2021. Archivováno z originálu 29. ledna 2015.
  6. Away Extensions . exchange.adobe.com _ Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  7. Funkce > Away3D . away3d.com . Získáno 19. září 2021. Archivováno z originálu 5. března 2016.
  8. Výkon Stage3D vs WebGL – Airtight Interactive . www.airtightinteractive.com . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  9. ↑ 1 2 3 Domů > Pryč3D . typescript.away3d.com . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  10. AwayJS  . _ GitHub . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  11. Blog > The Away Foundation at Reasons to be Creative > Away3D . away3d.com . Získáno 19. září 2021. Archivováno z originálu 9. února 2014.
  12. ↑ Starling JS se hrnou do nadace Away  . Gamua . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.
  13. ↑ 1 2 Arnaud Remi. Game Engine Gems / ed. Erik Lengyel. - CRC Press, 2011. - S. 207-208. — ISBN 978-1-56881-437-7 .
  14. Michael Ivanov. Away3d 3.6 Kuchařka . — 24. 5. 2011. Archivováno 17. září 2021 na Wayback Machine
  15. Matthew Casperson. Away3D 3.6 Essentials . — 25. 1. 2011.
  16. Richard Olsson, Rob Bateman. Základní průvodce 3D ve Flashi . — 05.05.2010.
  17. Stáhnout > Away3D Lite verze 1.0 > Away3D . away3d.com . Získáno 19. září 2021. Archivováno z originálu dne 8. března 2016.
  18. away3d (5.0.9) . Haxe – sada nástrojů pro více platforem . Získáno 19. září 2021. Archivováno z originálu dne 17. září 2021.

Odkazy