每个模块有自己的StyleSet,里面包含了很多Style,例如BUTTONSTYLE等,
有的Style有多个BRUSH,例如ButtonStyle就有4个Brush
引擎启动时候,会Register每个StyleSet,corestyle,editorstyle,umgstyle等。其中UMGstyle最简单。
注册的函数在
Engine\Source\Runtime\SlateCore\Private\Styling\SlateStyleRegistry.cpp
,然后最后把每个StyleSet里面的所有图片资源拼合成一张大图,目前来看只能读取PNG,没有找到读取UAsset的方法。
拼大图时候Brush UOBJECT必须等于NULL,然后name是完整路径。FPaths::GameContentDir() + "UI/GamePad/images/gongji.png",等。
最后大图在developmenttools -> widget reflector -> display texture atlas