Python 在F3操作员搜索中找不到自定义搅拌机操作员(搅拌机2.9)

Python 在F3操作员搜索中找不到自定义搅拌机操作员(搅拌机2.9),python,blender,Python,Blender,我正在学习本教程: 我从教程中复制了下面的脚本,当我运行脚本时,它编译时没有任何错误。我应该能够在操作员搜索菜单(F3)中搜索“按一移动X”以执行操作员,但它不会显示在操作员搜索菜单中。如何让操作员显示在搜索菜单中?blender 2.9有什么变化吗 bl\u信息={ “名称”:“移动X轴”, “类别”:“对象” } 进口bpy 类ObjectMoveX(bpy.types.Operator): bl_idname=“object.move\u x” bl_label=“将X移动一次” bl_

我正在学习本教程:

我从教程中复制了下面的脚本,当我运行脚本时,它编译时没有任何错误。我应该能够在操作员搜索菜单(
F3
)中搜索“按一移动X”以执行操作员,但它不会显示在操作员搜索菜单中。如何让操作员显示在搜索菜单中?blender 2.9有什么变化吗

bl\u信息={
“名称”:“移动X轴”,
“类别”:“对象”
}
进口bpy
类ObjectMoveX(bpy.types.Operator):
bl_idname=“object.move\u x”
bl_label=“将X移动一次”
bl_选项={'REGISTER','UNDO'}
def执行(自身、上下文):
scene=context.scene
对于场景中的obj.objects:
对象位置x+=1.0
返回{'FINISHED'}
def寄存器():
bpy.utils.register_类(ObjectMoveX)
def unregister():
bpy.utils.unregister_类(ObjectMoveX)
如果名称=“\uuuuu main\uuuuuuuu”:
寄存器()

我对2.90.0也有同样的问题,但当我升级到2.90.1时,它工作得非常好。 刚刚用你问题中的代码测试了这个。所以我建议你试试2.90.1。 对我来说,它是随着我的系统更新而悄无声息地更新的。如果要手动执行,可以在此处下载:


(我无法写评论,因为我没有足够的堆栈溢出点)

您必须启用
首选项->接口
下的
开发人员附加功能
复选框,然后重新加载加载项。您可能在过去已经解决了这个问题,但在升级时丢失了设置。

Sybren Akben在中承认了这一点。 我的解决办法是复制。下面是它的工作原理:

  • 在调用register\u class()后添加此选项:
    bpy.types.TOPBAR\u MT\u app\u system.append(menu\u func)
  • 添加
    菜单\u func(self,context)
    ,包括:
    self.layout.operator(
    register\u class
    .bl\u idname)的参数)
  • 搅拌机2.90.1 正如其他用户所指出的,API已经更新。您可以在此处查看发行说明:
    上面写着:

    …只通过搜索公开操作员的加载项需要更新

    这是由于新增了操作员搜索功能,该功能仅在菜单中搜索(通过
    F3
    访问)。因此,您需要将运算符添加到菜单中

    添加
    菜单\u func
    功能:

    def menu_func(self, context):
        self.layout.operator(ObjectMoveX.bl_idname)
    
    def register():
        bpy.utils.register_class(ObjectMoveX)
        bpy.types.VIEW3D_MT_object.append(menu_func)
    
    并更新
    寄存器
    功能:

    def menu_func(self, context):
        self.layout.operator(ObjectMoveX.bl_idname)
    
    def register():
        bpy.utils.register_class(ObjectMoveX)
        bpy.types.VIEW3D_MT_object.append(menu_func)
    
    现在,您可以通过操作员搜索(
    F3
    )或通过菜单访问操作员,即
    Object>YourOperatorName

    如果您不希望通过这些菜单访问这些内容,发行说明还将提到:

    对于更模糊的操作员,例如主要针对开发人员的操作员,我们建议将其添加到TOPBAR_MT_app_系统菜单中。这可以通过顶部栏中搅拌机图标下的系统菜单访问


    当我在blender 2.82中运行它时,它运行良好我遇到了相同的问题,我测试了2.90和2.91,没有显示2.83.6 lts,谢谢,我花了很多时间试图找出它不工作的原因。他们应该更新他们的文档…@ElLocoCocoLoco你说得对。如果发布日志中公布了类似的内容,那么他们更新教程肯定是有意义的。只需启用开发者附加功能(用户首选项>界面)。无需向菜单添加运算符。另一种可能发生这种情况的方法是,如果Blender在您首次启用
    开发者附加功能的会话过程中崩溃。会话中设置的任何首选项如果最终崩溃,都将被重置。