Skip to content

Segs/SegsEngine

Repository files navigation

SEGS Engine Logo

A heavily modified stand-alone fork of the Godot engine

Synced with upstream up to godotengine/godot@42f04cbc1a59772a5f7eca9c6847fa349b23a70e

Note: Our changes likely introduced new errors, please if at all possible, check similar operations on upstream editor.

Differences & Goals (incomplete list)

  • Codebase is meant to be modernized to a current c++ standard (c++17), but we will be careful with readability ( no auto-everything )
  • We use Qt5::Core library to ease some of the common tasks, but no Qt types are meant to be a part of the API
  • Memory allocation is important, reduce the size of COW object pastures 😄
  • Try to port & clean up most of the internal types to EASTL (Set and Map already done).
  • Keep things in sync with upstream ( no more than a 1 week between merges )
  • Introduction of 2 types of dynamically/statically loaded plugins : infrastructure ( providing new types, extending engine ) and game ( implementing game logic )
  • Reduce the target surface to desktop-like platforms only ( no js, no mobile )
  • Remove the death-like grip of gdscript on the engine internals, make it more optional.
  • Replace the message/signals with a saner c++ delegates/work queues and expose those to scripting languages.

Largest differences

  • String type has been split into utf8 based String and se_string_view and UI only String based on QString.
  • Many places in the codebase no longer use COW types (Vector), but use EASTL ones instead.
  • Some modules are hard-disabled ( gdnative,camera ), some will make a comback ( mono )
  • (TODO: fill this as we progress)

REQUIREMENTS AND NOTES

Below are the utilities and libraries you'll need to compile SegsEngine in any environment. While it may be possible to use another toolset, the C++ Toolchain below is the only one officially supported by the SEGS team. These packages are available for both Linux or Windows:

Original README.md contents follow:

Godot Engine

Homepage: https://godotengine.org

2D and 3D cross-platform game engine

Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that users can focus on making games without having to reinvent the wheel. Games can be exported in one click to a number of platforms, including the major desktop platforms (Linux, Mac OSX, Windows) as well as mobile (Android, iOS) and web-based (HTML5) platforms.

Free, open source and community-driven

Godot is completely free and open source under the very permissive MIT license. No strings attached, no royalties, nothing. The users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the Software Freedom Conservancy not-for-profit.

Before being open sourced in February 2014, Godot had been developed by Juan Linietsky and Ariel Manzur (both still maintaining the project) for several years as an in-house engine, used to publish several work-for-hire titles.

Screenshot of a 3D scene in Godot Engine

Getting the engine

Binary downloads

Official binaries for the Godot editor and the export templates can be found on the homepage.

Compiling from source

See the official docs for compilation instructions for every supported platform.

Community and contributing

Godot is not only an engine but an ever-growing community of users and engine developers. The main community channels are listed on the homepage.

To get in touch with the developers, the best way is to join the #godotengine IRC channel on Freenode.

To get started contributing to the project, see the contributing guide.

Documentation and demos

The official documentation is hosted on ReadTheDocs. It is maintained by the Godot community in its own GitHub repository.

The class reference is also accessible from within the engine.

The official demos are maintained in their own GitHub repository as well.

There are also a number of other learning resources provided by the community, such as text and video tutorials, demos, etc. Consult the community channels for more info.

Travis Build Status AppVeyor Build Status Code Triagers Badge Translate on Weblate

About

The engine that will become the basis for client/editor/server components.

Topics

Resources

License

BSD-3-Clause, MIT licenses found

Licenses found

BSD-3-Clause
LICENSE.md
MIT
GODOT_LICENSE.txt

Stars

Watchers

Forks

Packages

No packages published