Skip to content

Latest commit

 

History

History
66 lines (43 loc) · 2.27 KB

README.md

File metadata and controls

66 lines (43 loc) · 2.27 KB

StubbFramework

Platform agnostic game framework based on ECS.

Project can be added as a submodule with the all dependencies as the submodules.

Included dependencies:

To install the framework use:

  • git submodule add [email protected]:VirtualMaestro/StubbFramework.git <path/name>

  • git submodule update --init --recursive

To update the framework and all it dependencies use:

  • git submodule update --recursive

To remove the framework use:

  • git submodule deinit -f <path/name>;
  • git rm -f <path/name>;
  • git commit -m 'Removed submodule';
  • rm -rf .git/modules/<path/name>;

Shortcuts for Git

You can add these shortcuts to your .gitconfig (under the [alias]) in order to simplify daily routine with submodules:

  • subst = "!f() { git submodule status --recursive;}; f"
  • suba = "!f() { git submodule add $1 $2; git submodule update --init --recursive;}; f"
  • subu = "!f() { git submodule sync; git submodule update;}; f"
  • subur = "!f() { git submodule sync; git submodule update --remote --merge --recursive --force;}; f"
  • subrm = "!f() { git submodule deinit -f $1; git rm -f $1; git commit -m 'Removed submodule'; rm -rf .git/modules/$1;}; f"

Examples

Let's take a look at scenario how to handle all of these manipulations with shortcuts. Let's say you want to install this framework for your Unity project (we assume it is under the git), then you have to place it somewhere in Assets folder. Navigate to your root folder (one above Assets) and do the following command:

Or just via clone (open git in folder Assets/Libs):

That's it. The framework will be added to this folder 'Assets/Libs/Stubb' and all dependencies will be downloaded.

When there is a new version of the Stubbframework and you want to update it:

  • git subur

When there is no needs anymore in this framework you can remove it:

  • git subrm Assets/Libs/Stubb

Scenes

In order to load scenes need to invoke:

World.LoadScenes