Beamable SDK
Beamable.EasyFeatures Namespace Reference


class  BeamableViewGroup
 This is a Beamable Component you can add to any GameObject you have to gain access to it's API that:

  • Can be used to manage which BeamContexts are being used to get the data that will populate this view (which player's data should I be displaying?)
  • Can be used to rebuild and modify the UI dynamically as new players are added and removed. Think about a Party UI in couch co-op games — it takes X data from each player and displays it as player's "press start to join".
class  BeamContextGroup
interface  IAsyncBeamableView
 Implement this interface if your enrich should be awaited on before releasing control to the next IBeamableView in BeamableViewGroup.ManagedViews. More...
interface  IBeamableFeatureControl
 This interface defines a simple control flow API. It simply exists to enforce a minimal API that all our Easy Features must provide in order to have their fast path available to customers. There are 2 ways customers are expected to interact with classes implementing this interface:

  • Drag-Drop Test: Customers are expected to simply drag and drop the prefab onto the hierarchy or open the scene. Upon entering play mode, the Feature should just work based on the configurations setup in the script implementing this interface. To achieve this, our Easy Feature prefabs and scenes should be configured by default to RunOnEnable set to true.
  • Integration into Game-Specific Control Flow: Customers will eventually want to integrate this into their own project's control flow. To do so, they should disable the RunOnEnable flag in the prefab or scene and manually call the Run method when they want the Feature to run as it did when entering play mode. Classes implementing this interface can have a lightly granular API for feature setup so that users can re-use, but it's not the focus. This aims to be a tiny example of how to use the Feature's Game Systems and their BeamableViewGroups together.
interface  IBeamableView
 This is the common interface that the BeamableViewGroup talks too when it's BeamContext are configured on start or BeamableViewGroup.Enrich (or BeamableViewGroup.EnrichWithPlayerCodes) gets called via code. More...
interface  IBeamableViewDeps
 This is just a simple tag interface that all views must declare. These are what the views should use BeamContext.ServiceProvider to get. By doing this, you can easily swap out implementations via BeamContextSystemAttributes and Beamable.Common.Dependencies.RegisterBeamableDependenciesAttribute, adding data to existing systems keeping the UI. More...
interface  ISyncBeamableView
 Implement this interface if your enrich method can be synchronous OR a fire-and-forget (async void) method. More...