Cursos e Bibliotecas Ver Mais

Galeria 3D1 Ver Mais

georgeluisnunes   Rio de Janeiro - AC
new   Belo Horizonte - MG
new   Belo Horizonte - MG
Ricardo 3D   Brasil - BA
Colli   Maringá - AC

Portfólios Ver Mais

rabellogp   São Carlos - SP - SP
netinho muniz   Itaperuna/RJ Brasil - RJ
Julio   ribeirão preto - sp - SP
ctato   Porto Alegre/RS - RS

3ds Max 2017 exportar com textura para Unity. Como fazer?

Por: jr2011  

Em: 29/09/2017 00:19

Eu criei um prédio onde cada lado e topo tem uma textura. Utilizei UVW Map em cada um dos lados com seus respectivos IDs e usei também o Multi/Sub-Object para texturizar. Por fim, colapsei tudo e exportei em FBX. Mas na hora de abrir esse FBX no Unity, só a textura da parte da frente do prédio fica bom, o resto fica zoado.

Como fazer para exportar com as texturas certas? Li alguma coisa relacionado a Render to texture e Unwrap, mas não faço ideia de como usar isso. Utilizo a versão 2017 do 3ds Max.

Desde já, agradeçoa a ajuda de todos.
Oi Jr, tudo bem?

Pelo que entendi você usou um UVW Map em cada lado do prédio com valor diferente no Map Channel de cada um.
Assim não vai funcionar nas Engines de Games porque elas usam o segundo canal de mapeamento para o Bake de iluminação por padrão, então, as texturas ficam no Channel 1 e o Lightmap no Channel 2, até pode mudar se quiser, pode colocar o Lightmap em outro canal, mas acho que vai dificultar a sua vida sem necessidade se fizer isso.

Você pode texturizar os objetos exatamente da mesma forma que texturiza no 3ds max, aplicando os UVW Maps com Map Channel 1 mesmo em todos e os IDs com Multi/Sub-Object para colocar um material diferente em cada lado.
Desta forma vai funcionar normalmente, mas é importante usar apenas material Standard dentro do Multi/Sub-Object para não dar mensagem de erro na exportação em FBX, também pode colocar as texturas no canal Diffuse que vai chegar já texturizado na Unity.

Porém, para obter um bom resultado na iluminação o mais importante de tudo é o segundo canal de mapeamento, o que é usado para arquivar o Lightmap criado com o Bake da iluminação.

As Engines podem criar este segundo canal automaticamente, mas é a mesma coisa que aplicar o Flatten Mapping do Unwrap UVW sem soldar depois as partes do mapeamento, então, fica muito recortado e os artefatos da iluminação aparecem justamente nas emendas do mapeamento, então, quanto menos emendas tiver, melhor será o resultado.

Portanto, o ideal é que depois que texturizar normalmente você colapse tudo em Poly e aplique o modificador Unwrap UVW, colocando 2 no Map Channel, depois precisa abrir a janela do Editor do Unwrap UVW, aplicar o Mapping > Flatten Map e soldar o máximo possível das partes, no final aplica o Tools > Pack UVs para organizar as partes do mapeamento na área útil da textura, como mostra a primeira imagem em anexo.

Por fim, colapsa tudo novamente em Poly e assim poderá exportar com qualidade para a Unity, lembrando de desmarcar a opção Generate Lightmap UVs na hora da importação para não criar o mapeamento automático no segundo canal e usar o que você importou do Max, como mostra a segunda imagem em anexo.

Assim ficará perfeito.

Note que, no mapeamento da textura no canal 1 você pode deixar faces sobrepostas sem problema como faz no Max e como está acontecendo no seu caso que aplicou diversos UVW Maps no mesmo objeto, você mesmo pode ver como está o mapeamento aplicando o Unwrap UVW e abrindo a janela do Editor, cada face do prédio vai estar sobre as outras faces.

Agora, no mapeamento do Lightmap (Channel 2) isso não pode acontecer, caso contrário, a sombra de um lado vai aparecer também do outro lado e a iluminação vai ficar cheia de defeitos, por isso que é importante usar o Unwrap UVW no segundo canal e aplicar o Pack UVs no final.


Sobre o Render To Texture, ele serve para fazer o Bake dos mapas, ou seja, serve para pegar cada lado do prédio e colocar lado a lado na área útil da textura como se tivesse mapeado e texturizado com o Unwrap UVW, mas você não precisa fazer isso com as texturas pois vai funcionar da forma que falei e ainda vai ter mais resolução na textura.

O Render To Texture também serve para embutir efeitos de iluminação diretamente nas texturas, então, antigamente quando não tinha GI nas Engines você podia aplicar o efeito de GI do Mental Ray ou do V-Ray diretamente nas texturas, dai precisava estar com o canal 1 bem mapeado também, mas hoje não precisa mais.

Outra função importante do Render To Texture é gerar mapas dos objetos para usar nas Engines, por exemplo, o mapa de Ambient Occlusion para adicionar mais detalhes no sombreamento, neste caso ele é importante para a Unity, pois o Lightmap fica muito grande se quiser um sombreamento refinado e pode conseguir isso com o mapa de AO no material dos objetos.

Não é difícil usar o Render To Texture, eu posso te ensinar se quiser, mas neste caso terá que modificar a forma de texturizar o prédio, vai precisar mapear o canal 1 com o Unwrap UVW, renderizar um Template e abrir o Template no Photoshop para encaixar a textura de cada lado do prédio na área que a respectiva malha ocupa no Template para depois gerar o mapa de AO, ou então fazer o Bake da textura como disse acima, mas eu prefiro ajustar manualmente no Photoshop.
Porém, como o prédio é reto e sem detalhes, o efeito de AO não vai fazer diferença, então, não vale a pena, mas num objeto detalhado faz muita diferença.

Abraços e tudo de bom.

André Vieira

André, muito obrigado mesmo pela sua resposta.

Vou te falar o que eu fiz.Esse prédio vai ser usado num jogo de plataforma 2,5D meio cartunesco, então ele não precisa ser bem detalhado. Cada lado do prédio tem um UVW Map pois cada um tem uma textura diferente (frente, lado esquerdo, lado direito e topo). As partes de trás e baixo não vão aparecer, então não tem problema como ficar. Se eu colocar todos os UVW Map no canal 1, as texturas vão ficar ruins. Eu realmente não queria aplicar o Unwrap, para justamente não perder o detalhamento das texturas.

Eu transformei tudo em Editable Poly e exportei em FBX. Continuou não dando certo. Aí vi que você falou para eu colocar tudo no Map Channel 1, mas pensei: "Como vou colocar se agora é tudo Editable Poly?". Então apliquei novamente um UVW Map, fui testando cada Mapping até que deu certo com Face. Exportei de novo e BINGO! Deu certo!

Obrigado pela sua ajuda, André! Sem seu direcionamento, eu não teria conseguido...

Oi Jr, tudo bem?

Vi que você também é um usuário bem antigo do site, fico muito feliz de saber que acompanha a gente durante tanto tempo, obrigado pela confiança.

Sobre o mapeamento do prédio, me desculpe sinceramente, pois esqueci de falar que precisa colapsar depois de aplicar cada UVW Map, caso contrário apenas o último será usado, eu ainda postei a imagem de exemplo com os 4 UVW Map que fiz rapidamente para te mostrar o mapeamento do Unwrap no canal 2, então, reforçou o erro, desculpe.

Na verdade basta aplicar dois UVW Map para mapear os 4 lados com Planar porque as faces da frente e de trás estão na mesma direção e as duas laterais também, se quiser pode aplicar o terceiro para o teto, mas sempre colapsando depois de cada UVW Map, porque assim o mapeamento dele ficará embutido na malha do objeto e você poderá aplicar o próximo sem afetar o anterior.

Deu certo com a opção Face porque o prédio tem apenas uma face de cada lado, se tivesse duas daria errado, então, vou te mostrar duas formas de mapear estas coisas sem ter problema:


Se quiser usar apenas UVW Map, converte o objeto em Mesh ou Poly, seleciona as faces da frente e de trás, aplica o UVW Map e veja se o Gizmo laranja dele está na posição certa em relação as faces selecionadas, se não estiver, clique em um dos eixos no painel do UVW Map como mostra a primeira imagem em anexo, um deles será a posição certa, quando encontrar é só clicar no botão Fit para ajustar a dimensão do Gizmo com as faces.

Depois, converte em Mesh ou Poly novamente ou usa o Collapse All do Edit Stack e seleciona as faces das laterais, aplica o UVW Map de novo, acerta o eixo, clica no Fit e colapsa mais uma vez para embutir o mapeamento na malha.


Para aplicar os materiais de cada lado, é só selecionar cada face e aplicar o mesmo ID do material, como mostra a segunda imagem em anexo, o ID que digitar no campo Set ID será aplicado nas faces selecionadas quando clicar no botão Set ID,
você também pode colocar o ID que desejar no campo do Select ID e clicar no botão Select ID para selecionar as faces que possuem esse ID.

No material Multi/Sub-Object tem os IDs em cada material, o que tiver ID 1 será aplicado nas faces com ID 1, o ID 2 nas faces com ID 2 e assim por diante.

Mas se quiser também pode criar os materiais normalmente sem o Multi/Sub-Object, selecionar as faces do objeto e arrastar o material para cima delas, assim, o Multi/Sub-Object será criado automaticamente e os IDs também.
Depois você pode pegar o Multi/Sub-Object do objeto com o conta gotas do material editor.


Ainda queria te mostrar como fazer com o Unwrap porque é muito mais prático e rápido.

Olha como é fácil, só precisa aplicar o Unwrap UVW, ativar o Sub-Object Polygon dele mesmo, como mostra a última imagem em anexo, depois você clica no Planar e pode ajustar os eixos igual no UVW Map, também tem o botão Fit para ajustar o tamanho do Gizmo com as faces, mas geralmente não precisa usar no Unwrap porque já ajusta automaticamente.
Depois basta desligar o ícone do Planar, selecionar as faces das laterais e clicar no Planar novamente, acertar o eixo e desligar o Planar, pronto, terá o mesmo resultado.

Abração e tudo de bom.

André Vieira









Oi, André. Obrigado mais uma vez pela sua atenção. Realmente, sou usuário antigo do site. Comecei com 3D ainda no DOS, com o 3D Studio R4 em 1998, mas nunca me aprofundei de verdade. Sempre começo a mexer e depois paro um bom tempo, mas dessa vez quero mergulhar nessa e não sair mais. Cheguei a trabalhar em algumas produtoras de vídeo e por conta própria fazendo CGI, mas nunca fui um especialista, entretanto quero mudar isso agora. Estou no 4º período do curso de desenvolvimento de Jogos Digitais e quero aproveitar meu (pouco) conhecimento e (muita) paixão por CG e games e trabalhar nisso por definitivo.

Eu optei por usar 4 UVW Maps pois cada um deles tem uma textura diferente e/ou offset e tiling diferentes. Apesar da textura da frente e do lado esquerdo ser a mesma, elas têm offset e tiling com valores diferentes, por isso optei por usar um UVW Map só para essa parede. A parede da direita também tem o UVW Map um pouco mais esticado no eixo vertical, pois acabei fazendo essa textura no Photoshop um pouco errada e "acertei" ela esticando ela no UVW Map dessa parede.

Vou tentar isso que você me ensinou.

Obrigado, mais uma vez, pela sua atenção.
Oi Jr, tudo bem?

Eu que agradeço pela sua participação aqui com a gente e fico feliz de saber que está fazendo um curso de desenvolvimento de Jogos Digitais, pois é uma área que está crescendo muito, mas principalmente porque é a coisa mais divertida do mundo.

Eu adorei estudar as Engines e até me empenhei na parte de programação porque é muito legal poder interagir com as coisas que você cria em 3D, não sei se você viu o vídeo do bugue que postei no fórum de dicas e grupos de estudo, modelei aquele bugue em 2000 ou 2001 por diversão no Max, agora, quase 20 anos depois eu consegui dirigir ele pra valer, é demais!

Eu também iniciei no 3D Studio R4 for DOS, bons tempos aqueles! rsrsrsrs

Sobre o mapeamento do seu prédio, realmente precisa usar um UVW Map para cada lado se vai fazer ajustes diferentes em cada um deles, mas tente fazer com o Unwrap para testar, é praticamente a mesma coisa, só que sem precisar ficar colapsando.
O Unwrap UVW será uma das ferramentas mais importantes para você na criação de objetos para Games no Max.

Qualquer coisa que precisar nos seus estudos e eu puder ajudar, estarei sempre à disposição.

Abração e tudo de bom.

André Vieira

Faça o login para poder comentar

Usuários conectados

Total de mensagens publicadas pelos membros da comunidade: 710589.

Total de membros registrados: 138055

Últimos membros registrados: DianaRCCastro, @muiladas, IvanClaudio, ADERSONS, elasticare, Acfabbri, MossTrimGummiesRezension, Diatea.

Usuário(s) on-line na última hora: 854, sendo 26 membro(s) e 828 visitante(s).

Membro(s) on-line na última hora: David Rodney, Duda, marcola, Ricardo Paranhos, Ronaldo, Henrique Ribeiro, Moura, ADERSONS, magster, DiogodaRosa, Acfabbri, th3one, JMDesign, DianaRCCastro, Gabriel.C, IvanClaudio, mauricio prisco, Thiago Couto, Vladis, Nuno, Fabrício, Reinaldo Silva, Le_Andro, billypaul, Diego Dneo, Marco Rocha.

Legenda: Administrador, Especial, Moderador, Parceiro .

3D1 © Três D1 © 1999-2024. Todos direitos reservados.