StateTreeSchemaFilter不支持子类

我在给一个UStateTreeAIComponent配置StateTreeRef的时候发现,下拉菜单里只有指定Schema类型(也就是UStateTreeAIComponentSchema)的StateTree。我新建了一个蓝图类型BP_StateTreeSchema继承自UStateTreAIComponentSchema,使用了这个蓝图Schema的StateTree并不会显示在下拉菜单里。根据代码StateTreeReferenceDetials.cpp : 135也可以看到,StateTree会把他使用的Schema类型作为Tag放在AssetData里,而过滤的逻辑就是直接对比类型的字符串,所以子类Schema都会被排除。我知道用AssetTag是为了避免加载这些StateTree,但是能否有其他办法能让子类也显示出来呢?

你好,我本地测量下似乎是可以的,你要不上传个重现视频看下?

视频里展示了如下流程:

  1. 先继承一个UStateTreeAIComponentSchema的子类UTestStateTreeSchema出来
  2. 新建一个StateTree使用这个UTestStateTreeSchema
  3. 新建一个PlayerController加上UStateTreeAIComponent,可以看到它并不能选择我们新建的StateTree

这个问题已经确认,预计会在后面版本中修复UE-352048,感谢反馈​~