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 |