-
Notifications
You must be signed in to change notification settings - Fork 1
Json Definition für Testszenarien
Hendrik Meyer edited this page Jun 25, 2021
·
23 revisions
Die Json beschreibt eine Reihe an Testszenarien, in welchem Ball und Auto initial mit bestimmten Werten versehen werden, und danach Inputs des Autos in "Actions" simuliert werden, welche eine bestimmte Zeit lang zusammen ausgeführt werden. Nach dieser Zeit wird die nächste Action der Liste ausgeführt, solange, bis alle Actions der Liste ausgeführt wurden.
{
"time" : 0.0,
"name" : "string",
"boostAmount": 0.0, // -1 no boost consumption
{
"startValues": [
{
"gameObject": "string",
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"velocity": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"angularVelocity": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
],
"actions": [
{
"duration": 0.0,
"inputs": [
{
"name": "string",
"value": 0.0
}
]
}
}
}
Die Koordinatenachsen und Einheitengrößen sind so wie in Roboleague zu setzen.
Name |
---|
ball |
car |
Name | Wertebereich |
---|---|
jump | 0 oder 1 |
boost | 0 oder 1 |
handbrake | 0 oder 1 |
throttle | -1 bis 1 |
steer | -1 bis 1 |
pitch | -1 bis 1 |
yaw | -1 bis 1 |
roll | -1 bis 1 |
Die folgenden Werte sollten für den Vergleich pro Tick geloggt werden:
frames: [
{
"time": 1.0,
"game_cars": [
{
"physics": {
"location": {"x": 0.0, "y": 0.0, "z": 0.0},
"rotation": {"pitch": 0.0, "yaw": 0.0, "roll": 0.0},
"velocity": {"x": 0.0, "y": 0.0, "z": 0.0},
"angular_velocity": {"x": 0.0, "y": 0.0, "z": 0.0}
},
"has_wheel_contact": true,
"jumped": false, --> Sprung gedrückt oder in der Luft ?
"boost": 0.0,
},
],
"game_ball": {
"physics": {
"location": {"x": 0.0, "y": 0.0, "z": 0.0},
"rotation": {"pitch": 0.0, "yaw": 0.0, "roll": 0.0},
"velocity": {"x": 0.0, "y": 0.0, "z": 0.0},
"angular_velocity": {"x": 0.0, "y": 0.0, "z": 0.0}
},
},
}
]