How To Create FiveM MLOs – Complete Tutorial | FiveMX
Um guia passo a passo para construir, exportar, empacotar, testar, otimizar e enviar Cinco MLOs com Blender, Sollumz, CodeWalker e OpenIV, além de solução de problemas, controle de qualidade e orçamentos de desempenho.
TL;DR: Você configurará ferramentas (Blender + Sollumz, CodeWalker, OpenIV), modelará um interior com topologia e densidade de texel adequadas, criará colisões (YBN), portais/salas/oclusões (YTYP), exportará com Sollumz, empacotará um recurso com um
fxmanifest.lua, valide no jogo e atinja orçamentos de desempenho usando o Resmon.
Para quem é este guia
Criadores que querem pronto para produção Interiores FiveM (MLOs) com desempenho sólido e design limpo. Você deve estar familiarizado com os conceitos básicos do Blender e com a execução de um servidor FiveM localmente.
Antes de começar: ferramentas e downloads
Obrigatório
- Liquidificador (3.x ou mais recente): https://www.blender.org/download/
- Sollumz (Complemento do Blender para formatos RDR2/GTAV): https://github.com/Skylumz/Sollumz
- Caminhante de código (editor de mapas / YTYP / ferramentas do portal): tópico GTAForums → https://gtaforums.com/topic/915149-codewalker-gtav-interactive-3d-map/
- Aberto IV (exploração de ativos, caminhos de textura): https://openiv.com/
- Documentação FiveM (manifesto de recurso, streaming): https://docs.fivem.net/
É bom ter
- Código do Visual Studio para editar manifestos.
- Editor de imagens (Photoshop, Affinity, GIMP) para texturas.
Nota de licenciamento: Respeite as políticas da Rockstar/Cfx e as licenças de terceiros. Não redistribua recursos proprietários do jogo além do permitido.
Início rápido (visão geral de 10 minutos)
- Instalar Liquidificador + Sollumz e habilite o complemento.
- Crie uma nova cena em metros (1 unidade do Blender = 1 metro). Importe malhas de referência, se necessário.
- Modele seu interior de forma modular; mantenha a densidade do texel consistente; evite rostos invisíveis.
- Criar malhas de colisão (primitivos simples) e marcá-los para exportação YBN.
- Em Caminhante de código, definir salas/portais/oclusores e gerar YTYP entradas.
- Exportar com Sollumz → YDR/YDD/YBN/YTYP, se for caso disso.
- Construir um pasta de recursos com
fluxoe umfxmanifest.lua. - Adicionar recurso a
servidor.cfg, iniciar servidor, validar no jogo. - Perfil com Resmon; consertar vazamentos, excessos e materiais pesados.
Olha, eu já estive nessa situação.
Você está andando pelo seu servidor e vê um prédio que seria o perfeito Você se depara com um local que poderia ser uma oficina mecânica ou um esconderijo secreto de um cartel, e chega à porta… e nada. Apenas uma textura plana. Uma porta falsa. Isso te deixa louco, não é?
Essa sensação é exatamente o motivo pelo qual comecei a criar MLOs (Objetos de Carregamento de Mapas). Eu só queria abrir aquela maldita porta.
Mas aí eu abri os tutoriais e, de repente, todo mundo estava falando sobre "pintura de vértices", "ytyps" e "portais", e sinceramente, eu quase desisti ali mesmo. Parecia que eu precisava de um diploma em arquitetura só para colocar uma caixa em um videogame.
Então, respire fundo. Pegue um café (ou um Red Bull, sem julgamentos). Vou explicar isso do jeito que eu gostaria que alguém tivesse me explicado: de forma confusa, imperfeita, mas compreensível.
Veja como começar a criar interiores para o FiveM.
O Kit de Ferramentas (Não pule esta parte)
Não dá para construir uma casa sem um martelo. Para os interiores do GTA V, você precisa de um conjunto específico de ferramentas. É chato configurar tudo, eu sei, mas você só precisa fazer isso uma vez.
- Liquidificador: O padrão da indústria para modelagem 3D. É gratuito. Pode parecer intimidante no início, mas precisamos apenas de uma fração de tudo o que ele é capaz de fazer.
- Sollumz: Este é um plugin para o Blender. Pense nele como um tradutor. O Blender fala "3D", mas o GTA V fala "Rage Engine". O Sollumz traduz seu modelo para que o jogo o entenda.
- CodeWalker: O editor de mapas. Você usará isso para posicionar seu edifício no mundo e dizer ao jogo: "Ei, isto é um interior."
- Aberto IV: Você provavelmente já tem isso. É o gerenciador/visualizador de arquivos.
Um breve aparte: Se você ainda não instalou o Sollumz, faça isso primeiro. Há inúmeros vídeos no YouTube ensinando como instalá-lo. Vou esperar aqui.
Etapa 1: A “Casca” (Construindo a Caixa)
Ok, então um MLO não é apenas um cômodo. É uma estrutura básica.
Imagine que você está construindo uma casa de bonecas. Você tem as paredes externas (o prédio que você vê da rua) e o cômodo interno.
- Abra o Blender. Exclua esse cubo padrão. (É tradição. Desculpe, cubo.)
- Importe o modelo original: Se você estiver modificando um prédio existente do GTA, precisará importá-lo usando o Sollumz para saber onde cortar o buraco para a porta.
- Faça o furo: Apague literalmente os rostos onde a porta deveria estar.
- Modele o ambiente: Crie uma caixa simples atrás desse buraco. Não se preocupe com muitos detalhes ainda. Faça apenas um piso, paredes e um teto.
O problema da camisa "do avesso"
Eis algo que me fez arrancar os cabelos por uma semana: Pessoas normais.
Em 3D, uma parede só tem um lado. Se a "Normal" (a face frontal) estiver apontando para fora e você estiver dentro da sala, a parede ficará invisível. Você precisa garantir que as linhas azuis (normais) estejam apontando para dentro da sala.
Se você entrar no jogo e suas paredes estiverem invisíveis, o problema está nas suas normais. Sempre são as normais.
Etapa 2: Texturização (Pintura das Paredes)
Você não pode simplesmente deixar cinza. GTA detesta modelos sem textura.
No Blender/Sollumz, você aplica shaders. Normalmente, você usará shaders padrão do GTA (como gta_padrãoVocê mapeia uma textura — como uma parede de tijolos ou um piso de concreto — para sua malha.
Dica profissional: Keep your textures “Powers of Two.” $512 times 512$, $1024 times 1024$, etc. If you try to use a $500 times 500$ image, the game will throw a fit and crash. I learned that the hard way.
Etapa 3: A parte assustadora (Portais)
Essa é a parte que deixa todo mundo confuso.
UM Portal É basicamente uma cortina invisível. Ela diz ao motor do jogo: “Quando o jogador olhar por esta porta, comece a renderizar o interior da sala. Quando ele sair, pare de renderizar para economizar memória.”
Sem portais, você fica com o "vazio". Sabe, quando você olha através da porta e parece que está encarando o Inferno Azul debaixo do mapa? Pois é.
Em Sollumz, criar um portal envolve:
- Selecionando os vértices da sua porta.
- Criar um “ID de Sala” para o exterior (Limbo) e um “ID de Sala” para o interior (Sala 1).
- Conectando-os.
Imagine como uma câmara de descompressão em uma nave espacial. Você precisa selar a transição entre o "Mundo Exterior" e o "Espaço Interior".
Etapa 4: A Exportação e o “YTYP”
Assim que seu modelo estiver pronto, você o exporta como um .jardas (desenhável) e um .ybn (colisão). Mas o jogo ainda não sabe que ela existe.
Você precisa de um .ytipo arquivo. Isso é basicamente um manifesto — uma lista — que diz ao GTA: "Eu tenho um novo objeto, este é o seu nome e estas são as suas propriedades."
- Abra o CodeWalker.
- Criar um novo YTYP.
- Adicione seu novo modelo através da definição de arquétipo MLO.
- É aqui que você define os sinalizadores MLO.
Sinceramente? Na primeira vez que você fizer isso, não vai funcionar. Simplesmente não vai. Você vai entrar no jogo, caminhar até o seu prédio e cair pelo chão. É um rito de passagem.
Geralmente significa seu Colisão (.ybn) Não está alinhado com seu modelo visual. Ou você se esqueceu de ativar a opção "Colisão Incorporada" nas configurações de exportação do Sollumz. Marque essa caixa.
Etapa 5: Colocando no Mundo (YMAP)
Último passo. Você tem o objeto. Agora precisa posicioná-lo.
No CodeWalker:
- Abra o projeto.
- Criar um novo .ymap.
- Coloque seu novo objeto MLO exatamente onde ele se encaixa no mapa.
- Salve tudo.
Uma última reflexão
Estou tentando dar a impressão de que é algo linear, mas na verdade é bem complicado. Você vai passar horas corrigindo uma textura de luz piscando ou tentando descobrir por que está chovendo dentro da sua sala de estar (isso é um problema de "Oclusão", mas vamos deixar isso para outro dia).
Comece pequeno. Sério. Não tente construir uma delegacia de polícia como seu primeiro projeto. Construa uma caixa de verdade com uma porta. Quando você conseguir entrar nessa caixa sem cair pelo mundo, você será oficialmente um desenvolvedor de MLO.
A sensação de entrar em uma sala você Construir um espaço e ver seus amigos jogando RPG em um lugar que não existia ontem? Essa é a melhor sensação do mundo. Vale a pena o esforço.
O que você deve fazer agora?
Você precisa sujar as mãos.
Você gostaria que eu o orientasse sobre as configurações específicas de instalação do plugin Sollumz no Blender, ou devemos nos concentrar em solucionar um erro específico que você já está enfrentando?
Dicas para criar MLOs
- Escala: Trabalhe em metros. Portas com ~2,0–2,2 m de altura; balcões com ~0,9 m; escadas com ~0,17 m de altura.
- Coleções:
INT_MLO,COLISÕES,LUZES,ADEREÇOS_ESTÁTICOS,ADEREÇOS_INSTANCED. - Nomeação:
int_shop_main_wall_A,piso_de_coluna_A,porta_dos_fundos_A. Prefixos consistentes economizarão horas depois. - Pivô/origem: Defina origens significativas (dobradiças para portas), aplique transformações (Ctrl‑A) antes de exportar.
Melhores práticas de modelagem e topologia
- Modular:Construir paredes/pisos/tetos como módulos para reutilização e manutenção.
- Topologia: Dê preferência aos quadríceps, mantenha o fluxo das bordas limpo e evite loops supérfluos.
- Densidade de Texel: Alvo ~512–1024 px/m para superfícies de heróis; 256–512 px/m para o fundo.
- Folhas de acabamento e atlas: Reduzir a contagem de materiais; agrupar os adereços em atlas.
- Elimine rostos ocultos: Exclua geometria invisível (atrás de paredes, sob pisos) para reduzir o overdraw.
Materiais, texturas e iluminação
- PBR: Use BaseColor/Roughness/Metallic/Normal. Mantenha poucos materiais (≤ 8 para interiores pequenos).
- Tamanhos de textura: Prefira 1k–2k; evite 4k massivos, a menos que seja absolutamente necessário. Use BC7 ou DXT quando aplicável.
- Emissivos: Para placas/LEDs; mantenha uma intensidade razoável para evitar problemas de brilho.
- Iluminação assada: Mapas de luz opcionais podem estabilizar a aparência do interior em qualquer hora do dia.
- Reutilize baunilha: Com o OpenIV, faça referência a texturas/shaders existentes quando a licença permitir.
Colisões (YBN)
- Usar primitivas de baixo polígono (caixas/cilindros) para aproximar superfícies transitáveis e bloqueadores.
- Coleta separada de colisões (
COLISÕES) e manter os nomes alinhados (por exemplo,parede de colisão A). - Portas/janelas que não devem passar: certifique-se de que a colisão cubra a abertura ou seja alternada com a lógica da porta.
- Armadilha comum: colisões de alto nível de detalhes causam problemas de física —simplificar.
Salas, portais, oclusão e YTYP
- Quartos: Espaços lógicos (loja, sala dos fundos, corredor) com portais nas portas.
- Portais: Portões de visibilidade; impedem a renderização de salas que você não pode ver.
- Oclusores: Grandes superfícies que bloqueiam a renderização atrás delas (por exemplo, paredes sólidas).
- YTYP: Define arquétipos, distâncias de nível de detalhe, links de salas/portais.
- Em Caminhante de código: atribuir salas, colocar portais, adicionar oclusores, gerar YTYP. Validar com as ferramentas de visualização do CW (cores da sala, linhas do portal).
Exportando com Sollumz
- Instale a partir do GitHub, habilite o complemento nas preferências do Blender.
- Atribuir Shaders Sollumz e exportar sinalizadores conforme necessário.
- Verificar escala e rotações são aplicados (Ctrl‑A) antes da exportação.
- Destino(s) de exportação:
- YDR/YDD para modelos desenháveis / drawables com esqueletos.
- YBN para colisões.
- YTYP para definições de arquétipo/sala/portal (geralmente finalizadas via CodeWalker).
Empacotando o recurso (fxmanifest)
Estrutura de pastas
[mlo-seuinterior] ├─ fxmanifest.lua └─ stream/ ├─ mlo_shop.ydr ├─ mlo_shop.ybn ├─ mlo_shop.ytyp └─ adereços/ └─ ...
Mínimo fxmanifest.lua
fx_version 'cerulean' jogo 'gta5' nome 'mlo-yourinterior' descrição 'Custom MLO: YourInterior' versão '1.0.0' arquivos { 'stream/*.ytd', 'stream/*.ydr', 'stream/*.ydd', 'stream/*.ybn', 'stream/*.yft', 'stream/*.ytyp', 'stream/props/*' } -- Garante que os YTYPs sejam carregados this_is_a_map 'yes'
Configuração do servidor
Adicionar ao seu servidor.cfg:
garantir mlo-yourinterior
Veja a documentação oficial para manifestos e streaming: https://docs.fivem.net/docs/scripting-reference/resource-manifest/resource-manifest/
Lista de verificação de validação no jogo
- ☐ Teletransporte-se para o interior; verifique altura de desova e sem cair do chão.
- ☐ Ande por todos os cômodos; verifique as passagens das portas; não paredes invisíveis.
- ☐ Dê uma olhada em cada um portal; confirmar os trabalhos de seleção de renderização.
- ☐ Verificar Luta Z nas interseções de parede/acabamento.
- ☐ Ciclo hora do dia; confirme se a iluminação/emissivos parecem naturais.
- ☐ Fique em cada sala; gire a câmera 360°; observe Resmon picos.
- ☐ Teste com 3–10 jogadores; observe o desempenho da rede e do cliente.
Orçamentos de desempenho e Resmon
Alvos típicos para uma MLO pequena/média:
- Materiais: ≤ 8–12 materiais exclusivos.
- Chamadas de sorteio: mantenha-se baixo por meio de instâncias e atlas.
- Texturas: principalmente 1k–2k; atlas quando possível.
- Tamanho do fluxo: mirar ≤ 30–80 MB por MLO (dependente do contexto).
- Portais: adicione o suficiente para isolar os cômodos, mas não em excesso.
Criação de perfil
- Usar Resmon (
F8 → resposta 1) para verificar CPU/MS e memória. - Alterne interiores, oculte acessórios para isolar gargalos.
- Se aparecerem picos ao olhar para uma porta, revisite portais/oclusores.
Para um manual de ajuste mais amplo em todo o servidor, consulte Otimizar o desempenho em FiveMX → /fivem-otimização-do-servidor/.
Solução de problemas
| Sintoma | Causa provável | Consertar |
|---|---|---|
| Queda no chão | Ausente/deslocado YBN | Alinhar colisão para renderizar malha; aplicar transformações; reexportar YBN |
| Veja outros cômodos através das paredes | Ausente/incorreto portal/oclusor | Defina salas corretamente no CodeWalker; adicione oclusores; atualize YTYP |
| Malhas pretas/invisíveis | Problema com caminho de shader/textura | Use o shader Sollumz correto; verifique os caminhos de textura; garanta que os YTDs estejam presentes |
| Cintilante (Z-fighting) | Faces coplanares | Deslocar ou mesclar faces; ajustar a espessura do corte |
| Tanque FPS voltado para a porta | Sobressalto devido à abertura do portal | Redimensionar/realinhar portal; adicionar oclusores; simplificar materiais |
| Jogador de bloqueio de portas | Sobreposições de colisão | Editar YBN para limpar a passagem; separar o colisor de portas |
| Emissivos muito brilhantes | Intensidade/mapeamento de tons | Valores emissivos mais baixos; evite spam branco puro/emissivo |
Perguntas frequentes
Preciso de uma colisão (YBN) para cada malha?
Não. Somente para caminhável ou interativo superfícies. Os elementos decorativos podem permanecer sem colisão.
Quantos portais um interior deve ter?
O suficiente para dividir salas/corredores lógicos e bloquear a renderização entre salas — normalmente uma por porta/abertura.
Posso reutilizar texturas do GTA V?
Muitas vezes sim para uso no jogo, mas não redistribua ativos além dos termos permitidos. Verifique os caminhos e licenças do OpenIV.
Meu YTYP não carrega.
Verifique a listagem dos arquivos de manifesto, os nomes dos arquivos e certifique-se este_é_um_mapa 'sim' está definido.
Qual versão do Blender funciona melhor com o Sollumz?
As versões atuais 3.x são comumente usadas; confirme a compatibilidade no Sollumz GitHub.
Recursos e leituras adicionais
- Documentação FiveM (manifestos de recursos, streaming): https://docs.fivem.net/
- Sollumz (GitHub): https://github.com/Skylumz/Sollumz
- Caminhante de código (Tópico e compilações do GTAForums): https://gtaforums.com/topic/915149-codewalker-gtav-interactive-3d-map/
- Aberto IV: https://openiv.com/
- Modificações do GTAV (wiki geral): https://gtamods.com/wiki/Main_Page
O que vem a seguir? (Links internos e CTAs)
- Navegar pelos MLOs → /fivem-mlos/ (Exemplos, inspiração e mapas prontos para uso.)
- Guia dos Melhores MLOs → /mlo/ (Seleções selecionadas, prós/contras, notas de desempenho.)
- Otimize seu servidor → /fivem-otimização-do-servidor/ (Uso do Resmon, dicas de streaming de ativos.)
- Precisa de ajuda para mapear? → Entre em contato com FiveMX (interiores personalizados, avaliações de otimização).
Copiar e colar ativos (inicializador opcional)
Coloque-os no seu projeto como base e personalize-os.
Iniciante fxmanifest.lua (estendido)
fx_version 'cerulean' jogo 'gta5' nome 'mlo-yourinterior' autor 'YourName @ FiveMX' versão '1.0.0' this_is_a_map 'yes' arquivos { 'stream/**.ytd', 'stream/**.ydr', 'stream/**.ydd', 'stream/**.ybn', 'stream/**.yft', 'stream/**.ytyp' }
Coleções recomendadas (Blender)
INT_MLO ├─ ESTRUTURA ├─ ADEREÇOS_ESTÁTICOS ├─ ADEREÇOS_INSTANCED ├─ LUZES └─ COLISÕES
Créditos:Agradecimentos aos mantenedores do Sollumz, CodeWalker e da documentação do Cfx.re por suas excelentes ferramentas e documentação.






