您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
47 行
1.2 KiB
47 行
1.2 KiB
using System;
|
|
using UnityEngine.Perception.Randomization.Samplers.Abstractions;
|
|
using UnityEngine;
|
|
|
|
namespace UnityEngine.Perception.Randomization.Parameters.Abstractions
|
|
{
|
|
public abstract class ParameterBase : MonoBehaviour
|
|
{
|
|
public string parameterName = "Parameter Name";
|
|
public SamplerBase sampler;
|
|
public bool hasTarget = true;
|
|
public GameObject target;
|
|
public PropertyTarget propertyTarget;
|
|
[HideInInspector] public IterationData iterationData;
|
|
|
|
public abstract Type SamplerType();
|
|
public abstract Type SampleType();
|
|
public abstract string ParameterTypeName { get; }
|
|
protected abstract void SetupFieldOrPropertySetters();
|
|
public abstract void Apply(IterationData data);
|
|
|
|
void Awake()
|
|
{
|
|
SetupFieldOrPropertySetters();
|
|
}
|
|
}
|
|
|
|
[Serializable]
|
|
public struct IterationData
|
|
{
|
|
public int localSampleIndex;
|
|
public int globalSampleIndex;
|
|
}
|
|
|
|
[Serializable]
|
|
public class PropertyTarget
|
|
{
|
|
public Component targetComponent;
|
|
public string propertyName;
|
|
public TargetKind targetKind;
|
|
}
|
|
|
|
public enum TargetKind
|
|
{
|
|
Field, Property
|
|
}
|
|
}
|