A downloadable tool

A compact yet powerful and flexible C++ Game Engine designed for modern development needs with multi-engine and multi-window support.

โš ๏ธ UNDER CONSTRUCTION

This project is currently under active development. Many features are incomplete or subject to change. Use at your own risk for production applications.

๐Ÿš€ Features

  • Multi-Engine Architecture: Run multiple independent engine instances simultaneously
  • Multi-Window Support: Each engine can manage multiple windows with independent rendering contexts
  • Easy Integration: Simple API and comprehensive documentation (Work in Progress)
  • Hot-Reload Ready: DLL-based architecture enables dynamic loading and reloading
  • Extensible: Modular design allows for easy customization
  • Well-Tested: Comprehensive test suite ensures reliability
  • Self-Contained: All dependencies included in the repository

๐Ÿ“‹ Requirements

  • Operating System: Windows (macOS and Linux support coming soon)

๐ŸŽฏ Use Cases

  • Game Development: Build games with multiple viewport support
  • Editor Tools: Create Unity/Unreal-style multi-window editors
  • Simulation Software: Run multiple simulations simultaneously
  • Debugging Tools: Split game and debug views into separate windows
  • Multi-Monitor Setups: Leverage multiple displays effectively

๐Ÿ—๏ธ Architecture

Multi-Engine System Project32's unique multi-engine architecture allows you to:

Run multiple independent engines in the same process Each engine has its own window manager and render context Engines can run simultaneously or be controlled individually Perfect for complex editor scenarios or multi-view applications

API Layers

  • C API: Core exported functions for DLL interaction
  • C++ Wrapper: RAII-style P32::Engine namespace for modern C++
  • Instance Classes: EngineInstance and WindowInstance for object-oriented usage

๐Ÿ“š Documentation (coming soon)

For detailed documentation, examples, and API reference:

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guidelines for details on how to:

  • ๐Ÿ› Report bugs
  • ๐Ÿ’ก Suggest new features
  • ๐Ÿ”ง Submit pull requests
  • ๐Ÿ“ Follow our coding standards

๐Ÿ“„ License

This project is licensed under a custom MIT License with Attribution Requirements.

Key Points:

  • โœ… Free for personal and commercial use
  • โœ… Modify and distribute as needed
  • โš ๏ธ Attribution required in multiple locations (credits, documentation, store pages)
  • โš ๏ธ GitHub link required in all attributions
  • โš ๏ธ Commercial products must display attribution before purchase See the LICENSE file for complete details.

๐Ÿ‘จโ€๐Ÿ’ป Author

Patrick Reese (Retroboi64)

โญ Support the Project

If you find Project32 useful, please consider:

  • โญ Giving it a star
  • ๐Ÿ‘ค Following @Retroboi64
  • ๐Ÿ“ข Sharing it with others
  • ๐Ÿค Contributing to the project
  • ๐Ÿ’ฌ Joining the discussion

๐Ÿ”— Quick Links

Made with โค๏ธ by Retroboi64

Leave a comment

Log in with itch.io to leave a comment.