[小科普]遊戲中的口口口是什麼?要怎麼修復?

今天翻譯一篇我們人美心善、天下第一好老闆Miya在Neon noroshi官網寫的文章

修復TextMeshPro中的日文、中文和韓文文本顯示問題

3月11日

作者:Tomoko Miya

點擊此處查看原文(英文)

大家有沒有遇到過這種情況:

興奮地打開一款自己喜歡的遊戲,結果遊玩時發現——遊戲裏的文字怎麼夾雜着一大堆的□□□符號呢?!

而且這種問題似乎在日文和中文裏比較多見?

這是在使用Unity的TextMeshPro(TMP)時,你可能會遇到日文和中文顯示異常的問題。

這些語言包含龐大的字符集,而TMP要求字體圖集中包含所有需要渲染的字符。

如果文本顯示不正確,很可能是因爲生成字體時未包含必要的字符。

 

問題根源

TMP使用基於圖集的字體渲染系統,這意味着只有圖集中包含的字符才能正常顯示。

儘管TMP提供了預設的字符集,但許多亞洲字符(尤其是日文和中文)通常未被包含在內。

因此,當嘗試顯示這些語言的文本時,可能會出現空白或缺失符號,也就是大家看到的□□□□。

 

我們要如何解決呢?

爲了解決這個問題,我們需要手動識別所有必要的日文和中文字符,並確保它們被添加到字體圖集中。具體步驟如下:

  1. 收集所需字符 —— 整理項目中所有用到的字符,形成完整集合。

  2. 手動添加到TMP字體資源 —— 不依賴TMP默認字符集,而是在字體設置中手動指定字符。

  3. 重新生成字體圖集 —— 包含所有必要字符後,圖集即可支持完整渲染。

如果你遇到相同問題,建議採取類似方法。當然,你也可以利用現有文檔或資源中的字符集合來加速流程。

點擊此處複製粘貼所需字符(日/中/韓)。

 

總結

確保TMP字體資源包含所有必要字符,是解決日文和中文顯示問題的關鍵。

雖然TMP默認不支持所有字符,但通過手動調整,可以突破限制並實現流暢的文本渲染。

如需參考,我們在官網上保留了一份完整字符集文檔——歡迎隨時在官網上獲取!

 

今日小知識

有趣的是,日語片假名“ロ”(發音“Lo/Ro”)的形狀與□相似。

同樣,日語和中文的“口”(意爲“嘴巴”)也形似□,但這並非錯誤符號。是不是有點容易混淆呢?

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com