Format all files
This commit is contained in:
@@ -3,157 +3,117 @@ using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
[CreateAssetMenu(fileName = "SimulationConfig", menuName = "Simulation/Config", order = 1)]
|
||||
public class SimulationConfig : ScriptableObject
|
||||
{ [Header("Simulation Settings")]
|
||||
public float timeScale = 0.05f;
|
||||
public class SimulationConfig : ScriptableObject {
|
||||
[Header("Simulation Settings")]
|
||||
public float timeScale = 0.05f;
|
||||
|
||||
[Header("Missile Swarm Configurations")]
|
||||
public List<SwarmConfig> missile_swarm_configs = new List<SwarmConfig>();
|
||||
[Header("Missile Swarm Configurations")]
|
||||
public List<SwarmConfig> missile_swarm_configs = new List<SwarmConfig>();
|
||||
|
||||
[Header("Target Swarm Configurations")]
|
||||
public List<SwarmConfig> target_swarm_configs = new List<SwarmConfig>();
|
||||
|
||||
|
||||
[Header("Target Swarm Configurations")]
|
||||
public List<SwarmConfig> target_swarm_configs = new List<SwarmConfig>();
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class DynamicConfig
|
||||
{
|
||||
public LaunchConfig launch_config;
|
||||
public SensorConfig sensor_config;
|
||||
public class DynamicConfig {
|
||||
public LaunchConfig launch_config;
|
||||
public SensorConfig sensor_config;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class SwarmConfig
|
||||
{
|
||||
public int num_agents;
|
||||
public AgentConfig agent_config;
|
||||
public class SwarmConfig {
|
||||
public int num_agents;
|
||||
public AgentConfig agent_config;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class AgentConfig
|
||||
{
|
||||
public MissileType missile_type;
|
||||
public TargetType target_type;
|
||||
public InitialState initial_state;
|
||||
public StandardDeviation standard_deviation;
|
||||
public DynamicConfig dynamic_config;
|
||||
public PlottingConfig plotting_config;
|
||||
public SubmunitionsConfig submunitions_config;
|
||||
public class AgentConfig {
|
||||
public MissileType missile_type;
|
||||
public TargetType target_type;
|
||||
public InitialState initial_state;
|
||||
public StandardDeviation standard_deviation;
|
||||
public DynamicConfig dynamic_config;
|
||||
public PlottingConfig plotting_config;
|
||||
public SubmunitionsConfig submunitions_config;
|
||||
|
||||
public static AgentConfig FromSubmunitionAgentConfig(SubmunitionAgentConfig submunitionConfig)
|
||||
{
|
||||
return new AgentConfig
|
||||
{
|
||||
missile_type = submunitionConfig.missile_type,
|
||||
initial_state = submunitionConfig.initial_state,
|
||||
standard_deviation = submunitionConfig.standard_deviation,
|
||||
dynamic_config = submunitionConfig.dynamic_config,
|
||||
plotting_config = submunitionConfig.plotting_config,
|
||||
|
||||
// Set other fields as needed, using default values if not present in SubmunitionAgentConfig
|
||||
target_type = TargetType.DRONE, // Or another default value
|
||||
submunitions_config = null // Or a default value if needed
|
||||
};
|
||||
}
|
||||
public static AgentConfig FromSubmunitionAgentConfig(SubmunitionAgentConfig submunitionConfig) {
|
||||
return new AgentConfig {
|
||||
missile_type = submunitionConfig.missile_type,
|
||||
initial_state = submunitionConfig.initial_state,
|
||||
standard_deviation = submunitionConfig.standard_deviation,
|
||||
dynamic_config = submunitionConfig.dynamic_config,
|
||||
plotting_config = submunitionConfig.plotting_config,
|
||||
|
||||
// Set other fields as needed, using default values if not present in SubmunitionAgentConfig
|
||||
target_type = TargetType.DRONE, // Or another default value
|
||||
submunitions_config = null // Or a default value if needed
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class InitialState
|
||||
{
|
||||
public Vector3 position;
|
||||
public Vector3 rotation;
|
||||
public Vector3 velocity;
|
||||
public class InitialState {
|
||||
public Vector3 position;
|
||||
public Vector3 rotation;
|
||||
public Vector3 velocity;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class StandardDeviation
|
||||
{
|
||||
public Vector3 position;
|
||||
public Vector3 velocity;
|
||||
public class StandardDeviation {
|
||||
public Vector3 position;
|
||||
public Vector3 velocity;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class LaunchConfig
|
||||
{
|
||||
public float launch_time;
|
||||
public class LaunchConfig {
|
||||
public float launch_time;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class PlottingConfig
|
||||
{
|
||||
public Color color;
|
||||
public LineStyle linestyle;
|
||||
public Marker marker;
|
||||
public class PlottingConfig {
|
||||
public Color color;
|
||||
public LineStyle linestyle;
|
||||
public Marker marker;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class SubmunitionsConfig
|
||||
{
|
||||
public int num_submunitions;
|
||||
public LaunchConfig launch_config;
|
||||
public SubmunitionAgentConfig agent_config;
|
||||
public class SubmunitionsConfig {
|
||||
public int num_submunitions;
|
||||
public LaunchConfig launch_config;
|
||||
public SubmunitionAgentConfig agent_config;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class SubmunitionAgentConfig
|
||||
{
|
||||
public MissileType missile_type;
|
||||
public InitialState initial_state;
|
||||
public StandardDeviation standard_deviation;
|
||||
public DynamicConfig dynamic_config;
|
||||
public PlottingConfig plotting_config;
|
||||
public class SubmunitionAgentConfig {
|
||||
public MissileType missile_type;
|
||||
public InitialState initial_state;
|
||||
public StandardDeviation standard_deviation;
|
||||
public DynamicConfig dynamic_config;
|
||||
public PlottingConfig plotting_config;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class SensorConfig
|
||||
{
|
||||
public SensorType type;
|
||||
public float frequency;
|
||||
public class SensorConfig {
|
||||
public SensorType type;
|
||||
public float frequency;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class TargetConfig
|
||||
{
|
||||
public TargetType target_type;
|
||||
public InitialState initial_state;
|
||||
public PlottingConfig plotting_config;
|
||||
public string prefabName;
|
||||
public class TargetConfig {
|
||||
public TargetType target_type;
|
||||
public InitialState initial_state;
|
||||
public PlottingConfig plotting_config;
|
||||
public string prefabName;
|
||||
}
|
||||
|
||||
public enum MissileType
|
||||
{
|
||||
HYDRA_70,
|
||||
MICROMISSILE
|
||||
}
|
||||
public enum MissileType { HYDRA_70, MICROMISSILE }
|
||||
|
||||
public enum TargetType
|
||||
{
|
||||
DRONE,
|
||||
MISSILE
|
||||
}
|
||||
public enum TargetType { DRONE, MISSILE }
|
||||
|
||||
public enum ConfigColor
|
||||
{
|
||||
BLUE,
|
||||
GREEN,
|
||||
RED
|
||||
}
|
||||
public enum ConfigColor { BLUE, GREEN, RED }
|
||||
|
||||
public enum LineStyle
|
||||
{
|
||||
DOTTED,
|
||||
SOLID
|
||||
}
|
||||
public enum LineStyle { DOTTED, SOLID }
|
||||
|
||||
public enum Marker
|
||||
{
|
||||
TRIANGLE_UP,
|
||||
TRIANGLE_DOWN,
|
||||
SQUARE
|
||||
}
|
||||
public enum Marker { TRIANGLE_UP, TRIANGLE_DOWN, SQUARE }
|
||||
|
||||
public enum SensorType
|
||||
{
|
||||
IDEAL
|
||||
}
|
||||
public enum SensorType { IDEAL }
|
||||
@@ -3,71 +3,65 @@ using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
[System.Serializable]
|
||||
public class StaticConfig
|
||||
{
|
||||
[System.Serializable]
|
||||
public class AccelerationConfig
|
||||
{
|
||||
[Tooltip("Maximum reference acceleration")]
|
||||
public float maxReferenceAcceleration = 300f;
|
||||
[Tooltip("Reference speed")]
|
||||
public float referenceSpeed = 1000f;
|
||||
}
|
||||
public class StaticConfig {
|
||||
[System.Serializable]
|
||||
public class AccelerationConfig {
|
||||
[Tooltip("Maximum reference acceleration")]
|
||||
public float maxReferenceAcceleration = 300f;
|
||||
[Tooltip("Reference speed")]
|
||||
public float referenceSpeed = 1000f;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class BoostConfig
|
||||
{
|
||||
[Tooltip("Boost time in seconds")]
|
||||
public float boostTime = 0.3f;
|
||||
[Tooltip("Boost acceleration")]
|
||||
public float boostAcceleration = 350f;
|
||||
}
|
||||
[System.Serializable]
|
||||
public class BoostConfig {
|
||||
[Tooltip("Boost time in seconds")]
|
||||
public float boostTime = 0.3f;
|
||||
[Tooltip("Boost acceleration")]
|
||||
public float boostAcceleration = 350f;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class LiftDragConfig
|
||||
{
|
||||
[Tooltip("Lift coefficient")]
|
||||
public float liftCoefficient = 0.2f;
|
||||
[Tooltip("Drag coefficient")]
|
||||
public float dragCoefficient = 0.7f;
|
||||
[Tooltip("Lift to drag ratio")]
|
||||
public float liftDragRatio = 5f;
|
||||
}
|
||||
[System.Serializable]
|
||||
public class LiftDragConfig {
|
||||
[Tooltip("Lift coefficient")]
|
||||
public float liftCoefficient = 0.2f;
|
||||
[Tooltip("Drag coefficient")]
|
||||
public float dragCoefficient = 0.7f;
|
||||
[Tooltip("Lift to drag ratio")]
|
||||
public float liftDragRatio = 5f;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class BodyConfig
|
||||
{
|
||||
[Tooltip("Mass in kg")]
|
||||
public float mass = 0.37f;
|
||||
[Tooltip("Cross-sectional area in m²")]
|
||||
public float crossSectionalArea = 3e-4f;
|
||||
[Tooltip("Fin area in m²")]
|
||||
public float finArea = 6e-4f;
|
||||
[Tooltip("Body area in m²")]
|
||||
public float bodyArea = 1e-2f;
|
||||
}
|
||||
[System.Serializable]
|
||||
public class BodyConfig {
|
||||
[Tooltip("Mass in kg")]
|
||||
public float mass = 0.37f;
|
||||
[Tooltip("Cross-sectional area in m²")]
|
||||
public float crossSectionalArea = 3e-4f;
|
||||
[Tooltip("Fin area in m²")]
|
||||
public float finArea = 6e-4f;
|
||||
[Tooltip("Body area in m²")]
|
||||
public float bodyArea = 1e-2f;
|
||||
}
|
||||
|
||||
[System.Serializable]
|
||||
public class HitConfig
|
||||
{
|
||||
[Tooltip("Hit radius")]
|
||||
public float hitRadius = 1f;
|
||||
[Tooltip("Kill probability")]
|
||||
public float killProbability = 0.9f;
|
||||
}
|
||||
[System.Serializable]
|
||||
public class HitConfig {
|
||||
[Tooltip("Hit radius")]
|
||||
public float hitRadius = 1f;
|
||||
[Tooltip("Kill probability")]
|
||||
public float killProbability = 0.9f;
|
||||
}
|
||||
|
||||
[Header("Acceleration Configuration")]
|
||||
public AccelerationConfig accelerationConfig;
|
||||
[Header("Acceleration Configuration")]
|
||||
public AccelerationConfig accelerationConfig;
|
||||
|
||||
[Header("Boost Configuration")]
|
||||
public BoostConfig boostConfig;
|
||||
[Header("Boost Configuration")]
|
||||
public BoostConfig boostConfig;
|
||||
|
||||
[Header("Lift and Drag Configuration")]
|
||||
public LiftDragConfig liftDragConfig;
|
||||
[Header("Lift and Drag Configuration")]
|
||||
public LiftDragConfig liftDragConfig;
|
||||
|
||||
[Header("Body Configuration")]
|
||||
public BodyConfig bodyConfig;
|
||||
[Header("Body Configuration")]
|
||||
public BodyConfig bodyConfig;
|
||||
|
||||
[Header("Hit Configuration")]
|
||||
public HitConfig hitConfig;
|
||||
[Header("Hit Configuration")]
|
||||
public HitConfig hitConfig;
|
||||
}
|
||||
Reference in New Issue
Block a user