Criador de fontes
Dê ao seu servidor uma fonte própria. Solte um .ttf ou um .otf e a página monta o arquivo Scaleform .gfx que o GTA V precisa, dentro do seu navegador e sem nenhum conversor para instalar. Você vê o seu texto desenhado numa tela real de Los Santos, na resolução que os seus jogadores usam, com a escala, a cor, a quebra de linha, a sombra e o contorno que as natives de texto dão. Depois baixa um resource com a fonte em stream, o Lua de registro e o código de desenho que vai junto.
Por enquanto, esta ferramenta e as notas dela estão em inglês.
Esta ferramenta está fora do ar para manutenção
Desligamos ela por um momento. O resto do site continua funcionando e a ferramenta volta sozinha.
How to use it
- Drop a
.ttfor.otfon the page. It is read on your own machine. - Pick the characters to include. Basic Latin is the smallest file and covers most HUDs.
- Set the file name and the font name. They are two different things: the first is the name of the .gfx on disk, the second is the name of the font inside it.
- Type your text and set the scale, colour, position, wrapping, shadow and outline.
- Download the resource, drop it in your resources folder and add
ensurefor it.
What a custom font needs in game
GTA V draws text through Scaleform, so a font has to be a Scaleform GFx font library, a.gfx file. Four things have to line up:
- The
.gfxhas to be in the resource'sstreamfolder. That is what hands it to the game's streamer, andRegisterFontFileonly works on a file the streamer already knows about. RegisterFontFile('name')takes the file name without the extension. It queues the library; the client loads it over the next frames.RegisterFontId('FontName')takes the name of the font inside that library and gives you back an index.SetTextFont(id)with that index, before you begin the text command.
A font needs no files entry and no data_file line in the manifest.files makes something fetchable by the client, which is not the same as streaming it, and data_file is for the game's own meta files. The generated manifest says this in a comment so nobody adds one later.
The traps
| What you see | Why |
|---|---|
| The stock font on the first frames, then yours | The library is still streaming in. RegisterFontFile queues it and no native reports when it is ready, so wait a moment after registering before you draw. The generated client.lua does. |
| The wrong font, or the stock one, forever | A hardcoded font id. RegisterFontId returns an index into a list built while the client runs, so it shifts if another resource registers a font before yours. Keep the value you were handed. |
| Empty boxes where some letters should be | Those characters are not in the file. Accents, Cyrillic, Greek and the lira sign only ship if you picked a character set that includes them. The preview shows the same boxes. |
| Your colour, scale or shadow is ignored | The call came after BeginTextCommandDisplayText. EverySetText... call has to come first. |
| Centring does nothing | SetTextJustification needs a box to justify inside, so it only does something together with SetTextWrap. |
| Long text is cut off | One text component carries 99 characters. Split it and add it in pieces. |
| Nothing happens at all | RegisterFontID with a capital D is not a native. It isRegisterFontId. |
What the preview can and cannot show
The text on the screenshot is drawn from the glyph outlines read back out of the .gfx this page just built, not from your browser's own rendering of the uploaded font. The letter shapes, the spacing between them, the line breaks and anything missing are therefore exactly what the file holds.
The size is close rather than exact. GTA works the final text height out from the font's own ascent, so there is no clean formula that holds for every font; if you need the real number, read it in game with GetTextScaleHeight. The drop shadow and outline are drawn the way the game draws them but are not pixel for pixel, and no browser can tell you how your font looks after the game's own antialiasing.
Privacy and licensing
Nothing is uploaded. The page reads the font, builds the .gfx and packs the zip in your browser, and this tool has no server side. Fonts are licensed work, so check that the one you are shipping allows embedding before you put it on a server.
Mais ferramentas de config e código
Designer de roupas
Abra uma roupa .ydd ou .ydr com os .ytd dela, pinte em 3D ou no mapa UV com camadas, texto e imagens e exporte novas texturas .ytd.
Construtor de YMAP
Posicione props por coordenadas e receba um XML .ymap válido com rotações, extents e distâncias de LOD corretas.
Criador de Zonas
Desenhe uma zona no mapa real de GTA V em 2D ou 3D e copie como código de ox_lib, PolyZone, ox_target ou qb-target.
