令牌 | 过滤器标识符。通常在过滤器中位于算子前面(例如,"id" 中的 "id>=2")。 |
supportedOperators | 受支持的算子令牌列表。所有算子为 Null。 |
选项 | 字符串比较选项。 |
paramTransformerFunction | 与此过滤器一起使用的参数转换器函数的名称。使用适当的 ParameterTransformer 属性对参数转换器函数进行标记。有关更多信息,请参阅 SceneQueryEngineParameterTransformer。 |
使用对应的令牌和受支持的运算符创建过滤器。
以下示例添加了一个新的过滤器函数 dist
,可以返回一个对象与一个点之间的距离。此过滤器需要一个 转换器 参数,以将文本转换为一个点。另外,它不支持运算符 "contains" (:
)。
[SceneQueryEngineFilter("dist", "DistanceParamHandler", new[] {"=", "!=", "<", ">", "<=", ">="})] static float DistanceHandler(GameObject go, Vector3 p) { return (go.transform.position - p).magnitude; }