Bootstrap Chameleon Logo

TAPython 1.0.10b for Unreal Engine 5.1 is also available

Epic released the second major version of Unreal Engine: 5.1, and TAPython 1.0.10 beta for UE5.1 is also available.

What's new

Support UE 5.1

This is a beta version of TAPython 1.0.10, mainly for UE5.1 users. In the release version, there will be more functions.

Add configurable menu for PhysicsAssetEditor and ControlRigEditor

As the Material Editor, we can add custom menus for Physics Asset Editor and Control Rig Editor now.

    "OnPhysicsAssetEditorMenu": {
        "name": "Python Menu On Physics Asset Editor",
        "items":
        [
            {
                "name": "TA Python Physics Asset Example",
                "items": [
                    {
                        "name": "Print Physics Asset",
                       "command": "print(%asset_paths)"
                    }
                ]
           }
        ]
     }

Add menu in ToolMenus Anchor

We can add a TAPython menu where the UE ToolMenus can.

    "ControlRigEditor.RigHierarchy.ContextMenu": {
        "name": "Python Menu On Control Rig Editor",
        "items": [
            {
                "name": "Rigging Tools",
                "command": "print('Rigging Tools')",
                "icon": {
                    "style": "ChameleonStyle",
                    "name": "Resources.Chameleon_32x_png"
                }
            }
        ]
    }

Available "anchors" are:

  • AssetEditor.AnimationBlueprintEditor.MainMenu
  • AssetEditor.AnimationEditor.MainMenu
  • AssetEditor.SkeletalMeshEditor.ToolBar
  • AssetEditor.StaticMeshEditor.ToolBar
  • ContentBrowser.AddNewContextMenu
  • ContentBrowser.AssetContextMenu
  • ContentBrowser.AssetContextMenu.AimOffsetBlendSpace
  • ContentBrowser.AssetContextMenu.AnimBlueprint
  • ContentBrowser.AssetContextMenu.AnimMontage
  • ContentBrowser.AssetContextMenu.AnimSequence
  • ContentBrowser.AssetContextMenu.BlendSpace
  • ContentBrowser.AssetContextMenu.BlendSpace1D
  • ContentBrowser.AssetContextMenu.CameraAnim
  • ContentBrowser.AssetContextMenu.DatasmithScene
  • ContentBrowser.AssetContextMenu.PoseAsset
  • ContentBrowser.AssetContextMenu.SkeletalMesh
  • ContentBrowser.AssetContextMenu.SkeletalMesh.CreateSkeletalMeshSubmenu
  • ContentBrowser.AssetContextMenu.Skeleton.CreateSkeletalMeshSubmenu
  • ContentBrowser.AssetContextMenu.SoundWave
  • ContentBrowser.AssetContextMenu.StaticMesh
  • ContentBrowser.AssetContextMenu.World
  • ContentBrowser.AssetViewOptions
  • ContentBrowser.AssetViewOptions.PathViewFilters
  • ContentBrowser.DragDropContextMenu
  • ContentBrowser.FolderContextMenu
  • ContentBrowser.ItemContextMenu.PythonData
  • ContentBrowser.ToolBar
  • ControlRigEditor.RigHierarchy.ContextMenu
  • ControlRigEditor.RigHierarchy.DragDropMenu
  • Kismet.SubobjectEditorContextMenu
  • Kismet.SCSEditorContextMenu
  • LevelEditor.ActorContextMenu.AssetToolsSubMenu
  • LevelEditor.ActorContextMenu.LevelSubMenu
  • LevelEditor.InViewportPanel
  • LevelEditor.LevelEditorSceneOutliner.ContextMenu.LevelSubMenu
  • LevelEditor.LevelEditorToolBar
  • LevelEditor.LevelEditorToolBar.AddQuickMenu
  • LevelEditor.LevelEditorToolBar.User
  • LevelEditor.LevelViewportToolBar.Options
  • LevelEditor.LevelViewportToolBar.View
  • LevelEditor.MainMenu
  • LevelEditor.MainMenu.Build
  • LevelEditor.MainMenu.File
  • LevelEditor.MainMenu.Help
  • LevelEditor.MainMenu.Select
  • LevelEditor.MainMenu.Tools
  • LevelEditor.MainMenu.Window
  • LevelEditor.StatusBar.ToolBar
  • MainFrame.MainMenu.Asset
  • MainFrame.MainMenu.Tools
  • MainFrame.MainMenu.Window
  • StatusBar.ToolBar.SourceControl
  • and so on

And we can add a context menu to for object's component in Detail views.

    Kismet.SubobjectEditorContextMenu: {
        ...
    }

Console Command

TAPython.RefreshToolMenus 

"TAPython.RefreshToolMenus" can be used to refresh the "ToolMenus" menus, other menus will be auto-refreshed and not need this command

Add More Editor APIs

Add PythonControlRigLib

A new editor lib PythonControlRigLib has been added to TAPython; as its name, it's for ControlRig.

  • GetControlShapeTransform

PythonBPLib

  • GetModifierKeyState

GetModifierKeyState Get the modifier key states(Ctrl, Shift, Alt, etc.), so we used it to display an optional dialog or menu.