Modelo LOWPOLY para games

Trabalhos de modelagem de objetos com baixo número de polígonos ("low-poly") para uso em games.

Modelo LOWPOLY para games

Mensagempor mcunha98 » Ter Dez 27, 2005 8:24 pm

Bom gente, to criando um modelo lowpoly para depois tentar fazer ele ser carregado em um game.

Perguntas:

1) Use Virtual Mirror, na hora de exportar, só vai um lado ou os dois ?
2) É necessário dar smooth no modelo para dai exportar ?
3) A julgar pela quantidade de poligonos deste modelo, o trabalho vai ficar pesado ou leve ?

Imagem
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor Fonte Boa » Ter Dez 27, 2005 8:44 pm

Movi seu tópico para a sala correta, ok?!

(1) O Wings freeza automaticamente o Virtual Mirror ao exportar, ou seja, vão os dois lados.
(2) Você NÃO DEVE dar o smooth se seu objetivo é mandar para um game. Posso estar redondamente enganado, mas acho que não.
(3) Não sou expert, mas acho que ainda vai ficar pesado.

comentários sobre a topologia:
E eu achando que você não sabia o que eram edge loops! :oops: Ficou ótimo!

Minhas perguntas sobre o modelo:
(a) qual o objetivo daqueles cortes estranhos no rosto?
(b) porque aquelas edges em hard?

Minhas perguntas sobre a rotina:
(a) onde você vai carregar o modelo?
(b) qual o formato que você vai usar?
(c) parece que os games automaticamente "triangularizam" tudo? é verdade?

ps: Ah! Descobriu quantas faces tem seu modelo, hein??!!! :twisted:
Fonte Boa
Avatar do usuário
Fonte Boa
Administrador
Administrador
 
Mensagens: 2226
Registrado em: Seg Mai 31, 2004 11:58 pm

Mensagempor mcunha98 » Ter Dez 27, 2005 10:04 pm

Grande Fonte !!!!

Bom, primeiramente obrigado pelos elogios, é a primeira vez que vejo um elogio para um pequeno e modesto trabalho meu... :oops:

Seguem as respostas...

Minhas perguntas sobre o modelo:
(a) qual o objetivo daqueles cortes estranhos no rosto?
Simular volume de cabelo e ajudar na definição e pintura do rosto
(b) porque aquelas edges em hard?
Para dar maior definição nas botas e luvas

Minhas perguntas sobre a rotina:
(a) onde você vai carregar o modelo?
Estou apanhando, mas como persistente que sou, para carregar através do OGRE3D o modelo estático
(b) qual o formato que você vai usar?
O Ogre possui exportadores para formato próprio (.mesh) inclusive com base no padrão .wings
(c) parece que os games automaticamente "triangularizam" tudo? é verdade?
Sinceramente ? Depois te conto

Link do exporter do ogre:
http://www.ogre3d.org/index.php?option= ... t=category
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor Fonte Boa » Ter Dez 27, 2005 10:34 pm

OGRE3D:
fala mais disso aí, que para mim é grego!
:oops:
Fonte Boa
Avatar do usuário
Fonte Boa
Administrador
Administrador
 
Mensagens: 2226
Registrado em: Seg Mai 31, 2004 11:58 pm

Mensagempor mcunha98 » Ter Dez 27, 2005 11:14 pm

Bom vamos do começo.

Algumas linguagens de programacao utilizam objetos externos (pequenos programas criados por outras pessoas em forma geralmente de dlls) que dao poder a uma dada linguagem de programacao e por consequencia ao programa que esta sendo escrito.

Em Delphi temos os bpl (borland package)
Em Visual Basic temos activex (arquivos ocx, tlb e dll)
Em C++ e C# temos SDK (software development kit), que sao dlls geralmente
E assim vai para cada linguagem...

Ogre3D é um SDK poderosissimo (se nao o mais poderoso), porem ele eh somente para pessoas de conhecimento no minimo medio (fazer uma janela aparecer eh uma verdadeira avetura). Como SDK, o Ogre3D prove ao usuario dele, um framework (conjunto de rotinas, funcoes, objetos,etc...) bem completo para gerenciamento de janelas, objetos, mapas, meshes, etc...

Eu estou tentando usar a versao portada dele para C# (linguagem C++ recentemente lancada pela M$), que eh o RealmForge, assim que conseguir os primeiros resultados, vou comecar a tentar importar o objeto .wings para dentro do Ogre atraves de seus exporters especificos.
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor cara-rj » Qua Dez 28, 2005 8:41 am

A quantidade de polígonos está baixa, isso é uma coisa boa.
Você ainda está pensando na topologia da malha para receber Smooth, que não é o correto.
Tente definir o personagem só pela malha normal (sem smooth) e sem hard edges.
Na minha opinião está sobrando edges onde não precisa (pernas e braços).
Para o cabelo costuma-se extrudar planos, mas o Wings não suporta tal função.

E evite usar N-gons (gola e ombros). Sempre olhe como está ficando a malha triangulada, para não ter surpresas na hora de visualizar o modelo na engine.
Carlos Felipe - Rio de Janeiro - RJ - Brasil
Avatar do usuário
cara-rj
Sênior
Sênior
 
Mensagens: 747
Registrado em: Qua Jun 02, 2004 12:50 am
Localização: Rio de Janeiro - RJ

Mensagempor Fonte Boa » Qua Dez 28, 2005 8:47 am

Aleluia! Até que enfim os que entendem do assunto começaram a conversar! :bom:
Agora vou ver o que consigo aprender,
mesmo sem saber porcaria nenhuma de programação! :grin:

Este tópico vai ficar bom!

Um pedido:
na medida em que for puxando o modelo,
seja na engine, seja no próprio game,
poste também umas telas para matar a minha curiosidade,
por favor! :shock:
Fonte Boa
Avatar do usuário
Fonte Boa
Administrador
Administrador
 
Mensagens: 2226
Registrado em: Seg Mai 31, 2004 11:58 pm

Mensagempor mcunha98 » Qua Dez 28, 2005 8:56 am

Cara-Rj

Muito obrigado pelas opiniões e críticas, gosto de discutir trabalhos aqui pois sei o quanto a opinião de pessoas mais experientes valem a pena para melhorar o resultado do trabalho.

Fiz observações para cada um de seus comentários, agradeço se puder responder aqueles que ainda me deixaram dúvida...

A quantidade de polígonos está baixa, isso é uma coisa boa.
Eu particularmente ainda acho que está alto

Você ainda está pensando na topologia da malha para receber Smooth, que não é o correto.
É verdade, porém se não vai haver smooth do resultado final, isso significa que preciso adicionar mais edges ao modelo (principalmente parte do torax e etc...)

Tente definir o personagem só pela malha normal (sem smooth) e sem hard edges.
Sem hard edges também ? Nossa mãe, mas vai ficar bem quadrado mesmo o modelo !

Na minha opinião está sobrando edges onde não precisa (pernas e braços).
Poderia anotar na imagem quais são os edges desnecessários na sua opinião ?

Para o cabelo costuma-se extrudar planos, mas o Wings não suporta tal função.
Foi basicamente o que fiz, extrudei linhas na cabeça de maneira a formar o cabelo de maneira bem basica mesmo...

E evite usar N-gons (gola e ombros).
Não entendi, dá para explicar melhor ?

Sempre olhe como está ficando a malha triangulada, para não ter surpresas na hora de visualizar o modelo na engine
Nesta semana ainda se tudo correr bem, pelo menos o modelo dentro do engine eu vou conseguir ver, to estudando bastante para isto
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor mcunha98 » Qua Dez 28, 2005 9:02 am

Fonte Boa escreveu:Aleluia! Até que enfim os que entendem do assunto começaram a conversar! :bom:
Agora vou ver o que consigo aprender,
mesmo sem saber porcaria nenhuma de programação! :grin:

Este tópico vai ficar bom!

Um pedido:
na medida em que for puxando o modelo,
seja na engine, seja no próprio game,
poste também umas telas para matar a minha curiosidade,
por favor! :shock:



Fonte,

Pode ficar tranquilo, que vou postar imagens sim.
Vou ser sincero contigo e com todos aqui, no momento eu estou experimentando engines e sdk's, pois cada qual tem seu monte de benefícios e também tem um monte de complicações.

Para você ter idéia, eu quero chegar o mais próximo possível de montar algo que seja multiplataforma, e para isto vou usar engines que propiciem isto, porém a simples tarefa de INSTALAR um SDK e fazê-lo funcionar com o compilador (seja Dev-Cpp, Microsoft Visual C++ ou até mesmo o meu preferido que é o Microsoft Visual C#) é uma aventura que só algumas pessoas se aventuram (coisa de nerd mesmo). :neutral:

Em breve posto imagens...
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor mcunha98 » Qua Dez 28, 2005 10:48 am

Aproveitando que o assunto está quente...
1) Existe algum usuário de wings aqui deste fórum que já animou modelos em alguma ferramenta (preferencialmente MilkShape) e possa ajudar ?

2) Eu usei o Blender há alguns meses atrás para fazer a animação de um modelo, mas meu Deus, eu não consegui chegar a conclusão alguma (consultei vários tutoriais e o site Prcedural, mas realmente não consegui fazer nada de bom). Alguma indicação à respeito ?

Modelar bem ou mal, até me viro, agora animação realmente é uma praia a ser descoberta por inteiro, as coisas que fiz não deram resultado nenhum infelizmente. :neutral:
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor cara-rj » Qua Dez 28, 2005 8:58 pm

Como você pediu, vão algumas alterações:
Imagem

O joelho não precisa ser extrudado.
Os dedos das mão não precisam receber muitos loops.

Animação só fiz no Blender, assim como alguns modelos para low-poly (seriam usados na própria engine dele), então não posso ajudar com o MilkShape.
Carlos Felipe - Rio de Janeiro - RJ - Brasil
Avatar do usuário
cara-rj
Sênior
Sênior
 
Mensagens: 747
Registrado em: Qua Jun 02, 2004 12:50 am
Localização: Rio de Janeiro - RJ

Mensagempor mcunha98 » Qui Dez 29, 2005 8:48 pm

Olha gente, não sou político não, mas o que eu prometo, eu cumpro !!! :grin:

Brincadeiras a parte, aqui está uma tela pra provar que o Wings pode sim exportar seus modelos sem problemas para game engines. Bom, para minha surpresa, foram somente 20 minutos de código para chegar no resultado abaixo (não estrenhem a tela verde por favor).


Imagem
Imagem

Se é que alguém vai se interessar pelo código fonte em C# usando IRRLICHT ai vai, para se ter uma idéia básica...

Código: Selecionar todos
using System;
using System.IO;
using System.Collections.Generic;
using System.Text;
using Irrlicht;
using Irrlicht.Video;
using Irrlicht.Core;
using Irrlicht.Scene;

namespace aron
{
    class game
    {
        [STAThread]
        static void Main(string[] args)
        {
            IrrlichtDevice m_device = new IrrlichtDevice(DriverType.OPENGL);
            IAnimatedMesh m_mesh = m_device.SceneManager.GetMesh("c:\\aron1232.3ds");
            if (m_mesh == null)
            {
                Console.WriteLine("Mesh não carregado !");
                return;
            }
            m_device.SceneManager.AddAnimatedMeshSceneNode(m_mesh, null , -1);

            Console.WriteLine("Tipo de mesh...:" + m_mesh.MeshType.ToString());
            ICameraSceneNode m_cam = m_device.SceneManager.AddCameraSceneNodeFPS(null, 100, 100,-1);
            m_cam.Position = new Vector3D(0, 0, 0);

            m_device.CursorControl.Visible = true;
            m_device.WindowCaption = "Inicializando...";
            int m_fps = 0;
            while (m_device.Run())
            {
                if (m_device.WindowActive)
                {
                    m_device.VideoDriver.BeginScene(true, true, new Color(0, 100, 120, 100));
                    m_device.SceneManager.DrawAll();

                    if (m_fps != m_device.VideoDriver.FPS)
                    {
                        m_fps = m_device.VideoDriver.FPS;
                        m_device.WindowCaption = "(" + m_fps.ToString() + " fps) Wings3D Model em C# com IrrLicht";
                    }
                    m_device.VideoDriver.EndScene();
                }
            }
            m_device.CloseDevice();
        }
    }
}


O próximo passo é tentar, nem que sejam beeem basico, animar ele no blender ou milkshape (bem que alguem podia me ajudar né ?!) e dai voltar ao código e tentar movimentar ele...

PS.: fala a verdade Fonte, tú não achava que ia ser tão rápido né ??? :mrgreen:
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor RMoura » Qui Dez 29, 2005 9:05 pm

Parabéns Maurício

Estás a aventurar-te por un campo que eu gostaria de aprofundar o próximo ano, que é programar com a SDK do OGRE3D, a partir de low polys criados no wings. Eu não conheço muito bem o OGRE3D, mas sei que tem um importador para Blender, desconhecendo se este importador também reconhece as animações no modelo, ou apenas o próprio modelo. No entanto o Blender possui armaduras para animar o modelo em causa.
que a força wingeriana esteja convosco

Rui Moura
Avatar do usuário
RMoura
Assíduo
Assíduo
 
Mensagens: 235
Registrado em: Seg Dez 27, 2004 3:40 pm
Localização: Sintra - Portugal

Mensagempor mcunha98 » Qui Dez 29, 2005 10:53 pm

Bom tive mais alguns progressos.
Dediquei 1 hora para ler um tutorial para trabalhar com animação do MilkShape, realmente é bem simples (claro depois que se entende :grin: ).
Mas preciso melhorar muuuuuuuuuito meu modelo para animar ele.
Imagem

Daí já que eu tava com a mão na massa, e estou super curioso, resolvi carregar um mapa padrão Quake III (BSP) para ver as escalas, realmente tem muito pra chegar perto (vejam na imagem que o modelo nem de perto esta próxima a escala desejada), o bom é que pode ser carregado o conteúdo de um pk3 (pra quem não sabe o que é, digamos que basicamente é o mapa com texturas e shaders para compor o ambiente além do objeto 3d compilado).
Imagem
Avatar do usuário
mcunha98
Master
Master
 
Mensagens: 841
Registrado em: Sex Ago 05, 2005 1:07 pm
Localização: Curitiba / PR

Mensagempor Fonte Boa » Sex Dez 30, 2005 6:56 am

Não consegui carregar a primeira imagem, Maurício!
Cara, tu tá indo rápido mesmo!
Vibro só de pensar a sua alegria quando viu aquele "fantasminha" (brincadeira) carregado ali no labirinto!! :grin:
Tá parecendo que a escala dele com a sua marca já estão ficando próximas (e vai depender de mais tentativas e erros você dominar a escala).

Parabéns mais uma vez!
Fonte Boa
Avatar do usuário
Fonte Boa
Administrador
Administrador
 
Mensagens: 2226
Registrado em: Seg Mai 31, 2004 11:58 pm

Próximo

Voltar para MODELAGEM LOW-POLY

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 3 visitantes

cron