Page 1 of 1

textmeshrpo saving is not working?

Posted: Wed Apr 21, 2021 10:13 am
by Uchiha I_T_H_
I am trying auto save on textmesh pro but it couldn't do it . it gives error that font asset is null. tried to tick font field in types but still same result.
any solution?

Re: textmeshrpo saving is not working?

Posted: Wed Apr 21, 2021 11:15 am
by Joel
Hi there,

We don't natively support TextMesh Pro so there's no guarantee it will work. However, if you replicate the issue in a new project with a simple scene and private message it to me I'll be happy to look into it further.

All the best,
Joel

Re: textmeshrpo saving is not working?

Posted: Wed Apr 21, 2021 11:33 am
by Uchiha I_T_H_
I am not doing anything fancy. I am just trying auto save feature on textmesh pro nothing else.
To reproduce use auto save feature and tick Textmesh pro for save. run the scene twice ( first time to save and then second time to load).
The error I get is that it doesn't able to find font asset by reference.
Image



https://cdn.discordapp.com/attachments/ ... 24-978.mp4


error message--->


Reference for TMPro.TMP_FontAsset with ID 2226998858876783974 could not be found in Easy Save's reference manager. If you are loading objects dynamically (i.e. objects created at runtime), this warning is expected and can be ignored.
To disable warnings from Easy Save, go to Window > Easy Save 3 > Settings, and uncheck 'Log Warnings'
UnityEngine.Debug:LogWarningFormat(Object, String, Object[])
ES3Internal.ES3Debug:LogWarning(String, Object, Int32) (at Assets/Project/Easy Save 3/Scripts/Debugging/ES3Debug.cs:30)
ES3Internal.ES3ReferenceMgrBase:Get(Int64, Type, Boolean) (at Assets/Project/Easy Save 3/Scripts/ES3ReferenceMgrBase.cs:167)
ES3Types.ES3ScriptableObjectType:ReadObject(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ScriptableObjectType.cs:51)
ES3Types.ES3ObjectType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:55)
ES3Reader:ReadObject(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:249)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Reader:Read() (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:126)
ES3Types.ES3UserType_TextMeshProUGUI:ReadComponent(ES3Reader, Object) (at Assets/Easy Save 3/Types/ES3UserType_TextMeshProUGUI.cs:115)
ES3Types.ES3ComponentType:ReadUnityObject(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ComponentType.cs:36)
ES3Types.ES3UnityObjectType:ReadObject(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3UnityObjectType.cs:65)
ES3Types.ES3ObjectType:ReadInto(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:78)
ES3Types.ES3Type_GameObject:ReadComponents(ES3Reader, GameObject) (at Assets/Project/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:211)
ES3Types.ES3Type_GameObject:ReadObject(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:162)
ES3Types.ES3ObjectType:ReadInto(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:78)
ES3Types.ES3Type_GameObject:ReadObject(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:126)
ES3Types.ES3ObjectType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:55)
ES3Reader:ReadObject(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:249)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Types.ES3CollectionType:ReadICollection(ES3Reader, ICollection`1, ES3Type) (at Assets/Project/Easy Save 3/Scripts/Types/Collection Types/ES3CollectionType.cs:52)
ES3Types.ES3ArrayType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Collection Types/ES3ArrayType.cs:36)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:274)
ES3:Deserialize(ES3Type, Byte[], ES3Settings) (at Assets/Project/Easy Save 3/Scripts/ES3.cs:783)
ES3:Deserialize(Byte[], ES3Settings) (at Assets/Project/Easy Save 3/Scripts/ES3.cs:772)
ES3File:Load(String, GameObject[]) (at Assets/Project/Easy Save 3/Scripts/ES3File.cs:243)
ES3:Load(String, GameObject[], ES3Settings) (at Assets/Project/Easy Save 3/Scripts/ES3.cs:415)
ES3AutoSaveMgr:Load() (at Assets/Project/Easy Save 3/Scripts/Auto Save/ES3AutoSaveMgr.cs:92)
ES3AutoSaveMgr:Awake() (at Assets/Project/Easy Save 3/Scripts/Auto Save/ES3AutoSaveMgr.cs:117)

Re: textmeshrpo saving is not working?

Posted: Wed Apr 21, 2021 1:42 pm
by Uchiha I_T_H_
I was able to fix the font asset issue with manually adding the font asset reference but still unity.mesh reference is an issue

Image
error code--->

Reference for UnityEngine.Mesh with ID 1797108305164466875 could not be found in Easy Save's reference manager. If you are loading objects dynamically (i.e. objects created at runtime), this warning is expected and can be ignored.
To disable warnings from Easy Save, go to Window > Easy Save 3 > Settings, and uncheck 'Log Warnings'
UnityEngine.Debug:LogWarningFormat(Object, String, Object[])
ES3Internal.ES3Debug:LogWarning(String, Object, Int32) (at Assets/Project/Easy Save 3/Scripts/Debugging/ES3Debug.cs:30)
ES3Internal.ES3ReferenceMgrBase:Get(Int64, Type, Boolean) (at Assets/Project/Easy Save 3/Scripts/ES3ReferenceMgrBase.cs:167)
ES3Types.ES3UnityObjectType:ReadObject(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3UnityObjectType.cs:84)
ES3Types.ES3ObjectType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:55)
ES3Reader:ReadObject(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:249)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Types.ES3Type:ReadProperties(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3Type.cs:158)
ES3Types.ES3ReflectedValueType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Reflected Types/ES3ReflectedValueType.cs:30)
ES3Reader:ReadObject(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:249)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Types.ES3CollectionType:ReadICollection(ES3Reader, ICollection`1, ES3Type) (at Assets/Project/Easy Save 3/Scripts/Types/Collection Types/ES3CollectionType.cs:52)
ES3Types.ES3ArrayType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Collection Types/ES3ArrayType.cs:36)
ES3Types.ES3Type:ReadProperties(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3Type.cs:155)
ES3Types.ES3ReflectedObjectType:ReadObject(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Reflected Types/ES3ReflectedObjectType.cs:27)
ES3Types.ES3ObjectType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:55)
ES3Reader:ReadObject(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:249)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Types.ES3Type:ReadProperties(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3Type.cs:158)
ES3Types.ES3ReflectedComponentType:ReadComponent(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/Reflected Types/ES3ReflectedComponentType.cs:24)
ES3Types.ES3ComponentType:ReadUnityObject(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ComponentType.cs:36)
ES3Types.ES3UnityObjectType:ReadObject(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3UnityObjectType.cs:65)
ES3Types.ES3ObjectType:ReadInto(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:78)
ES3Types.ES3Type_GameObject:ReadComponents(ES3Reader, GameObject) (at Assets/Project/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:211)
ES3Types.ES3Type_GameObject:ReadObject(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:162)
ES3Types.ES3ObjectType:ReadInto(ES3Reader, Object) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:78)
ES3Types.ES3Type_GameObject:ReadObject(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:126)
ES3Types.ES3ObjectType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/ES3ObjectType.cs:55)
ES3Reader:ReadObject(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:249)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Types.ES3CollectionType:ReadICollection(ES3Reader, ICollection`1, ES3Type) (at Assets/Project/Easy Save 3/Scripts/Types/Collection Types/ES3CollectionType.cs:52)
ES3Types.ES3ArrayType:Read(ES3Reader) (at Assets/Project/Easy Save 3/Scripts/Types/Collection Types/ES3ArrayType.cs:36)
ES3Reader:Read(ES3Type) (at Assets/Project/Easy Save 3/Scripts/Readers/ES3Reader.cs:274)
ES3:Deserialize(ES3Type, Byte[], ES3Settings) (at Assets/Project/Easy Save 3/Scripts/ES3.cs:783)
ES3:Deserialize(Byte[], ES3Settings) (at Assets/Project/Easy Save 3/Scripts/ES3.cs:772)
ES3File:Load(String, GameObject[]) (at Assets/Project/Easy Save 3/Scripts/ES3File.cs:243)
ES3:Load(String, GameObject[], ES3Settings) (at Assets/Project/Easy Save 3/Scripts/ES3.cs:415)
ES3AutoSaveMgr:Load() (at Assets/Project/Easy Save 3/Scripts/Auto Save/ES3AutoSaveMgr.cs:92)
ES3AutoSaveMgr:Awake() (at Assets/Project/Easy Save 3/Scripts/Auto Save/ES3AutoSaveMgr.cs:117)

Re: textmeshrpo saving is not working?

Posted: Thu Apr 22, 2021 6:59 am
by Joel
Hi there,

This is because much of what the Text Mesh Pro Component uses is generated at runtime, meaning that the reference changes each time.

However, in most cases you don't actually need to save the entire Component, you only need to save the 'text' field. To do this you can click the gear icon next to the Component in the Auto Save window and ensure that only the 'text' property is selected.

All the best,
Joel

Re: textmeshrpo saving is not working?

Posted: Tue Aug 24, 2021 9:42 pm
by BoBlond
Hi Joel

I have a similar issue.
I use auto save but not on the objects that gives me the bug.
Is there a way to exclude them from Auto save?

Thanks for a great tool!

All the best
Bo

Re: textmeshrpo saving is not working?

Posted: Wed Aug 25, 2021 8:30 am
by Joel
Hi Bo,

I'm not sure I understand. If you don't want an object to be saved by Auto Save, you simply ensure it's not selected in the Auto Save window.

If by 'object' you mean 'field', then you can press the 'gear' icon next to the Component in the Auto Save window and select which fields for that Component will be saved from there.

All the best,
Joel