UE5如何查詢場景內(nèi)的三角面總數(shù)及控制臺命令使用大全

Stat命令--專門針對顯示游戲統(tǒng)計的控制臺命令
要分析?虛幻引擎(UE)?項目,開發(fā)人員可以在使用?編輯器中運(yùn)行(PIE)?模式運(yùn)行游戲的同時,在控制臺輸入以下?stat命令?。

要從編輯器的?Stat?菜單中找到stat命令,選擇?視口設(shè)置(Viewport Setting)?按鈕旁邊的向下箭頭。

注意:?利用?LOG
?命令運(yùn)行編輯器,開發(fā)人員能夠從stat?轉(zhuǎn)存?記錄有用信息,為此,編輯器(游戲項目)能夠利用?LOG
?命令(例如?UnrealEditor.exe -silent LOG=MyLog.txt
?)生成日志文件。
Stat命令表
輸入?stat
?和一個空格,然后輸入以下命令,從而激活它們:
命令名稱
命令說明
AI
顯示感知系統(tǒng)和整體AI的性能信息。
AI_EQS
顯示環(huán)境查詢系統(tǒng)(EQS)的性能、調(diào)試和內(nèi)存統(tǒng)計數(shù)據(jù)。
AIBehaviorTree
顯示行為樹的性能和內(nèi)存統(tǒng)計數(shù)據(jù)。
AICrowd
顯示群集管理器的性能和步驟信息。
Anim
顯示每次tick蒙皮網(wǎng)格體需要多長時間進(jìn)行計算。
AsyncLoad?/?AsyncLoadGameThread
顯示異步加載的性能統(tǒng)計數(shù)據(jù)。
Audio?/?AudioThreadCommands
音頻統(tǒng)計數(shù)據(jù),如聲波實例或緩沖區(qū)性能。
Canvas
畫布統(tǒng)計數(shù)據(jù),顯示畫布用戶界面項(例如圖塊、邊框和文本)的性能信息。
Collision?/?CollisionTags
顯示碰撞的性能、調(diào)試和內(nèi)存信息。
CommandListMarkers
顯示命令列表及命令性能信息。
Component
顯示組件列表及組件性能信息。
Compression
顯示壓縮統(tǒng)計數(shù)據(jù)。
CPULoad
顯示CPU利用率。
CPUStalls
顯示有關(guān)CPU停轉(zhuǎn)的信息。
D3D11RHI
顯示Direct3D 11?RHI統(tǒng)計數(shù)據(jù)。
DDC
顯示派生數(shù)據(jù)緩存(DDC)統(tǒng)計數(shù)據(jù)。
DumpHitches
任何時候基于?t.HitchFrameTimeThreshold
?檢測到"卡頓",都會將它寫入日志中。
Dumpticks
關(guān)于Tick函數(shù)的轉(zhuǎn)儲信息。
Engine
顯示一般渲染狀態(tài),例如幀時間,以及正在渲染的三角形數(shù)量的計數(shù)器。
FPS
顯示每秒幀數(shù)(FPS)計數(shù)器。
Game
提供有關(guān)各個游戲進(jìn)程Tick需要多長時間的反饋。
GameplayTags
顯示游戲進(jìn)程標(biāo)簽信息。
GC
顯示垃圾回收統(tǒng)計數(shù)據(jù)。
GeometryCache
顯示幾何體緩存系統(tǒng)的性能和內(nèi)存統(tǒng)計數(shù)據(jù)。
GPU
顯示幀的GPU統(tǒng)計數(shù)據(jù)。
GPUParticles
顯示GPU粒子的性能信息。
Help
列出所有命令。
Hitches
設(shè)置?t.HitchFrameTimeThreshold
?以定義被認(rèn)為發(fā)生卡頓的時長(單位:秒)。還會將所有卡頓轉(zhuǎn)存到日志/visual studio調(diào)試,例如?[0327.87] LogEngine:Warning:HITCH @ 00m:01s:643ms,1643,72,2
?。
IMEWindows
顯示W(wǎng)indows文本輸入法系統(tǒng)的信息。
InitViews
顯示有關(guān)可見性剔除花費了多長時間以及效果如何的信息??梢姺侄斡嫈?shù)是渲染線程性能方面最重要的一個統(tǒng)計量,它由STAT INITVIEWS下的可見靜態(tài)網(wǎng)格體元素控制;不過,可見動態(tài)原語也有影響。
KismetCompiler
顯示Kismet編譯器信息。
KismetReinstancer
顯示Kismet Reinstancer信息。
Levels
顯示關(guān)卡流送信息。
LightRendering
提供有關(guān)渲染光照和陰影需要多長時間的反饋。
LinkerCount
顯示連接器計數(shù)器。
LinkerLoad
顯示連接器加載信息。
List?
使用?<Groups/Sets/Group><br>
?顯示統(tǒng)計數(shù)據(jù)組、保存的集合或者特定組中的統(tǒng)計數(shù)據(jù)。
LLM
顯示低級內(nèi)存追蹤器(LLM)計數(shù)器。
LLMFull
顯示整個LLM計數(shù)器組。
LLMOverhead
顯示LLM開銷計數(shù)器。
LLMPlatform
顯示LLM平臺計數(shù)器。
LoadTime?/?LoadTimeVerbose
顯示加載時間性能信息。
MapBuildData
顯示地圖的編譯數(shù)據(jù)。
MathVerbose
顯示數(shù)學(xué)運(yùn)算的性能信息。
Memory
顯示有關(guān)虛幻引擎中各個子系統(tǒng)使用多少內(nèi)存的統(tǒng)計數(shù)據(jù)。
MemoryAllocator
顯示內(nèi)存分配信息。
MemoryPlatform
顯示內(nèi)存平臺信息。
MemoryStaticMesh
顯示有關(guān)靜態(tài)網(wǎng)格體的內(nèi)存統(tǒng)計數(shù)據(jù)。
NamedEvents
為外部分析器啟用指定事件。
Navigation
顯示導(dǎo)航系統(tǒng)的性能和內(nèi)存信息。
NET
顯示網(wǎng)絡(luò)系統(tǒng)統(tǒng)計數(shù)據(jù)。
Object?/?ObjectVerbose
顯示對象內(nèi)存和性能信息。
Online
顯示在線系統(tǒng)計數(shù)器。
Pakfile
顯示Pakfile系統(tǒng)統(tǒng)計數(shù)據(jù)。
ParallelCommandListMarkers
顯示并行命令列表及并行命令性能信息。
Particles
顯示粒子系統(tǒng)性能信息。
Physics
顯示物理性能統(tǒng)計數(shù)據(jù)。
PhysXTasks
顯示PhysX任務(wù)信息。
PhysXVehicleManager
顯示PhysX載具管理器的統(tǒng)計數(shù)據(jù)。
PlayerController
顯示玩家控制器性能信息。
Quick
快速顯示總體性能數(shù)據(jù)組。
RenderTargetPool
顯示渲染目標(biāo)池的內(nèi)存和性能統(tǒng)計數(shù)據(jù)。
RenderThreadCommands
列出渲染線程命令及性能信息。
RHI
顯示RHI內(nèi)存和性能統(tǒng)計數(shù)據(jù)。
RHICMDLIST
顯示RHI命令列表及性能統(tǒng)計數(shù)據(jù)。
SceneMemory
顯示場景內(nèi)存計數(shù)器。
SceneRendering
顯示一般渲染統(tǒng)計數(shù)據(jù)。這是一個很好的起點,可以發(fā)現(xiàn)渲染過程中性能低下的一般方面。
SceneUpdate
顯示有關(guān)更新場景的信息,包括添加、更新和刪除光源以及添加和刪除場景中的原語所花費的時間。
Script
顯示腳本統(tǒng)計數(shù)據(jù)。
ShaderCompiling
顯示著色器編譯信息。
Shaders
顯示著色器壓縮統(tǒng)計數(shù)據(jù)。
ShadowRendering
顯示陰影計算花費多長時間,該時間不同于?stat LightRendering?中包括的實際陰影渲染時間。
Slate?/?SlateVerbose
顯示Slate性能統(tǒng)計數(shù)據(jù)。
SlateMemory
顯示Slate內(nèi)存計數(shù)器。
SoundCues
顯示活動的Sound Cue。
SoundMixes
顯示活動的SoundMix。
Sounds
<?> <sort=distance|class|name|waves|default> <-debug> <off>
?
顯示活動的SoundCue和SoundWave。
SoundWaves
顯示活動的SoundWave。
SplitScreen
顯示分屏信息。
StartFile
啟動統(tǒng)計數(shù)據(jù)采集,同時在分析目錄中創(chuàng)建一個新文件。
注意:?利用?stat StopFile?命令停止此操作。
StatSystem
顯示統(tǒng)計系統(tǒng)的性能和內(nèi)存信息。
StopFile
完成由?stat StartFile?啟動的統(tǒng)計數(shù)據(jù)采集,同時關(guān)閉在分析目錄中創(chuàng)建的文件。
Streaming
顯示流送資源的基本統(tǒng)計數(shù)據(jù),例如使用了多少內(nèi)存流送紋理,或者場景中有多少流送紋理。
StreamingDetails
有關(guān)流送的更詳細(xì)的統(tǒng)計信息,例如將一般紋理流分解為更具體的組(光照貼圖、靜態(tài)紋理和動態(tài)紋理)。
StreamingOverview
顯示流送資源的統(tǒng)計數(shù)據(jù)概述。
TargetPlatform
顯示目標(biāo)平臺信息。
TaskGraphTasks
顯示TaskGraph任務(wù)的性能數(shù)據(jù)。
Text
顯示文本的性能統(tǒng)計數(shù)據(jù)。
TextureGroup
顯示紋理組內(nèi)存計數(shù)器。
Threading
顯示線程處理信息。
ThreadPoolAsyncTasks
顯示ThreadPool Async任務(wù)計數(shù)器。
Threads
顯示線程信息。
Tickables
顯示Tickable的性能統(tǒng)計數(shù)據(jù)。
TickGroups
顯示Tick組的性能統(tǒng)計數(shù)據(jù)。
UI
顯示UI性能信息。
Unit
總體幀時間以及游戲線程、渲染線程和GPU時間。
注意:?這是一個很好的stat命令,因為它可以幫助開發(fā)人員專注于分析工作。
UnitGraph
要查看包含stat單元數(shù)據(jù)的圖表,使用?stat Raw?查看未過濾數(shù)據(jù)。
UObjectHash
顯示散列的UObject信息。
UObjects
顯示游戲中UObject的性能統(tǒng)計數(shù)據(jù)。
選擇命令
關(guān)卡
stat levels?命令顯示關(guān)卡流送信息,這些信息被分組在固定關(guān)卡下。
用例
此命令對于希望查看當(dāng)前活動關(guān)卡列表的開發(fā)人員非常有用,包括它們是否可見、預(yù)加載、加載或卸載。此外,該命令還顯示從加載請求到加載完成需要多少秒。
用法
要查看流送關(guān)卡信息,在?PIE控制臺?中輸入?stat levels
?。要確定關(guān)卡處于什么狀態(tài),請參考下面的關(guān)卡顏色代碼表。
關(guān)卡顏色代碼
顏色代碼
說明
綠色
關(guān)卡已加載并可見。
紅色
關(guān)卡已卸載。
橙色
關(guān)卡正在變成可見的過程中。
黃色
關(guān)卡已加載,但不可見。
藍(lán)色
關(guān)卡已卸載,但仍駐留在內(nèi)存中,當(dāng)發(fā)生垃圾回收時將清除它。
紫色
關(guān)卡是預(yù)加載的。
StartFile

stat startfile?命令啟動統(tǒng)計數(shù)據(jù)采集,并在?Profiling?目錄中創(chuàng)建一個新文件。通常,引擎將統(tǒng)計數(shù)據(jù)采集保存在?[UE項目目錄][項目名稱]\Saved\Profiling\UnrealStats
?下。
用例
要使用?會話前端分析器?分析項目的性能,采集統(tǒng)計樣本并將其記錄到?*.uestats
?文件中。
用法
要采集統(tǒng)計數(shù)據(jù)并將數(shù)據(jù)記錄到?*.uestats
?文件中,在?PIE控制臺?中輸入?stat startfile
。
要防止?StartFile?因使用較大的?ue4stats
?文件導(dǎo)致磁盤膨脹,請運(yùn)行?stat StopFile?。此外,即使關(guān)閉了PIE模式,StartFile也將繼續(xù)在后臺運(yùn)行,這可能會導(dǎo)致日志文件膨脹,因此請務(wù)必運(yùn)行?StopFile?命令來停止記錄項目性能。
加載統(tǒng)計數(shù)據(jù)
要將統(tǒng)計數(shù)據(jù)加載到?會話前端分析器?中,請執(zhí)行以下操作:
從?虛幻編輯器菜單欄(Unreal Editor Menu Bar)?,選擇?工具(Tools)> 會話前端(Session Frontend)?。
打開?會話前端(Session Frontend)?后,選擇?分析器(Profiler)?選項卡。
要打開文件進(jìn)行分析,請選擇?加載(Load)?。將顯示?文件資源管理器(File Explorer)?窗口,供你選擇要打開進(jìn)行分析的?
uestats
?文件。選擇?
uestats
?文件后,點擊?打開(Open)?加載該文件。
最終結(jié)果
會話前端(Session Frontend)?加載文件后,捕獲數(shù)據(jù)將在?分析器(Profiler)?中可見,可進(jìn)一步分析。閱讀分析器工具參考,詳細(xì)了解如何在?會話前端(Session Frontend)?中查看配置文件捕獲。

Unreal Frontend
用于管理應(yīng)用程序和部署到主機(jī)的工具
StopFile

stat stopfile?命令停止由?StartFile?命令啟動的統(tǒng)計數(shù)據(jù)采集。此外,?StopFile?命令還關(guān)閉在?Profiling
?目錄中創(chuàng)建的文件。
用例
要防止 StartFile 因使用較大的?ue4stats
?文件導(dǎo)致磁盤膨脹,運(yùn)行 stat?StopFile?。此外,即使關(guān)閉了PIE模式,StartFile也將繼續(xù)在后臺運(yùn)行,這可能會導(dǎo)致日志文件膨脹,因此請務(wù)必運(yùn)行 StopFile 命令來停止記錄項目性能。
用法
要停止采集和記錄統(tǒng)計數(shù)據(jù),在?PIE控制臺?中輸入?stat stopfile
?。
單元
用例
通常,開發(fā)人員想要確定?Game?線程中、?Draw?(渲染)線程中或?GPU?上是否存在瓶頸(負(fù)面性能影響)。?

stat unit?命令顯示項目的?Frame?、?Game?、?Draw?、?GPU?、?RHIT?和?DynRes?線程的性能信息。
統(tǒng)計數(shù)據(jù)
名稱
說明
Frame
幀時是生成一幀游戲內(nèi)容所花費的總時間。由于Game線程和Draw線程在完成一幀之前保持同步,幀時往往接近其中一個線程中顯示的時間。
Game
如果幀時接近Game線程中顯示的時間,則游戲的性能很可能會受到Game線程的阻礙(負(fù)面影響)。
Draw
如果幀時接近Draw線程中顯示的時間,則游戲的性能很可能會受到渲染線程的阻礙
GPU
GPU時間用來衡量顯卡渲染場景需要多長時間。由于GPU時間會被同步到幀上,它很可能與幀時相同。
RHIT
通常,RHI線程時間會被同步到幀上,因此它很可能與幀時相同。
DynRes
如果支持(并啟用),動態(tài)分辨率將顯示主要屏幕百分比和次要屏幕百分比。
用法
要確定項目的瓶頸,在非調(diào)試編譯中啟動游戲,并在?PIE控制臺?中輸入?stat unit
?。