-
-
Notifications
You must be signed in to change notification settings - Fork 273
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Non-ASCII characters are not displayed properly with TextMeshProUGUI and SoftMask. #216
Comments
As an alternative: Consider using RectMask2D or Anti-Aliasing mask mode. https://github.com/mob-sakai/SoftMaskForUGUI?tab=readme-ov-file#rectmask2d-vs-softmask https://github.com/mob-sakai/SoftMaskForUGUI?tab=readme-ov-file#comparison-of-masking-mode |
I am sorry, but this project has grown really large and it will be pretty complex & will take a long while to create a minimal project. Is it possible that I just privately share a fork of the project with you instead? |
I would love to, but I also want to use the SoftMask effect, especially in other parts of the project......I am not too tight on the time constraint, so I can resolve this issue with you + I think this will really benefit SoftMask's usability with other languages! It's so close to being the perfect solution for Soft-Masking in Unity! |
Yes, that's no problem. |
Hi! Sorry it took a while. I just share the fork with you. To start, please start from with CompleteRestartScene, which should lead you automatically to TitleScreen, where you can access PlayerSetting Menu. Scroll to the bottom to change language to see the error!
|
Okay, I cloned that repository. 👍 |
Playing a CompleteRestartScene scene causes an error.
Edit: PreloadMenuManager scene > PreloadMenuManager.TutorialStoryBlock is null. Edit: Skipped tutorial to show screen. - if (playerData.HasStatus(LilyFantasiaPlayerStatusKey.Completed_Tutorial_Song))
{
await LoadingScreenSpawner.LoadNextSceneAsync(
new LoadingScreenArgument(
SceneNames.TitleScreenScene,
durationInSecond: 1f,
animationMode: LoadingScreenAnimationMode.WhiteFade)
);
}
- else
- {
- var blockData = TutorialStoryBlock.CreateData();
- await new StoryBookEnterNextSceneUtility().PlayFullStoryWithSongAsync(
- SceneNames.PreloadScene,
- SceneNames.TitleScreenScene,
- blockData,
- 0,
- cancellationToken
- );
- } |
I am sorry for the error! I was trying to create a fork in a hurry, so the mistake must have slipped through. Glad to see the error being reproducible though! |
As a workaround: by deactivating the relevant objects, they were displayed correctly. Or, apply this patch: UtilityHubMenuManager.patch.zip |
By adding a delay before hiding the submenu, it was displayed correctly.
Considering the previous patch (calling If we can find an accessible event that notifies when it completes, everything will be resolved! |
🎉 This issue has been resolved in version 3.1.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The texts should be displayed properly.
Screenshots
^ English (Displaying properly)
^ Traditional Chinese (Error)
^ Japanese (Error)
^ If I remove the SoftMask in Viewport, the error goes away.
^ Setting Masking Mode to Normal works correctly, as well as Anti-Aliasing.
^ How the font is set up. The font itself is a static font with ASCII characters, with 3 fallback Japanese font (first 2 static, the last is dynamic fallback).
^ Overlay causes error too; If I set the RenderCamera to overlay, the problematic texts disappear.
Environment (please complete the following information):
Additional context
I upgraded from 1.0.2, where the same error also existed.
UPDATE:
If I manually toggle on and off the "Ignore Children" option in Soft Maskable on the TextMeshProUGUI component, the texts starts rendering properly.
^ Before toggle On
^ Toggle On
^ Toggle Off (texts start displaying properly.)
The text was updated successfully, but these errors were encountered: