2012年3月11日 星期日

為內建的Unreal資源新增右鍵選項

在UEd的內容瀏覽器裡的資源圖示上按右鍵會出現選單。依照資源的種類會出現不同選項,可以自訂GenericBrowserType類別來為自訂的資源客製選項。

但是如果要為內建的Unreal資源新增右鍵選項呢?其實還是一樣自訂GenericBrowserType類別就可以了,UEd會優先使用專案覆寫的而不是內建的GenericBrowserType。以下程式碼示範如何為內建的SkeletalMesh新增屬性視窗選項:
class MyGenericBrowserType_SkeletalMesh extends GenericBrowserType_SkeletalMesh
    native;

cpptext
{
    virtual void QuerySupportedCommands( class USelection* InObjects, TArray< FObjectSupportedCommandType >& OutCommands ) const;
    {
        Super::QuerySupportedCommands( InObjects, OutCommands );

        OutCommmands.AddItem( FObjectSupportedCommandType( IDMN_ObjectContext_Properties, *LocalizedUnrealEd("ObjectContext_EditProperties") ) ); 
    }
} 
因為本來GenericBrowserType就會處理IDMN_ObjectContext_Properties開啓屬性視窗,所以只要增加選項就好了。如果要為新增的選項客製行為,可以覆載InvokeCustomCommand()函式。

沒有留言:

張貼留言