背景:
有时候我想用ab包跑跑游戏逻辑方便排查一些问题,比如一些图集的自动加载问题,
比如有如下代码
protected override void Init()
{
SpriteAtlasManager.atlasRequested += OnAtlasRequest;
}
private void OnAtlasRequest(string sprite, Action<SpriteAtlas> action)
{
Debug.Log($" on atlas request {sprite} ");
string atlasName = Path.GetFileNameWithoutExtension(sprite);
var loadSpriteAtlas = YooAssets.GetPackage().LoadAssetSync<SpriteAtlas>(atlasName);
action?.Invoke(loadSpriteAtlas.AssetObject as SpriteAtlas);
}
如果是在编辑器模式下,不走ab包的情况下根本就不会触发这块逻辑,我想顺着走一下逻辑都没办法做到。
但是切换到真机我发现没法看到textMeshPro的文本,然后材质都是紫色的。
工程设置:

看到在Android平台下确实是opengles渲染的,但是还不够,

我们在命令行中强制使用gles来渲染 -force-gles
这样我们再次重新打开unity 游戏里面的文本材质都可以正常显示了,ab包模式下