Greets,
I downloaded the latest available preview version of TMP (3.2.0-pre.3) to try out the OSFont functionality however i could not get it to work. I followed the yt video as well for general reference:
and multiple threads but could not get good results. Trying to create a font from code like:
var pingFang = Font.CreateDynamicFontFromOSFont("PingFang SC", 11);
var defaultAsset = translationsConfig.DefaultFontAsset;
var pointSize = defaultAsset.faceInfo.pointSize;
var fontAsset = TMP_FontAsset.CreateFontAsset(pingFang, pointSize, defaultAsset.atlasPadding, GlyphRenderMode.SDFAA, defaultAsset.atlasWidth, defaultAsset.atlasHeight);
defaultAsset.fallbackFontAssetTable.Add(fontAsset);
**** For font names i tried names from: Font.GetOSInstalledFontName, Font.GetPathsToOSFonts, FontEngine.GetSystemFontNames and none of them worked, while using:
var font = new Font(fontPath); // font path comes from Font.GetPathsToOSFonts();
var defaultAsset = translationsConfig.DefaultFontAsset;
var pointSize = defaultAsset.faceInfo.pointSize;
var fontAsset = TMP_FontAsset.CreateFontAsset(font, pointSize, defaultAsset.atlasPadding, GlyphRenderMode.SDFAA, defaultAsset.atlasWidth, defaultAsset.atlasHeight);
Worked, HOWEVER it caused a massive memory overhead due to HUGE font families on IOS.
I have also tried using the Dynamic OS in the editor for NotoSans family (as per the video):

however that did not work as well. ( Could this come down to me using just the otf instead of ttc?)
Building an “empty” unity project (android APK) with no stripping and a simple scene with fonts set do Dynamic OS and one with just Dynamic, the build size difference is huge.
Am I missing something obvious with DynamicOS? and if there are any workarounds / solutions that you came to on your project please share ![]()