知己知彼,百战不殆
在File Structure中,我们介绍了插件的文件目录结构,这里我们将介绍插件Config目录中的配置文件
TIP
如果发现修改后配置异常,可以在<Your_Project>\Plugins\TAPython\Resources\DefaultPythonSource\TA\TAPython\Config
目录中找到默认的Config.ini 文件
Configs¶
config.ini¶
UE5
[Settings]
MenuConfigFilePath=/TA/TAPython/UI/MenuConfig.json
ChameleonDataFolder=/Game/TA/ChameleonTools
PythonContentFolder=/TA/TAPython/Python
[Advanced]
MainbarExtensionHookName=Play
MenusOnToolbarEnabled=True
SketchToolsEnabled=True
MainMenuExtensionHookName=Instrumentation
LogCreateWidget=False
SButtonHorizontalPadding=0
LogOnTickWarnings=False
MaterialEditorMenuExtensionHookName=Instrumentation
LogNumberLimit=10240
CAUTION
注意UE4和UE5的配置并不通用,原因是UE5 修改了界面上的ExtensionHookName
,例如:UE4中的HookName: Game
在UE5中变为了Play
。直接将UE4中的配置项拷贝到UE5中会导致相应的菜单项在界面中无法显示的问题
显示ExtensionHookName¶
在EditorSetting中,勾选Display UI Extension Point
重启编辑器,即可看到下图中绿色的ExtensionHookName。下图中,TAPython 的菜单项在Instrumentation
之后
HookName | UE4 | UE 5 |
---|---|---|
MainbarExtensionHookName | Game | Play |
MainMenuExtensionHookName | WindowLayout | Instrumentation |
MaterialEditorMenuExtensionHookName | WindowLayout | Instrumentation |
具体参数含义如下:
名称 | 用途 |
---|---|
MenuConfigFilePath | 工具配置文件的总入口 |
ChameleonDataFolder | 废弃了 |
PythonContentFolder | Python资源的根目录 |
MainbarExtensionHookName | 主工具栏图标位置 |
MainMenuExtensionHookName | 主菜单项创建的位置 |
MenusOnToolbarEnabled | 是否显示主工具栏上的菜单项 |
SketchToolsEnabled | 是否启用Sketch工具,谁会想要关掉这么好的功能呢?Doge |
LogCreateWidget=False | 是否在Output窗口中输出CreateWidget的信息 |
SButtonHorizontalPadding | UE5中控制整体按钮水平Padding的值,用于避免按钮过小时,按钮文字被空白Padding遮挡 |
LogOnTickWarnings=False | 是否在Output窗口中输出OnTick的警告信息 |
MaterialEditorMenuExtensionHookName | 材质编辑器中菜单创建的位置 |
LogNumberLimit | PythonTestLib中Log缓冲区中Log的数量 |
LogOnTickWarnings¶
ChameleonTools has a hidden keyword that has not been mentioned: "OnTick". The python code in it is executed during Slate updates。当前插件中最大的Tick频率是60hz。如果你需要使用OnTick,可以将LogOnTickWarnings设置为False,这样就不会在Output窗口中输出OnTick的警告信息了。注意,请一定只在十分必要的情况下才考虑使用OnTick,并且OnTick中的代码尽量简单,并避免在其中使用log
或print
,这会导致大量重复信息刷屏。
CAUTION
在95%的情况下Chameleon 工具是用不到OnTick的,这也是这个Warning选项存在的原因。单个Chameleon工具严禁使用超过1个的OnTick,这对Python逻辑是没有意义的
TIP
在后续的TAPython中会以可设置Tick频率的Timer替代OnTick
Plugin_Config.ini¶
UE5
[Advanced]
CopyInitialResource=True
名称 | 用途 |
---|---|
CopyInitialResource | 是否将初始内容包拷贝到工程目录 |
当插件启动时,如果在工程目录中找不到"TA"目录,就会将<Your_UE_Project>\Plugins\TAPython\Resources\DefaultPythonSource
目录中的初始资源拷贝到工程目录下,以确保插件能够有基本的功能和正常运行
小结¶
在本节中,我们介绍了插件的配置文件,如果需要修改菜单项的位置,可以修个各个ExtensionHookName,其他的选项,使用TAPython插件提供的默认值是较为稳妥的选择。