• Stars
    star
    5,558
  • Rank 7,312 (Top 0.2 %)
  • Language
    C++
  • License
    Other
  • Created almost 9 years ago
  • Updated about 2 months ago

Reviews

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

Repository Details

Cocos simplifies game creation and distribution with Cocos Creator, a free, open-source, cross-platform game engine. Empowering millions of developers to create high-performance, engaging 2D/3D games and instant web entertainment.

Cocos Creator Logo

stars forks license twitter

Engine for Cocos Creator

Cocos Creator is the new generation of game development tool in Cocos family, it brings a complete set of 3D and 2D features while providing an intuitive, low cost and collaboration friendly workflow to game developers. Cocos Engine is the runtime framework for Cocos Creator editor. To run this engine, please download Cocos Creator.

image

Cocos Creator inherited many good qualities and cool features from its previous versions, such as high performance low level C++ implementation, intuitive editor, cross-platform support. It supports native platforms, web platforms and rapidly expanding instant gaming platforms, including Windows, Mac, iOS, Android, HarmonyOS, Web, Facebook Instant Games, WeChat Mini Game and TikTok Mini Games.

Furthermore, Cocos Creator has pushed the engine technology to a whole new level for high performance with scalability on various platforms, full extensibility and easy development.

  1. Modern Graphics: The GFX implementation is designed to adapt to the modern graphics APIs, it uses Vulkan on Windows and Android, Metal on Mac OS and iOS, WebGL on Web platform.
  2. High Performance: The runtime engine is built with half C++ and half TypeScript, low level infrastructure, native platform adaptation, renderer and scene management are all written in C++ to ensure high runtime performance. We continue to move heavy lifting work to native as much as possible.
  3. Customizable Render Pipeline: The render pipeline is designed to be fully customizable, it has supported the builtin forward and deferred render pipeline across all platforms. Developers can customize their own render pipeline following the same approach.
  4. Extensible Surface Shader: The material system is built on Cocos effect format which uses GLSL 300, the shader programs will be converted to suitable runtime format automatically. The surface shader permit to fully customize the surface material while ensuring universal lighting model.
  5. Physically Based Rendering (PBR): The standard effect adopts physically based rendering, along with the physically based camera and the lighting based on physical metrics, developers can easily achieve realistic and seamless rendering results across different environment.
  6. Easy TypeScript API: The user level API set is provided in TypeScript, along with the powerful VSCode editor, development with Cocos Creator is incredibly efficient.

Besides all these highlights, Cocos Creator also provides builtin animation system, physics system, particle system, terrain editing support, complex UI system, instant preview etc.

image

This open source repository is the runtime engine of Cocos Creator, the engine is naturally integrated within Cocos Creator, designed to only be the essential runtime library and not to be used independently.

Development and Contribution Notice

Cocos Creator engine is open source and welcomes community participation, for open source engine development with Cocos Creator editor, you should fork this repository and setup custom engine in the editor.

Prerequisite

Clone

Clone this repository into your local environment.

Install

In the cloned engine folder, run the following command to setup development environment:

# download & build engine dependencies
npm install

This is all you have to do to setup engine development environment.

Build

  • If running inside Cocos Creator, the engine will automatically compile and build after the editor window is opened. For more instructions on modifying the engine in Cocos Creator, please refer to Engine Customization Workflow.
  • Outside the editor, you need to run the following command to build:
npm run build

Please refer to native readme if you want to develop native applications.

Contribution

You can contribute to the Cocos Creator open source engine in many ways, they are very much appreciated:

  1. Report bug or feature requests by creating an issue.
  2. Participate discussions in the issues.
  3. Create a pull request if you have fixed or improved anything, implemented any features.
  4. Improve the documentations with pull request to the usage documentation repository.
  5. Help other developers in our Forum.

Contribution notice

If you are trying to make a pull request, there are some requirements that must be met so that your pull request can be accepted:

  1. Follow our Cpp Coding Style Guide and TypeScript Coding Style Reference.
  2. Try to integrate ESLint and CPP auto fix tools in your coding environment.
  3. Link related issues or discussions in your pull request and clearly state the purpose of your pull request.
  4. Pass all automatic continuous integration tests.
  5. Request file owner or engine developers to review your pull request.
  6. Get one valid approval from the engine architects.

Example Project

  • Mind Your Step 3D: Beginner's step-by-step tutorial project repo.
  • Test Cases: Unit test scenes for every engine module.
  • Example Cases: Simple yet expressive demo scenes for baseline testing and topic-specific case study.
  • Awesome Cocos: You can find out other useful tools and show cases here.

Links

More Repositories

1

example-projects

Example project to guide users through how to create game with Cocos Creator
JavaScript
1,284
star
2

tutorial-blackjack-deprecated

Blackjack game made with Cocos Creator.
JavaScript
798
star
3

engine-native

Native engine for Cocos Creator v2.x
C++
693
star
4

cocos-awesome-tech-solutions

Cocos' Awesome Technical Solutions
TypeScript
615
star
5

cocos-example-projects

JavaScript
489
star
6

cocos-docs

Manual docs content for Cocos Creator
TypeScript
290
star
7

cocos-example-dark-slash

PLSQL
290
star
8

cocos-tutorial-first-game

Quick start game for Fireball
JavaScript
236
star
9

cocos-test-projects

TypeScript
212
star
10

cocomat

C
186
star
11

cocos-example-ball

A jumping ball demo created by Cocos Creator 3D
TypeScript
173
star
12

cocos-example-cartoon-vegetation

TypeScript
160
star
13

cocos-example-ui

TypeScript
144
star
14

cocos-tutorial-taxi-game

TypeScript
144
star
15

cocos-tutorial-duang-sheep

tutorial repo
JavaScript
120
star
16

creator-lua-deprecated

Cocos Creator 的 Lua 支持
Lua
117
star
17

cocos-tutorial-airplane

video tutorial airplane
TypeScript
109
star
18

awesome-cocos

⚡️ Delightful Cocos Creator show cases, utilities, documents and more!
103
star
19

cocos-tutorial-mind-your-step

Cocos Creator learning tutorial
TypeScript
70
star
20

firedoc-deprecated

API Doc generator based on YUIDoc
JavaScript
70
star
21

cocos-example-process-build-textures

A build plugin to help you process textures in Creator 2.x after build
JavaScript
66
star
22

FBX-glTF-conv

A FBX to glTF file format converter.
C++
61
star
23

example-camera-deprecated

Camera demo for Cocos Creator
JavaScript
48
star
24

cocos-engine-external

external 3rd party modules for cocos-engine
C++
44
star
25

cocos-creator-extensions

TypeScript
38
star
26

cocos-example-physics

Samples for 3d physics
TypeScript
24
star
27

cocos-example-marionette

This project is to demonstrate the use of Cocos Creator Marionette animation system.
TypeScript
24
star
28

example-instant-games-deprecated

JavaScript
20
star
29

example-combat-animation-deprecated

turn based action rpg
JavaScript
19
star
30

i18n-example-deprecated

showcase how to implement i18n to your game.
JavaScript
19
star
31

smart-merge-tool-deprecated

JavaScript
17
star
32

cocos-tutorial-storage

Cocos Creator Demo: Save and load user profile with encryption using sys.localStorage
JavaScript
17
star
33

example-team-build-ui-deprecated

Team build ui demo for Cocos Creator
JavaScript
16
star
34

creator-api-docs-2.x

Host generated Cocos Creator 2.x API
JavaScript
15
star
35

cocos-plugin-import-2.x

plugin for migrating cocos creator 2.x projects.
TypeScript
14
star
36

helloworld-typescript-legacy

Typescript helloworld project template for Cocos Creator
TypeScript
13
star
37

google-game-sdk

C++
13
star
38

gulp-fontello-import-deprecated

Import svg files to fontello icon font project, use svg filename as glyph name. Also provide task for auto download exported css and font files into desinated folder.
JavaScript
12
star
39

cocos-example-materials

TypeScript
11
star
40

example-responsive-ui-deprecated

Cocos Creator - Responsive UI demo
JavaScript
11
star
41

divine-vanity-deprecated

JavaScript
9
star
42

cocos-example-open-data-context

TypeScript
9
star
43

cocos-google-admob

Objective-C
9
star
44

cocos-example-render-pipeline

TypeScript
8
star
45

cocos-template-taxi-game

TypeScript
8
star
46

cocos-benchmark

EJS
7
star
47

cocos-tutorial-video-src

JavaScript
6
star
48

ui-kit-deprecated

JavaScript
6
star
49

cocos-effect

VSCode Syntax highlight support for Cocos Effect file
TypeScript
6
star
50

avg-examples

5
star
51

cocos-web-extension-detect-engine

A Chrome extension to detect the engine running in web.
JavaScript
4
star
52

example-packages-deprecated

HTML
4
star
53

overhead-benchmark-deprecated

Creator 架构层性能损耗 Benchmark
C++
4
star
54

cocos-ccbuild

TypeScript
4
star
55

cocomat-docs

3
star
56

firedoc-theme-notab-deprecated

A new theme without tab in navigation sidebar
HTML
3
star
57

devops-workflows

Workflows for creator team.
JavaScript
3
star
58

v8

C++
3
star
59

cocos-gameplay

cocos creator gameplay
TypeScript
3
star
60

cocos-example-custom-pipeline

TypeScript
3
star
61

gulp-download-fire-shell-deprecated

gulp plugin to download atom-shell
2
star
62

node-font-lib-deprecated

built for https://github.com/fireball-x/font-editor
JavaScript
2
star
63

hello-world-legacy

Hello world new project template.
JavaScript
2
star
64

fireball-engine-core-deprecated

The basic classes used in fireball engine and editors
JavaScript
2
star
65

runtime-pixi-deprecated

A pixi runtime for test basic fireball features
JavaScript
2
star
66

gulp-fb-deprecated

utilities for gulp
JavaScript
1
star
67

fire-watch-deprecated

A watch module based on node-pathwatcher, the module is implemented for syncing changes between file system and asset db in fireball
JavaScript
1
star
68

tests-3d-deprecated

engine-3d test framework
HTML
1
star
69

fireball-runtime-cocos-deprecated

JavaScript
1
star
70

firedoc-theme-default-deprecated

Optimized theme for firedoc
Handlebars
1
star
71

cocos-fire-path

node's path module with some helpful additions.
JavaScript
1
star
72

cocos-fire-fs

node's fs module with some helpful additions.
JavaScript
1
star
73

preview-template-deprecated

JavaScript
1
star
74

font-editor-angular-deprecated

Font Editor
JavaScript
1
star
75

atlas-editor-polymer-deprecated

Atlas Editor for 2D games
JavaScript
1
star
76

cocos-scripting

TypeScript
1
star
77

creator-types

TypeScript
1
star