A-Frame (software)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
A-Frame
DevelopersDiego Marcos, Don McCurdy, Kevin Ngo
Initial releaseDecember 2015; 10 years ago (2015-12)
Stable release
1.7.0 / February 20, 2025; 13 months ago (2025-02-20)[1]
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inJavaScript
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    PlatformCross-platform
    TypeJavaScript framework
    LicenseMIT License
    Websiteaframe.io

    A-Frame is an open-source web framework, written in JavaScript, for building virtual reality (VR) experiences.[2] It is maintained by developers from Supermedium (Diego Marcos, Kevin Ngo) and Google (Don McCurdy). A-Frame is an entity component system framework for Three.js where developers can create 3D and WebXR scenes using HTML. HTML provides a familiar authoring tool for web developers and designers while incorporating a popular game development pattern used by engines such as Unity.

    History

    [edit | edit source]

    A-Frame was originally developed within the Mozilla VR team during mid-to-late 2015.[3] A-Frame was created in order to allow web developers and designers to author 3D and VR experiences[4] with HTML without having to know WebGL.[5] A-Frame's first public release was on December 16, 2015.[6] On December 16, 2019 A-Frame version 1.0.0 was released.[7]

    Community

    [edit | edit source]

    All online IDEs support A-Frame as a result of being based on HTML. Documentation is available for the API.[8] Support for developers committing to the library is provided via GitHub issues, while support for developers building apps and web pages is provided via StackOverflow.[9] Real-time on-line support is provided via Slack.[10] Most of the developers are also on Twitter[citation needed].

    Usage

    [edit | edit source]

    Mozilla Hubs chat room software uses A-Frame.[11]

    Example

    [edit | edit source]
    <html>
      <head>
        <script src="https://aframe.io/releases/1.3.0/aframe.min.js"></script>
      </head>
      <body>
        <a-scene>
          <a-box position="-1 0.5 -3" rotation="0 45 0" color="#4CC3D9"></a-box>
          <a-sphere position="0 1.25 -5" radius="1.25" color="#EF2D5E"></a-sphere>
          <a-cylinder position="1 0.75 -3" radius="0.5" height="1.5" color="#FFC65D"></a-cylinder>
          <a-plane position="0 0 -4" rotation="-90 0 0" width="4" height="4" color="#7BC8A4"></a-plane>
          <a-sky color="#ECECEC"></a-sky>
        </a-scene>
      </body>
    </html>
    

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]