COCOS 4 is an open-source, high-performance, cross-platform game and interactive content development engine. Built on a mature C++ architecture, it provides powerful rendering capabilities and flexible script bindings, supporting a "write once, run anywhere" philosophy.
Previously, Cocos Creator referred to the combined engine and editor, spanning versions 1.x, 2.x, and 3.x. To embrace a purely open-source model and fully integrate AI, we are separating the engine from the editor. This is a significant and necessary evolution. Moving forward:
COCOS will refer solely to the engine, with the major version upgrading to COCOS 4. The cross-platform framework and the core components of the editor will be converted to CLI tools and integrated into the engine's core functionality. This represents a major new addition to this open-source release.
- 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, and WebGL on Web platforms.
- 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.
- 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 render pipeline following the same approach.
- Extensible Surface Shader: The material system is built on Coco's effect format which uses GLSL 300, the shader programs will be converted to a suitable runtime format automatically. The surface shader permits to fully customize the surface material while ensuring a universal lighting model.
- 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 environments.
- 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 4 also provides a built-in animation system, physics system, particle system, terrain editing support, complex UI system, instant preview, etc.
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.
- Install node.js v9.11.2 +
- Install gulp-cli v2.3.0 +
Clone this repository into your local environment.
In the cloned engine folder, run the following command to set the development environment:
# download & build engine dependencies
npm installThis is all you have to do to set up the engine development environment.
- 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 buildPlease refer to native readme if you want to develop native applications.
You can contribute to the Cocos Creator open-source engine in many ways, they are very much appreciated:
- Report bugs or feature requests by creating an issue.
- Participate in discussions in the issues.
- Create a pull request if you have fixed or improved anything, or implemented any features.
- Improve the documentation with pull requests to the usage documentation repository.
- Help other developers in our Forum.
If you are trying to make a pull request, some requirements must be met so that your pull request can be accepted:
- Follow our Cpp Coding Style Guide and TypeScript Coding Style Reference.
- Try to integrate ESLint and CPP auto fix tools in your coding environment.
- Link related issues or discussions in your pull request and clearly state the purpose of your pull request.
- Pass all automatic continuous integration tests.
- Request file owners or engine developers to review your pull request.
- Get one valid approval from the engine architects.
- 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.
- Official site
- Download
- Documentation
- API References
- Projects and road map
- Forum
- Discord community: Search for Cocos in the Discover panel of Discord.
