1. 程式人生 > >(官網)虛幻3--虛幻引擎3命令行參數

(官網)虛幻3--虛幻引擎3命令行參數

加密 分辨率 sorted proc exec his oss nom cat

虛幻引擎3命令行參數


  • 虛幻引擎3命令行參數
    • 概述
    • 模式
    • 地圖/服務器/編輯器的URL 參數
      • 一般選項
      • 服務器選項
      • 針對UTGame的特定選項
    • Switches(開關)
      • 開發人員
      • 渲染
      • 網絡
      • 用戶
      • 服務器開關
      • 遊戲 統計數據/數據庫
      • INI/Config 文件
      • 調試
      • 其它

概述


命令行參數是一連串的關鍵字字符串,當運行可執行文件時可以通過命令行或者可執行文件的快捷方式將其傳入。它們的目的是自定義引擎運行的方式,以便符合開發人員或用戶的需要。這可以像使得運行編輯器而不運行遊戲那麽簡單;或它也可以更加復雜,比如使用某個特定的地圖在指定的分辨率和幀頻率下啟動遊戲,同時把每幀轉存到一個單獨的圖像文件中。

模式


這些參數強制使得主要的可執行命令以某種模式而不是正常的遊戲模式運行,或者強制執行眾多命令行開關中的一個,它們是一些執行和開發人員的相關的常見任務的較小的專用的應用程序。它們緊跟在可執行文件名稱的後面比那可以立即地被傳入到可執行命令中,不需要額外的語法。這些命令是大小寫不敏感的。

示例:

UDK.exe editor

  • Editor: 啟動編輯器
  • Server: 將遊戲作為服務器運行

地圖/服務器/編輯器的URL 參數


URLs可以傳入到可執行命令中來強制遊戲在啟動時加載特定的地圖。這些參數也可以和 SERVER或EDITOR模式結合使用來使用特定的地圖運行編輯器或服務器。傳入URL參數是可選的,但是該參數必須緊跟在可執行命令名稱的後面或者如果存在任何模式開關則緊跟在該模式開關的後面。

URL由兩部分組成: 地圖名稱或服務器IP地址以及一系列的可選的附加參數。地圖名稱可以是使放在Maps目錄中的任何地圖的名稱。這裏是否包含文件擴展名(也就是.udk 或.ut3)是可選的。要想加載在Maps目錄中不能找到的地圖,那麽可以使用來自於Maps目錄的絕對路徑或相對路徑。在這種情況下,則強制包含文件擴展名。服務器IP地址是一個標準的4-部分IP地址,即由0到255之間的4個值組成,這些數值之間用句號分隔。其它的選項通過把它們附加到地圖名稱或服務器IP地址的後面來指定。每個選項使用‘?’作為前綴。

示例:

UDK.exe MyMap.udk?game=MyPackage.MyGame?class=MyPackage.MyPawn
UDK.exe server MyMap.udk?listen=true?bIsLanMatch=true
UDK.exe 127.0.0.1

一般選項

  • CHARACTER: 要使用的玩家角色。
  • CLASS: 告訴引擎要使用的玩家類(覆蓋默認值)。
  • GAME: 告訴引擎要使用的GameInfo 類(覆蓋默認值)。
  • NAME: 要使用的玩家名稱。
  • PASSWORD: 進入一個服務器所需要的密碼。
  • TEAM: 玩家所在的團隊 (或比較喜歡的團隊)。

服務器選項

  • bHasVoice: 指出可以使用語音支持。
  • bIsLanMatch: 設置多玩家遊戲是否在本地網絡上(比如 bIsLanMatch=0 )。
  • bRequiresPassword: 設置在線遊戲是否需要密碼(比如 bRequiresPassword=0 )。
  • DEDICATED: 指定服務器作為專用服務器。
  • GAMEPASSWORD: 傳入的服務器密碼。
  • LISTEN: 指定服務器作為監聽服務器 (比如 Listen=...).
  • SERVERDESCRIPTION: 為服務器顯示的描述信息。

針對UTGame的特定選項

  • DIFFICULTY: 設置遊戲中機器人的技能級別。
  • MUTATOR: 指定要使用的mutator (設置器)。
  • NUMPLAY: 要使用的玩家的數量。(玩家的數量是機器人的數量加1的值)。
  • RESTART: 重新啟動地圖。
  • SPECTATORONLY: 以觀看模式啟動遊戲。

Switches(開關)


根據特定關鍵字的及它的應用目的的不同,這些參數可以傳入到遊戲或編輯器中。有些參數是一般的開關(也就是-UNATTENDED),而其它的參數是設置開關,它們是“鍵=值”對(也就是-LOG=MyLog.txt)。這些命令是大小寫不敏感的。傳入普通的開關的語法是在每個參數前面加上一個減號(‘-’),然後後面緊跟上那個參數。設置開關除了服務器開關外,其它的不需要以 ‘-‘開頭。

示例:

UDK.exe –silent LOG=MyLog.txt

開發人員

  • ABSLOG: 和LOG=類似,但是沒有文件名長度檢查。
  • ALLUSERS: 當指定了INSATLLGE時,為所有用戶添加遊戲。
  • AUTO: 假設對所有問題的回答都為”是“(比如在編譯過程中)。
  • AUTOCHECKOUTPACKAGES: 自動檢查需要保存的包。
  • AUTODEBUG: 執行自動調試。附加UnrealScript調試器並在遇到的第一個字節代碼出現則中斷。
  • AutomatedMapBuild: 執行針對特定地圖的自動構建。自動地圖構建。
  • BIASCOMPRESSIONFORSIZE: 覆蓋關於大小的壓縮設置。
  • BUILDMACHINE: 設置為編譯機器。用於決定是否啟用調試輸出。
  • BULKIMPORTINGSOUNDS: 當批量地調出聲音時使用它(針對通用瀏覽器)。
  • CHECK_NATIVE_CLASS_SIZES: 啟用native類的大小檢查。註意: 遊戲機平臺上的Native類會導致native類的大小檢查失敗,盡管假設它們是正確的。
  • CODERMODE: 啟用Coder(編碼)模式。
  • COMPATSCALE: 手動地設置兼容性設置來覆蓋PCCompat工具設置。
  • CONFORMDIR: 當統一包時要使用的目錄。
  • COOKFORDEMO: 指定其為演示作品的烘焙包。
  • COOKPACKAGES: 指定烘焙包的標簽。
  • CRASHREPORTS: 總是報告引擎的崩潰情況。
  • D3DDEBUG: 使用 d3d調試設備。
  • DEBUG: 告訴引擎發送調試信息到調試器,或者在腳本編譯過程中編譯調試包。
  • DEBUGFACEFX: 跟蹤FaceFX動畫。
  • DEVCON: 禁用開發人員的可靠連接(使用未加密的插槽)
  • DUMPFILEIOSTATS: 跟蹤並記錄文件IO的統計數據。
  • DUMPUDKSURVEY: 簡單地轉存UDK硬件調查。不上傳。
  • FATALSCRIPTWARNINGS: 把調試過程中的腳本警告當成致命錯誤。
  • FINAL_RELEASE: 為腳本編譯設置FINAL_RELEASE宏。
  • FIXEDSEED: 使用固定的值0初始化隨機數生成器。
  • FIXUPTANGENTS: 自動修復在分布中遺留的切線。
  • FORCELOGFLUSH: 強制在每行後進行日誌刷新。
  • FORCEPVRTC: 強制對移動平臺進行pvrtc貼圖壓縮。
  • FORCESOUNDRECOOK: 強制完全地重新烘焙所有聲效。
  • GENERICBROWSER: 使用通用瀏覽器。
  • INCLUDEUTGAMECONTENT: 設置要加載的UTGameContent包。
  • INSTALLED: 用於開發,就像安裝了遊戲那樣運行遊戲。
  • INSTALLFW / UNINSTALLFW: 設置是否要執行防火墻集成的處理。
  • INSTALLGE: 把遊戲添加到遊戲瀏覽器中。
  • LANGUAGEFORCOOKING: 設置烘焙所使用的語言。
  • LIGHTMASSDEBUG: 使用–debug手動地啟動lightmass,並允許lightmass執行多次。
  • LIGHTMASSSTATS: 強制所有的lightmass代理向日誌中報告詳細的統計數據。
  • LOG: 當用作為開關(-log)時,將打開一個獨立的窗口實時地顯示日誌的內容。當用作為設置(LOG=filename.log)時,將告訴引擎使用緊跟在後面的字符串作為日誌文件名。
  • LOGTIMES: 在日誌輸出中打印時間。(默認情況下,這和設置*Engine.ini文件的[LogFiles]部分中的LogTimes=True的效果一致。)
  • NOCONFORM: 告訴引擎不要統一包,因為它們已經編譯了。
  • NOCONTENTBROWSER: 禁用內容瀏覽器。
  • NOINNEREXCEPTION: 禁用native C++中的異常處理程序。
  • NOLOADSTARTUPPACKAGES: 強制不加載啟動包。如果啟動包中的對象必須從編輯器中刪除,那麽您可以使用這項。
  • NOLOGTIMES: 在日誌輸出中不打印時間。 (默認情況下,這和設置*Engine.ini文件的[LogFiles]部分中的LogTimes=False的效果一致。)
  • NOMODAUTOLOAD: 不要自動地加載mod類。
  • NOPAUSE: 在退出時自動地關閉日誌窗口。
  • NOPAUSEONSUCCESS: 只要沒有錯誤存在,那麽便在退出時自動地關閉日誌窗口。
  • NOREMOTECONTROL: 禁用遠程控制。用於專用服務器。
  • NORC: 禁用遠程控制。用於專用服務器。
  • NOVERIFYGC: 不驗證垃圾編譯器的假定條件。
  • NOWRITE: 禁止把結果輸出到日誌中。
  • OUTPUTHEADERS: 強制批量導出腳本中頭文件的輸出。
  • RC: 強制使遠程控制可見。
  • REMOTECONTROL: 強制使遠程控制可見。
  • REPAIR: 自動修復遊戲資源數據庫的任何問題。
  • SCRIPTSTACKONWARNINGS: 在調試過程中顯示警告的腳本棧。
  • SEEKFREELOADING: 僅使用烘焙的數據。
  • SEEKFREEPACKAGEMAP: 使用免搜索(烘焙)版本覆蓋包地圖。
  • SEEKFREELOADINGPCCONSOLE: 僅為PC控制臺模式使用烘焙的數據。
  • SEEKFREELOADINGSERVER: 僅為服務器使用烘焙的數據。
  • SETTHREADNAMES: (僅Xbox) 強制設置線程名稱。這可能會搞糟XDK COM API,這也是為什麽在需要的情況下必須現實地設置執行它的原因。
  • SHOWMISSINGLOC: 如果丟失了本地化文本則返回錯誤的字符串,而不是英文文本。
  • SILENT: 禁用輸出和反饋。
  • SKIPDOWNLOADER: 對於針對Android系統的開發目的,跳過Google Play擴展下載器並使用手動同步的數據。
  • TRACEANIMUSAGE: 跟蹤動畫的應用。
  • TREATLOADWARNINGSASERRORS: 強制加載警告作為錯誤處理。
  • UNATTENDED: 設置為無人管理的狀態。禁用需要從用戶獲得反饋的任何東西。
  • UNINSTALLGE: 從遊戲瀏覽器中刪除遊戲。
  • USEUNPUBLISHED: 強制使用在Unpublished文件夾中的包(廢棄?)。
  • UTRACE: 啟用腳本跟蹤功能。
  • VADEBUG: 使用Visual Studio調試器界面。
  • VERBOSE: 設置腳本編譯器使用詳細的輸出。
  • VERIFYGC: 強制驗證垃圾編譯器的假設條件。
  • WAITFORDEBUGSERVER: 強制遊戲等到UnrealConsole連接為止。
  • WARNINGSASERRORS: 把警告當做錯誤處理。
  • WXWINDOWS: 必須傳入這個參數來啟用屬性窗口和遠程控制。

渲染

  • ConsolePosX: 控制臺輸出窗口的水平位置。
  • ConsolePosY: 控制臺輸出窗口的垂直位置。
  • PosX: 設置遊戲窗口在屏幕上的水平位置。
  • PosY: 設置遊戲窗口在屏幕上的垂直位置。
  • WindowPosX: 設置遊戲窗口在屏幕上的水平位置。
  • WindowPosY: 設置遊戲窗口在屏幕上的垂直位置。
  • ResX: 設置遊戲窗口的水平分辨率。
  • ResY: 設置遊戲窗口的垂直分辨率。
  • VSync: 通過命令行激活VSYNC(這會防止產生圖像撕裂,但會造成fps消耗並導致輸入延遲)。
  • NoVSync: 通過命令行禁用VSYNC。
  • BENCHMARK: 為了不跳任何幀來處理每一幀,則以固定步長來運行遊戲。當把這個參數和DUMPMOVIE選項結合使用時是非常有用的。
  • DUMPMOVIE: 把渲染的幀使用當前的分辨率轉存到文件中。
  • DUMPMOVIE_TILEDSHOT: 使用指定的分辨率乘數把渲染的幀轉存到文件中。使用為高分辨率幀使用平鋪截圖(比如 DUMPMOVIE_TILEDSHOT=4)。
  • EXEC: 執行指定的exec文件。
  • FORCESHADERMODEL2: 即使在shader model 3硬件上也強制使用shader model 2來渲染路徑。
  • FORCESHADERMODEL3: 強制使用shader model 3。
  • FPS: 設置性能基準測試中每秒鐘的幀數。
  • FULLSCREEN: 設置遊戲以全屏模式運行。
  • PIXO: 使用pixomatic軟件渲染。
  • SECONDS: 設置最大的tick(更新)時間。
  • SM3: 強制使用shader model 3。
  • SM4 / D3D10: 如果DirectX 10存在,則強制使用它。
  • WINDOWED: 設置遊戲以窗口模式運行。

網絡

  • LANPLAY: 告訴引擎在連接到服務器時不要超過客戶端的帶寬。因為服務器更新量是雙倍的,這可能會占用充滿整個客戶端帶寬。
  • Limitclientticks: 強制對網絡更新進行節流。
  • LIVEMACADDRESS: 指定Panorama連接所使用的MAC地址。
  • LIVEPORT: 指定Panorama連接所使用的端口。
  • LIVEREGKEY: 指定一個註冊碼。
  • MPGAMETYPE: 指定烘焙使用的一種單獨的遊戲類型。
  • MULTIHOME: 告訴引擎為網絡使用多尋址地址。
  • NETWORKPROFILER: 啟用網絡分析跟蹤。
  • NOLIVE: 禁用Panorama。
  • NOSTEAM: 設置不使用steamworks。
  • PORT: 告訴引擎使用特定的端口號。
  • PRIMARYNET: 影響引擎如何處理網絡綁定。

用戶

  • NOHOMEDIR: 覆蓋使用My Documents(我的文檔)文件夾作為主目錄。
  • NOFORCEFEEDBACK: 在引擎中禁用強制反饋功能。
  • NOSOUND: 禁用引擎中的任何聲效輸出。
  • NOSPLASH: 當加載遊戲時禁止使用程序啟動圖像。
  • NOTEXTURESTREAMING: 禁用貼圖動態載入。總加載最高質量的貼圖。
  • ONETHREAD: 使用單線程運行引擎而不使用多線程。
  • PATHS: 設置測試沖突的內容所使用的路徑。這個參數對發行版本無效。
  • PREFERREDPROCESSOR: 設置特定處理器的線程關聯性。
  • USEALLAVAILABLECORES: 強制在目標平臺上使用所有可用核心。

服務器開關

  • LOGIN: 設置登錄時使用的用戶名。
  • PASSWORD: 設置登錄時使用的密碼。

遊戲 統計數據/數據庫

  • CSVSTATS: 把統計數據寫入到文件中,使用分號分隔。
  • GAMESTATS: 使用遊戲統計數據可視化效果。
  • NODATABASE: 請不要使用數據庫。忽略數據庫連接錯誤。
  • NOGADWARNING: 在編輯器啟動時禁用遊戲資源數據庫警告。
  • NOLIVETAGS: 跳過加載SQL數據庫中沒有驗證的標簽改變。僅為當前用戶加載。
  • STARTSTATSFILE: 開始寫入到統計數據文件中。
  • STATFILE: 設置輸出統計數據所到的文件的名稱。
  • XMLSTATS: 使用XML格式把統計數據寫入到文件中。

INI/Config 文件

  • ENGLISHCOALESCED: 如果不能找到語言的本地化版本則恢復到默認的(英語)coalesced .ini。
  • NOAUTOINIUPDATE: 禁止向更新的.ini文件中輸入提示信息。
  • NOINI: 不更新.ini文件。
  • REGENERATEINIS: 強制重新生成.ini文件。

可以使用另一個命令行參數來臨時地覆蓋遊戲或編輯器加載的INI文件。比如,如果使用了一個自定義的‘MyGame.ini‘ 文件而不是‘UDKGame.ini‘,那麽該參數將為(也就是-GAMEINI=MyGame.ini )。這個表格列出了UE3中用於覆蓋不同的INI文件的參數。

命令行參數INI覆蓋
DEFEDITORINI= Default Editor
EDITORINI= Editor
DEFEDITORUSERSETTINGSINI= Default EditorUserSettings
EDITORUSERSETTINGSINI= EditorUserSettings
DEFCOMPATINI= Default Compat
COMPATINI= Compat
DEFLIGHTMASSINI= Default Lightmass
LIGHTMASSINI= Lightmass
DEFENGINEINI= Default Engine
ENGINEINI= Engine
DEFGAMEINI= Default Game
GAMEINI= Game
DEFINPUTINI= Default Input
INPUTINI= Input
DEFUIINI= Default UI
UIINI= UI

技術分享 2012年5月之後編譯版本中可供使用的參數

針對基礎數據類型(沒有進行處理的數列和結構)的單個 .ini 文件現在也可以在命令行開關上進行重載(在Debug/Release/Test中,而不是在Shipping/FINAL_RELEASE中)。

這個功能通常用於移動設備(或者家用機),在這裏改變命令行開關很容易,但是只是更新 .ini 設置來重新烘焙您的數據是有難度的。它的工作原理是這樣的:

-ini:IniName:Section1.Key1=Value1,Section2.Key2=Value2,...

比如:

-ini:PS3-UDKEngine:Engine.Engine.bSmoothFrameRate=False,TextureStreaming.PoolSize=100
-ini:ExoGame:AwesomeBoss.HitPoints=100000

重點是使用正確的 .ini 名稱!! 這已經通過生成的.ini文件進行測試(UDKEngine,不是DefaultEngine),所以我建議繼續使用。

技術分享 要點: 在PC上使用這項功能將會使您在本地生成 .ini 文件被更新。在家用機/移動設備上,這些 .ini 文件都是只讀文件,這樣它就只會影響遊戲的運行。

調試

  • BugLoc (e.g. BugLoc=(X=1798.8569,Y=475.9513,Z=-8.8500))
  • BugRot (e.g. BugRot=(Pitch=-1978,Yaw=-7197,Roll=0))

其它

  • timelimit (e.g. timelimit=[time])
  • goalscore (e.g. goalscore=[score])
  • numbots (e.g. numbots=[num])

(官網)虛幻3--虛幻引擎3命令行參數