JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    Egret Core

    Egret is a brand new open mobile game and application engine which allows you to quickly build mobile games and apps on Android,iOS and Windows.
    Filed under 

    • 🔾68%Overall
    • 2,665
    • 1.3 days
    • 🕩580
    • 👥6

    forks stars version license

    EN / CN

    Egret Engine

    The Egret Engine is a HTML5 game engine. It provides modules to handle common game development tasks such as 2D and 3D rendering, GUI systems, and audio and resource management. The Egret engine is flexible and suitable for 2D or 3D projects. It allows developers to work without worrying about low-level browser impelementation, HTML5 performance, or fragmentation issues.

    Platform Coverage

    Mobile

    PC

    Installation

    To Install the Egret Engine:

    Once installation is complete, Egret's engine and tools are easy to manage.

    Getting Started

    TypeScript

    Egret projects are developed using TypeScript, which is a superset of JavaScript. Please refer to the TypeScript manual for more information. The Egret API and ActionScript3 (AS3) are very similar. It will be easy to get started with Egret if you are familiar with AS3.

    Create a project by command line

    Use following command to create a default game object:

    egret create HelloWorld
    

    You may also add parameters if required: Use empty | game | gui | eui to specify different projects.

    After running this command, you should now see a folder called 'HelloWorld'.

    Write your first line of code

    By default, the entry point for an Egret game projects is src / Main.ts. To make write the first line of code for your project, find the createGameScene () function, and add console.log ("Hello World");

    After making your changes, the code should now look like this:

    private createGameScene():void {
            // log
            console.log("Hello World");
            var sky:egret.Bitmap = this.createBitmapByName("bgImage");
            this.addChild(sky);
            var stageW:number = this.stage.stageWidth;
            var stageH:number = this.stage.stageHeight;
            sky.width = stageW;
            sky.height = stageH;
            //...
        }
    

    Here, we've called console.log("log content that we'd like to display"). This will display our log message in the browser's developer tool.

    We recommend using Chrome to debug the Egret project.
    

    Use the following command to build Egret projects:

    egret build
    

    Use the following command to run Egret projects:

    egret startserver
    

    For more information, please refer to the Learning Module documentation.

    Demos

    Tower Defence Demo Click here for online experience.

    Click here for more 2D/3D demos.

    Show Case

    Click here to see Show Case

    Learn

    • Access Doc to get Engine document
    • Access Example to learn demo source code
    • Access API to get API document
    • Access Video to get videos
    • Access Community to communicate with other developers

    Tools

    Third Party Library

    • Use base64texture to convert base64 String to egert Texture
    • Use dcagent DataEye SDK for Egret
    • Use ecs component system
    • Use euiextension EUI extension
    • Use gesture Gesture library
    • Use keyboard Keyboard event listener
    • Use Greensock Greensock animation library
    • Use jszip jszip Compression library
    • Use md5 A simple MD5 Library
    • Use mouse PC mouse support library
    • Use particle particle system
    • Use physics p2Physics engineļ¼Œcurrent version 0.7.0
    • Use socket socket.io
    • Use tiled tiledmap support library
    • Use weixinapi WeChat API
    • More third party libraries please visit here

    Contributing

    Asking a question is the first step to participating in an open-source community. You can report Egret issues here. It is recommended that issues be discussed in the official community portal, as it can help with solving problems efficiently.

    License

    This content is released under the (https://opensource.org/licenses/BSD-2-Clause) BSD License.

    Show All