top of page
  • Writer's picturede_CLAS Softworks

The Braver Framework

Updated: Jul 17, 2023

The Braver Framework is a lightweight publishing platform created for use within the Unity game engine. It contains a collection of scripts, prefabs and scenes that form the basis of most games. Best practices and coding standards have been applied consistently from the initial creation of the framework.

The framework contains a skeleton of commonly used game features in order to provide a platform that can rapidly progress from prototype to publishing. Essentially, the framework is a generic UI that offers a range of functionality (e.g. advertising/privacy management, saving/loading, language localization, volume management and scene transitions). It also includes universal game scenes that cover basic game elements that the developer can use as a foundation for creating a new project (e.g. SplashScreen, MainMenu, LoadingScreen, Level1, EndingSequence and Credits).

Underneath the UI, prefabs and prefab variants are heavily utilized along with a 'game/scene scope' paradigm which offers the developer the ability to easily edit and adapt multiple game objects either at the game or scene level. Continuing with this pattern, the folder organization has a similar game/scene approach. This can be particularly useful when working with multiple developers; for example, the folder structure can provide the senior developer with just enough information to prevent merge conflicts from ever occurring (i.e. if a junior developer has changed files outside their allocated scene scope, it will immediately be evident via the folder structure in the pull request).


Each scene in the framework is designed to be responsible for instantiating it's own music, sound effects and particle systems. These elements are managed by their own object pool. This technique reduces the need for garbage collection and helps keep the frame rate constant. This strategy mitigates loading times as assets are only loaded when required by the scene.


The framework has been designed to be decoupled from the development of the actual game, this approach enables the developer to continuously add improvements to the framework whilst working on their current game project. Updates to the framework are smoothly carried out via Unity's package import manager which brings these improvements forward to new game projects. For older projects that incorporate the Braver Framework, this method can be used to facilitate updates (e.g. new Google Play/App Store requirements) without difficulty.

Custom build pipelines have been implemented for iOS and Android (via fastlane and ADB) to allow for 'single click' builds that are immediately pushed to the attached device on successful build. This reduces the tedium involved for the developer when creating and testing builds on physical devices. Additional build pipelines have also been configured that seamlessly publish to Google Play and the App Store.


Several specialized developer tools are integrated within the framework that allow the developer to rapidly test individual levels within the Unity Editor and minimise developer fatigue when performing repetitive tasks.


The performance of the framework has been tested with a team of artists, technical artists and junior developers. It's stability, flexibility and ease of use enables it to meet stringent deadlines and publish within a short time frame.

86 views

Комментарии


bottom of page