• Stars
    star
    3,863
  • Rank 11,358 (Top 0.3 %)
  • Language
    JavaScript
  • License
    Other
  • Created almost 11 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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.

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.