Page MenuHomePhorge
Contents

Echo 3
Updated 78 Days AgoPublic

Echo logo

Echo is a cross-platform C++ framework and game engine for mobile, desktop and consoles. It is free and open source, under the permissive MIT licence.

The primary goals of Echo are:

  • Facilitate experimentation with consistent abstractions for a wide variety of platforms, toolchains and C++ standards, enabling write once core logic.
  • Performance is important so abstractions are designed to give target implementations the flexibility to deal with details as needed. In some situations it is possible to pre-process and prepare code and data to optimise for the target.
  • Enable a minimum level of graphics support that "echoes" past capabilities. This doesn't mean modern features won't be available (e.g PBR) but those won't necessarily backwards compatible.
  • Be modular and easy to port a subset or all functionality to new platforms without too much trouble.
  • Provide base functionality to enable software to run on older or unusual hardware. This often sacrifices some C++ standard features in place of platform abstractions to ensure target hardware is capable of running code. If this is not important to your then you can ignore the corresponding Echo implementations of features in place of C++ standards.

Development for Echo is primarily done on a Linux PC, with deployment options for other major platforms, so that is the recommended development setup. Ubuntu-based distributions are recommended. Some users have had success on other distributions though.

Development on Windows can be made easier using edepbuild for which there is a PowerShell version available.

See Getting Started with Echo3.

Echo is the origin of edepbuild build script.

Echo 3

Features:

  • Platform abstraction
  • Configuration handling
  • Abstract factory
  • File system and data access abstractions
  • Virtual File System
  • Networking including socket and web-socket support
  • Time
  • User input
  • Sensors
  • Audio
  • Graphics
  • GUIs
  • Execution environment
  • Physics
  • Maths
  • Tile maps
  • Animation
  • Localisation
  • UTF8 support
  • A framework for managing dependencies
  • For each platform officially supported there are numerous tools provided

Projects

Echo is the framework that supports the following projects:

Last Author
0xseantasker
Last Edited
Sep 3 2024, 6:52 PM

Event Timeline

0xseantasker changed the edit policy from "All Users" to "Restricted Project (Project)".Feb 27 2015, 1:05 PM
0xseantasker changed the visibility from "All Users" to "Restricted Project (Project)".Jun 1 2015, 3:59 PM
0xseantasker edited the content of this document. (Show Details)
0xseantasker added a project: Restricted Project.
0xseantasker changed the visibility from "Restricted Project (Project)" to "Public (No Login Required)".Mar 6 2019, 3:49 PM
0xseantasker edited the content of this document. (Show Details)