TextMesh Pro 1: tradução do artigo do site oficial, tutorial em vídeo de uso básico

Referência prática: Tutorial Unity3d | TextmeshPro Dynamic Font | Fallback | Backup Font | UI_哔哩哔哩_bilibili

Link original: TextMesh Pro: criação de ativos de fonte - Unity Learn

1. Introdução

Pense em Font Assets como um contêiner de fonte, para que você possa usar todos os tipos de fontes sofisticadas no projeto, mas só precisa usar um arquivo relacionado, sem modificar repetidamente o arquivo de fonte original.

Se você quiser usar fontes personalizadas ou locais, o Font Assets Creator empacotará os arquivos de fonte em altas (mapas de fonte), que é um arquivo de organização (arquivo de textura) que contém todos os elementos básicos de fonte.

Como usar o Font Assets Creator:

1.  Crie uma nova pasta para armazenar os arquivos de fonte. Você tem arquivos de fonte em seu computador (c drive->windows->font).

2.  Clique em Janela -> TextMeshPro -> Fon Asset Creator no UNITY IDE, e a seguinte janela aparecerá depois de clicar.

Em seguida, arraste o arquivo de fonte para Source Font File . Clique em Gerar Atlas de Fontes  , após a geração terminar aparecerá a Fonte Altas com fundo preto e caracteres brancos , escolha uma pasta para salvar a Fonte Altas .

Se você quiser descartar, não salve primeiro, ainda há muitas coisas que podem ser depuradas:

Arquivo fonte fonte: É o local onde o arquivo fonte fonte é colocado

Tamanho do Ponto de Amostragem/Tamanho da Fonte : Isso determina a precisão da amostragem SDF (Campo de Distância Sinalizada) na reprodução da fonte. A configuração padrão de tamanho automático tentará preencher o atlas com todos os caracteres da fonte. Quando definido como Personalizado, valores mais altos resultam em melhor reprodução. Geralmente, um tamanho de ponto de 50 a 70 é um bom intervalo. Seja cauteloso, no entanto, porque um tamanho de amostragem muito grande impedirá que alguns caracteres estejam no atlas.

(Este parâmetro determina a precisão de amostragem do SDF (Signed Distance Field) na geração de caracteres. A configuração padrão, ou seja, "Auto Size" tentará preencher todos os caracteres contidos em seu arquivo de fonte no arquivo de mapa de fonte gerado (Font In Altas). Se você escolher a opção Tamanho personalizado, precisará definir manualmente o valor neste momento. Quanto maior o valor, maior a precisão da fonte e da conversão gráfica. Geralmente, o intervalo é de 50 ~ 70. Deve-se observar que um valor muito alto fará com que alguns caracteres não apareçam no arquivo de mapa de fonte)

Preenchimento : determina o tamanho dos efeitos (contornos, brilho, chanfros, etc.) dos materiais de fonte. Geralmente, é bom que o tamanho do preenchimento esteja em uma proporção de 1:10 em relação ao tamanho da amostra. Um tamanho de amostragem de 60, para exemplo, deve ter um tamanho de preenchimento de 6. Isso, no entanto, não é uma regra rígida. Quebrar essa proporção pode produzir efeitos interessantes que podem se adequar melhor à sua visão estética para seus projetos. (O espaçamento entre os caracteres, o  parâmetro afetam o efeito do material da fonte, como contorno, halo, chanfro, etc. Normalmente, considere o tamanho do preenchimento/ponto de amostragem como 1:10. Mas usar outras proporções pode gerar alguns efeitos interessantes.)

Método de empacotamento : O método pelo qual o atlas é preenchido. Rápido é bom para visualizar rapidamente as fontes, enquanto o Ótimo é melhor reservado para o atlas final.
Resolução do atlas : o tamanho da textura do atlas. Isso é determinado pelo tamanho e preenchimento do ponto de amostragem. Você deve limitar a resolução do atlas a 2048 x 2048 para projetos voltados para dispositivos móveis. (o tamanho da textura final gerada, esse parâmetro determina a resolução do font map .Os parâmetros são determinados pelos parâmetros Sampling Point Size e Padding. Para projetos em plataformas móveis, a resolução do Atlas deve ser limitada a 2048x2048.)

Conjunto de caracteres: determina o intervalo de caracteres a ser usado na fonte. O padrão é ASCII.

 Selecione o conjunto de caracteres, o padrão é ASCII e algumas outras opções são descritas a seguir

  • Caracteres personalizados: adiciona caracteres de um campo de entrada ou outro recurso de fonte

  • Intervalo personalizado: adiciona caracteres de um intervalo hexadecimal (16 进制)

  • Intervalo Unicode (Hex): adiciona caracteres de um intervalo unicode

  • Characters from File: Adiciona um conjunto de caracteres de um arquivo. Isso pode ser útil para localização ou um cenário em que o preenchimento manual de um atlas seria impraticável.

Render Mode: Determines how text will be presented. While displaying text at rasterized bitmaps is still supported, use SDF modes unless you’re rendering a small font on a 1:1 ratio (i.e., 10pt font rendered 10px on the screen). (确定文本的显示方式。虽然仍支持在光栅化位图上显示文本,但除非以1:1的比例渲染小字体,即在屏幕上渲染10px的10pt字体,否则请使用SDF模式。)
Get Kerning Pairs: TextMesh Pro can optionally use the kerning information embedded in the font, if available. (可以选择使用 kerning information  )

3. Once all settings are to your liking, select Generate Font Asset to import your new font.

Once your Font Asset has been created, you can access individual settings within the Inspector.(在你设置完毕后,点击Generate Font Asset 生成你的字体,生成好字体文件后,你可以在面板中设置独立的属性)

2. Dynamic and static Font Assets 动 / 静态字体资源

Sometimes we need to populate a Font Atlas with specific characters. One practical reason is creating a font from a subset of characters. This is particularly useful for languages with massive character sets (over 50,000 for Chinese). Most games use about 1,000 characters at most, and games with full Chinese and Japanese language support are some of the few that approach this range. Dynamic SDFs are an alternative way of populating a font atlas with only the characters we need by typing them into the input field. Font fallbacks will be used for all remaining characters as needed.(有时我们需要用特定地字符填充字体图集。如从字符子集创建字体。这对于具有大量字符集的语言(中文字符集超过50000)特别有用。大多数游戏最多使用1000个字符图形,而且要到1000个字符也是少数完全支持中文和日文的那种游戏。动态SDF只生成会用得到的字符集文件,动态asset会生成一个0Mb的asset资源,然后根据输入实时生成字符集合,优点是优秀的空间使用,但是会带来一定的性能负载。剩下的字符如果你想使用我们还有 Font fallbacks 功能)

If desired, the font atlases generated by these dynamically populated Font Assets can be exported, modified to contain external characters (i.e., remapping ‘A’ to a symbol not found in any font atlas), then reimported into Unity.(如果有需要, 动态生成的字体文件可以导出,然后往里面假如外部字符(也就是说可将一个特殊形状的“A”导入其中),然后重新导入Unity。)

步骤如下:

1. Navigate to your desired font within the project hierarchy. Then right-click Create > TextMeshPro > Font Asset. This will create a Font Asset with an empty atlas.(在你的字体文件图标上,依次点击Create > TextMeshPro > Font Asset ,这样你会在同目录下得到一个空的字体图文件)

2. Click on the newly created Font Asset. In the Inspector, navigate to Generation Settings and make sure Atlas Population Mode is set to Dynamic. (点击这个空内容的字体图文件,然后在对应的设置面板中让 Atlas Population Mode 的设置为 Dynamic)

3. Navigate to the TextMeshPro Object, choose this new Font Asset, and input the desired characters as needed.(然后你就可以到对应的 TextMeshPro 组件中使用生成的字体图啦)

It’s good to pack Font Assets dynamically when you need to populate an atlas at runtime (such as for any input fields). However, this requires the source font to be referenced and included within the project build. Static Font Assets are good for containing characters you know will be used throughout the project (menu items, dialog subtitles/text boxes, etc.). As Static Font Assets include all the characters required for the project, they do not need to reference the original font source file.(当您需要在运行时填充字体图的时候,使用动态打包字体资产是很好的。但是,这需要在项目中引用并包含源字体。静态字体资源适合于事先已知在整个项目中将要使用的字符(菜单项、对话框字幕/文本框等)。由于静态字体资源包括项目所需的所有字符,因此它们不需要引用原始字体源文件。)

In short, use static Font Assets for your “knowns” and dynamic Font Assets for your “unknowns.”

3. TMP设置

The TMP Settings Asset found in the TextMesh Pro > Resources folder is used to assign and manage default fonts, Sprites, and fallbacks. While we can apply local settings to individual fonts, the settings in this asset will affect every TextMeshPro Asset in the Scene .

TextMesh Pro>Resources-> TMP Setting  用于  TextMeshPro插件的默认设置)

4. Font Weights

Font weights describe the various appearances your font can take, i.e., bold, italic.(Font weights 用于设置可采用的各种外观,即粗体、斜体等。)

These variations can either be loaded from a new Font Asset or “faked” via the following settings, some of which are default values (你可以导入新的字体实现效果,也可以方便地直接用Font weights 的设置来实现)

5. Font fallbacks

Occasionally we want to reference characters that our font doesn’t contain. Instead of replacing our primary Font Asset, we can instead rely on a fallback. Fallbacks are additional Font Assets that will be referenced when a character does not exist in our primary font.(有时需要用到字体图中不包含的字符。无需替换条字体图文件(font asset、SDF),而是使用fallback ,fallback 的存在就是为了当你的主字体图文件中不包含某个字符时,使用其他的字体资源文件)

Font fallbacks can be set globally within the TMP Settings Asset or locally per Font Asset.(可以设置一个 global 的 fallback ,也能给每个字体图单独设置 fallback)

6. Multi-Atlas Textures

Ao preencher dinamicamente um atlas de fontes, pode chegar um ponto em que a quantidade de caracteres excede o tamanho do atlas. Quando isso acontece, os caracteres que não se encaixam serão automaticamente colocados em um novo atlas e atribuídos como substitutos do anterior atlas. Este é o princípio subjacente das Texturas Multi-Atlas — a capacidade de preencher novos atlas conforme necessário durante o tempo de execução. Embora o consumo de memória seja maior, eles podem ser valiosos para uso de localização e fornecer flexibilidade para modificar atlas em tempo de execução. ( char Se houver muitos, serão gerados dois arquivos, e o último servirá automaticamente como substituto do anterior. Esse é o princípio básico das Texturas Multi-Atlas. Esse mecanismo ocupa muita memória, mas é flexível.)

Acho que você gosta

Origin blog.csdn.net/BernardCODE/article/details/121956468
Recomendado
Clasificación