Class ScenarioBase
Derive ScenarioBase to implement a custom scenario
Inherited Members
Namespace: UnityEngine.Perception.Randomization.Scenarios
Assembly: solution.dll
Syntax
[DefaultExecutionOrder(-1)]
public abstract class ScenarioBase : MonoBehaviour
Properties
| Name | Description |
|---|---|
| activeRandomizers | Enumerates over all enabled randomizers |
| activeScenario | Returns the active parameter scenario in the scene |
| currentIteration | The current iteration index of the scenario |
| currentIterationFrame | The number of frames that have elapsed since the current scenario iteration was Setup |
| framesSinceInitialization | The number of frames that have elapsed since the scenario was initialized |
| genericConstants | Returns this scenario's non-typed serialized constants |
| isIterationComplete | Returns whether the current scenario iteration has completed |
| isScenarioComplete | Returns whether the scenario has completed |
| isScenarioReadyToStart | The scenario will begin on the frame this property first returns true |
| randomizers | Return the list of randomizers attached to this scenario |
| state | The current activity state of the scenario |
Methods
| Name | Description |
|---|---|
| AddRandomizer(Randomizer) | Append a randomizer to the end of the randomizer list |
| DeserializeFromCommandLine(string) | Deserialize scenario settings from a file passed through a command line argument |
| DeserializeFromFile(string) | Overwrites this scenario's randomizer settings and scenario constants using a configuration file located at the provided file path |
| DeserializeFromJson(string) | Overwrites this scenario's randomizer settings and scenario constants from a JSON serialized configuration |
| GetRandomizer(int) | Returns the randomizer present at the given index |
| GetRandomizer<T>() | Finds and returns a randomizer attached to this scenario of the specified Randomizer type |
| IncrementIteration() | This method selects what the next iteration index will be. By default, the scenario will simply progress to the next iteration, but this behaviour can be overriden. |
| InsertRandomizer(int, Randomizer) | Insert a randomizer at a given index within the randomizer list |
| OnAwake() | OnAwake is called when this scenario MonoBehaviour is created or instantiated |
| OnComplete() | OnComplete is called when this scenario's isScenarioComplete property returns true during its main update loop |
| OnConfigurationImport() | OnConfigurationImport is called before OnStart in the same frame. This method by default loads a scenario settings from a file before the scenario begins. |
| OnDisable() | OnEnable is called when this scenario is disabled |
| OnEnable() | OnEnable is called when this scenario is enabled |
| OnIdle() | OnIdle is called each frame after the scenario has completed |
| OnIterationEnd() | OnIterationStart is called after each iteration has completed |
| OnIterationStart() | OnIterationStart is called before a new iteration begins |
| OnStart() | OnStart is called when the scenario first begins playing |
| OnUpdate() | OnUpdate is called every frame while the scenario is playing |
| Quit() | Exit to playmode if in the Editor or quit the application if in a built player |
| RemoveRandomizerAt(int) | Remove the randomizer present at the given index |
| ResetRandomStateOnIteration() | Resets SamplerState.randomState with a new seed value generated by hashing this Scenario's randomSeed with its currentIteration |
| Restart() | Restart the scenario |
| SerializeToFile(string) | Serializes the scenario's constants and randomizer settings to a JSON file located at the path resolved by the defaultConfigFilePath scenario property |
| SerializeToJson() | Serializes the scenario's constants and randomizer settings to a JSON string |