Pixel2D is a 2D game engine built in TypeScript. It provides an easy-to-use and flexible platform for game developers to create 2D games quickly and efficiently. It can run both as a desktop application and in the browser.
-
Clone the repository:
$ git clone https://github.com/gurvirbaraich/game-engine.git $ cd game-engine
-
Install dependencies:
$ yarn install
-
Build the project:
$ yarn build
-
Start the development server:
$ yarn serve
This will start a development server at localhost:8080 and open the app in your default browser.
To watch for changes in the source code and automatically rebuild, run:
$ yarn build:watch
- Physics engine integration
- Sprite rendering and animation support
- Tilemap rendering and management
- Particle effects
- Input handling (keyboard, mouse, touch)
- Gamepad support
- Audio playback and management
- Scripting support (e.g. Lua, JavaScript)
- Entity component system
- GUI system
- Scene and level management
- Asset management (e.g. loading and unloading of assets)
- Multiplayer networking support
- Mobile device support (e.g. iOS, Android)
- Cross-platform compatibility (e.g. Windows, macOS, Linux)
- Shader support for custom visual effects
- Integration with popular game engines (e.g. Unity, Unreal Engine)
- Customizable and extensible architecture
- Support for popular 2D game genres (e.g. platformers, RPGs, puzzle games)
- Documentation and community support
- Localization support for multiple languages
- Performance optimization tools and profiling
- Debugging tools and console output
Contributions to Pixel2D are always welcome! If you'd like to contribute, please follow these guidelines:
- Fork the repository and create a new branch for your feature or bug fix.
- Before making changes, make sure to fetch the latest changes from the main repository by running
git pull
. - Make your changes and write tests to ensure that your code works correctly.
- Run the tests and make sure they all pass.
- Submit a pull request to the main repository.
Pixel2D is licensed under the MIT License. See the LICENSE
file for details.