Architecture

In order to be usable in every use case, Bedrock provides support for new projects to integrate fully with every part of its buildchain as well as for old legacy projects where custom codebases and build chains may pre-exist and need to be retained. Forcing a developer to rewrite the core of their code or abandon existing in-house technologies is not an option.

As a result, and with both these situations in mind, Bedrock's build flow acts as depicted below:

Bedrock Architecture

Developers have the option to integrate with any or none of the following features from Bedrock:

  • The Runtime abstraction layers
  • The standardised Resource Handler
  • The provided device database

Regardless of which of these features are used, a Bedrock project ingests the final resources files and Java source that would normally be passed into the Java Compiler. Instead of compiling these into a JAR, for non-Java platforms Bedrock's CrossCompiler will transform this source code into a format required for the particular platform. Then, by integrating with the required official SDK, a native binary will be created, ready to be tested and deployed.

A standardised build flow allows developers to target any of these branches at the click of a button, and all from a Java source.

Case Study

Finblade Technical Director, Steve Longhurst, talks about the developing of mobile games. Get an insight into how Finblade use Bedrock to manage their workflow and underpin their development process from prototype to launch.

  • Native code integration.
  • Multiplayer networking.
  • Overcoming other challenges.

What People Are Saying

"Bedrock allows us to use non-senior engineers for development on platforms which they haven't worked on in the past"

"Using Bedrock really is like having 1 or 2 extra members of staff"

"Bedrock achieves us an amazing amount of time-saving"

"Bedrock allows us as a studio to execute more projects simultaneously with same team size"