Como fazer livery no FiveM: da lataria sem skin ao carro pronto para pintar
Colocar a identidade da facção, da corporação ou do evento na lataria do carro é um dos pedidos mais comuns numa cidade. E é também onde mais gente empaca, porque metade dos carros add-on simplesmente não aceita livery. Este guia explica por que isso acontece, onde a livery mora dentro do arquivo e como deixar um carro pronto para receber skin sem abrir ZModeler.
Livery, skin e adesivo: o que a comunidade chama de cada coisa
Os três nomes andam juntos e não são exatamente a mesma coisa. Vale alinhar antes:
- Livery. Uma arte que o jogo aplica sobre a lataria inteira, controlada por índice: livery 0, livery 1 e assim por diante. É o sistema nativo, usado por viatura, táxi e carro de empresa.
- Skin. Termo genérico. Na prática, quando alguém pede uma skin de carro, está pedindo uma livery.
- Adesivo ou decal. Arte pequena aplicada num pedaço específico, muitas vezes numa peça separada do modelo, não na lataria toda.
Este guia trata do primeiro caso, que é o que o jogo entende como livery e o que permite trocar a arte sem mexer no modelo.
Por que alguns carros não aceitam livery
A resposta está no shader da lataria. Cada peça do modelo é desenhada por um shader, e o shader define quais texturas o jogo vai amostrar naquela superfície.
O shader mais comum de lataria em carro add-on é o vehicle_paint1. Ele tem a textura de base, a de sujeira, a especular e a de dano. O que ele não tem é um segundo slot de difusa, que é justamente onde a livery entraria. Sem esse slot, não existe onde encaixar a arte: o jogo não tem por onde amostrar a livery, e nenhuma configuração no meta resolve.
O shader que tem esse slot é o vehicle_paint3. Ele é o vehicle_paint1 com três parâmetros a mais, e o principal deles é o diffusesampler2: o slot da livery.
Isso não é teoria, é convenção medida. Varremos 4.546 arquivos de veículo e mais de 30 carros comerciais com livery usavam exatamente esse padrão: lataria em vehicle_paint3 e uma textura com sufixo sign_1. É o caminho que o mercado já seguiu.
Onde a livery mora: a textura sign_1 dentro do .ytd
A convenção de nome é simples: a textura de livery se chama <modelo>_sign_1. Num carro chamado palioblind, a livery é palioblind_sign_1.
Essa textura vive no .ytd do veículo, junto das outras. O shader da lataria aponta para ela pelo nome, e o jogo resolve o nome contra o dicionário na hora de carregar. Se o nome no shader não bate com nenhuma textura do .ytd, a livery fica sem arte.
Quando o carro tem mais de uma livery, o padrão continua o mesmo com o número mudando: sign_1, sign_2 e assim por diante, cada uma ligada a um índice de livery no meta.
O gabarito UV: onde cada parte da lataria cai na imagem
Pintar livery sem gabarito é adivinhação. A textura é uma imagem plana e a lataria é tridimensional: o mapeamento UV é o que diz qual pedaço da imagem vira a porta, o capô ou o teto.
O gabarito é o desenho das arestas da malha da lataria sobre um fundo claro, em 2048 px. Com ele aberto como camada de referência, você vê exatamente onde ficam as quatro portas, o capô, o teto e os paralamas, e consegue posicionar a arte sem testar no jogo dez vezes.
Duas coisas que o gabarito também revela e que economizam retrabalho: partes da lataria costumam estar espelhadas no mapa, então arte com texto precisa de atenção; e peças que parecem lataria, como retrovisor e para-choque, às vezes usam outro shader e não recebem a livery.
Como pintar a livery: camadas, transparência e formato
A livery é desenhada por cima da cor de pintura do carro, não em vez dela. Isso muda como você monta o arquivo:
- Exporte PNG com transparência. Onde a imagem é transparente, aparece a cor original do carro. Uma livery com fundo branco chapado apaga a pintura e fica horrível em qualquer cor.
- Deixe o gabarito numa camada separada e esconda antes de exportar. Ele é referência, não arte.
- Respeite a proporção. A textura de livery é quadrada; entregue a arte quadrada.
- Cuidado com detalhe fino. De longe, o jogo usa uma versão reduzida da textura. Texto pequeno e linha de um pixel desaparecem.
Para montar a arte sem sair do navegador, o estúdio de pintura do Editor tem camadas, mover, escala, rotação, espelhar e opacidade, com o gabarito UV como referência. O fluxo completo está no guia de edição de textura online.
Como deixar um carro livery-ready sem ZModeler
Se o carro está em vehicle_paint1, o que falta é a conversão do shader. Fazer isso na mão significa abrir o modelo numa ferramenta 3D, trocar o material, reexportar e rezar para a física sair igual. É aí que a maioria dos carros quebra.
No Texturize Studio isso é um botão. A conversão faz três coisas: troca o shader da lataria de vehicle_paint1 para vehicle_paint3 preservando as texturas e cores que o carro já tinha, adiciona a textura <modelo>_sign_1 ao .ytd e entrega o gabarito UV de 2048 px da lataria.
O ponto que importa para quem já tomou crash: o shader vive no drawable, não na física. Colisão e deformação saem byte a byte idênticas ao original, e isso é conferido automaticamente antes da entrega. Se a comparação não bate, o arquivo não sai. A cobrança é a régua de sempre: 1 crédito por arquivo devolvido, normalmente o .yft, o _hi.yft e o .ytd, ou um dos 5 arquivos grátis do dia.
- Abra a pasta do carro no StudioSolte a pasta com o .yft, o _hi.yft, o .ytd e os metas. O carro aparece em 3D e a ficha do veículo mostra o handling casado.
- Confira se a lataria é vehicle_paint1O painel de livery-ready diz se existe lataria convertível. Carro que já é paint3 não precisa de conversão.
- Converta para livery-readyUm clique troca o shader da lataria, adiciona a textura de livery ao .ytd e confere a física byte a byte contra o original.
- Baixe o gabarito UVO PNG de 2048 px traz as arestas da lataria. Ele é a referência de onde cada parte do carro cai na imagem.
- Pinte a arte numa camada acima do gabaritoEsconda a camada do gabarito antes de exportar e salve em PNG com transparência, para a cor do carro aparecer no que ficar vazio.
- Substitua a textura de liveryTroque a textura sign_1 pela sua arte no Studio ou no Editor e confira o resultado no modelo em 3D antes de salvar.
- Gere o add-on e teste no servidorO add-on sai com a flag de livery e o índice 0 liberado. Instale, spawne o carro e selecione a livery em jogo.
Como ativar a livery no jogo
Converter o shader deixa o carro capaz de mostrar livery. Falta dizer ao jogo que ele tem livery, e isso é meta.
- vehicles.meta. A flag
FLAG_HAS_LIVERYprecisa estar na lista de flags do veículo. - carvariations.meta. Cada cor do carro tem um bloco
<liveries>com uma entrada por índice. A livery que você quer liberar precisa estar como verdadeira.
Quando o add-on é gerado pelo Studio depois da conversão, os dois ajustes já saem prontos: a flag entra no vehicles.meta e a livery 0 fica liberada em todas as cores. A anatomia completa do resource está no guia do add-on de veículo.
No jogo, a livery é selecionada por índice. Qualquer script de garagem ou de customização que já mexe com livery funciona, porque o sistema é o nativo.
Erros comuns
- A livery não aparece em nenhuma peça. Quase sempre o shader da lataria não foi convertido, ou o meta não libera o índice que você está pedindo.
- Aparece só em parte da lataria. As outras peças usam outro shader. É comum para-choque e moldura escura ficarem fora.
- Fica espelhada de um lado. Característica do mapeamento UV do modelo. Resolve na arte, usando elemento simétrico ou versão espelhada do texto.
- Cobre vidro ou farol. O slot está apontando para a textura errada, ou a arte invadiu região do mapa que pertence a outra peça.
- Desaparece de longe. Detalhe fino se perde nos níveis reduzidos da textura. Aumente o traço e o contraste.
- O carro ficou pesado depois da livery. Arte em resolução de pôster custa memória. O guia do carro pesado mostra a conta.
Perguntas frequentes
Dá para colocar livery em qualquer carro?
A conversão muda o handling ou a colisão?
Quanto custa deixar o carro livery-ready?
Deixe o carro pronto para receber skin
Solte a pasta do veículo, converta a lataria e baixe o gabarito UV para pintar. Já tem um carro com livery e só quer trocar a arte? Dá para trocar a textura no Editor.