FórumGdH

Página Inicial do Guia do Hardware

Registrar FAQ Calendário Pesquisar Mensagens de Hoje Marcar Fóruns Como Lidos

Voltar   FórumGdH > Profissional > Programação, scripts, web e banco de dados
Bem-vindo ao FórumGdH
Não se esqueça de se registrar, é grátis . Nós temos 759.317 usuários, convidamos você fazer parte de nossa comunidade também! Se ainda não encontrou o que procura use nossa pesquisa. Esperamos que aprecie nosso trabalho.

Resposta
 
Opções do Tópico
Antigo 08-07-2007, 2:49   #1 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão Programando jogos com o XNA (com fotos)

Boa noite meus caros,

Criei este tópico para publicar mais um dos meus tutoriais, que acabo de finalizar. Desta vez é sobre a programação de jogos utilizando o Microsoft XNA ( antigo Managed DirectX ). Como escrevi no PDF, evitei de usar informações e rotinas muito complexas, já que minha intenção era criar um guia prático, puxando mais para a parte prática do que para a teoria.

O tutorial ensina basicamente como trabalhar com o XNA, desde a criação do projeto. Cobre a parte de modelagem, texturização e renderização de sólidos tridimensionais, gometria espacial, criação de câmeras e transformações de objetos ( deslocamento, rotação, etc... ).
A linguagem utilizada no tutorial foi a mesma escolhida pela Microsoft, o C# ( C Sharp ), mas é possível usar qualquer outra linguagem .NET, basta alterar a sintaxe.

Também disponibilizei o código fonte e todos os arquivos que usei durante o tutorial ( link incluso no PDF ). Espero que gostem ( e me perdoem por ter sido um tanto quanto "superficial" nas definições que pus no guia, mas como disse, não queria deixar o leitor quebrando a cabeça para decifrar "postulados e colorários" e tornar um guia de baixo nível ).
C&C são bem vindas, claro

Fotos:
http://www.hardware.com.br/comunidad...8/#post3072485

Link para download (~500KB ):
http://fergonez.net/files/guia_xna.pdf

Tags: guia microsoft xna tutorial

Abraço a todos,
Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática

Última edição por Fergo : 06-08-2007 às 23:44.
Fergo está offline   Responder com Quote
Antigo 08-07-2007, 14:51   #2 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Cara! Vc é o cara!!!

Muito massa o tutorial, vai me atrapalhar muito em meus projetos de banco-de-dados aqui. Mas eu quero mesmo é aprender a mexer com SDL, tenho noções de OpenGL e quero jogos multiplataforma.

Mas eu tenho que começar com o XNA para entender alguma coisa.
Assim como comecei com Delphi e hoje desenvolvo Sistemas de Banco de Dados em PHP que rodam em Browsers.
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Antigo 08-07-2007, 15:03   #3 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Obrigado philix.
XNA é uma ótima plataforma para começar, ela lhe dá o ponta-pé inicial e "explica" como as coisas funcionam nesse ramo da programação. Os conhecimentos que você aprende nela, mesmo sendo de um alto nível, vai ser útil para trabalhar com outras APIs de mais baixo nível ( DirectX e até mesmo o OGL ), pois a base e os fundamentos você já vai ter.

Abraços,
Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 09-07-2007, 14:30   #4 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Aí vai algumas fotos de uns testes que andei realizando. Utilizei o mesmo código contido no tutorial, com algumas pequenas modificações para gerar iluminação e specular ( mas ainda sem sombras )..
A mini cidade foi inteira modelada e texturizada no SkethUp ( pelo mesmo processo que há no tutorial ).

Visão geral:


Teste com specular ( não reparem o brilho na grama ):


Outra visão geral:



[]s,
Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 09-07-2007, 15:01   #5 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Ei,

fiz direitinho até o capítulo 7(2D), mas tá dando dois errros na linha que tem:

pass.Begin();
e
pass.End();

A msg é:
Citação:
Error 1 Only assignment, call, increment, decrement, and new object expressions can be used as a statement C:\Documents and Settings\Felipe\Meus documentos\Visual Studio 2005\Projects\MeuJogo\MeuJogo\Game1.cs
O código esta idêntico ao seu, são apenas esses dois erros.

Seu projeto compila direitinho, acho que faltou algo lá no editor de propriedades do effects.fx. Que diz?
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Antigo 09-07-2007, 15:08   #6 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Ninguém mais se interessou nesse post não foi? Deve ser pq eu conheço o XNA há muito tempo, mas só agora aprendi a usar com este tutorial basikão muito massa.

Mas vou usar o template do XNA só para entender como posicionar os comando e como criar classes para meus jogos em c++, OpenGL, SDL... posteriormente.

É chato demais programar em C Sharp. Vou aprender C++ quando tiver tempo(ano que vem), estudar OGL com a SDL. Arrumei um tempinho nas duas ultimas semanas e aprendi C (fiz um programa que faz tudo que se estuda no Ensino Medio sobre matrizes. Programar em C no Eclipse é bonzinho.
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Antigo 09-07-2007, 16:22   #7 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Se você pegar o compilar o código que está dentro da basta "MeuJogo 2D" ele funciona? Caso esteja copiando os código do PDF, cuidado, pois o sistema de cópia de texto do PDF algumas vezes corrompe a quebra de linha e coisas do tipo.

Quanto a linguagem, você pode portar o XNA para alguma outra linguagem .NET, é bem tranquilo. Basicamente é só ajustar a sintaxe.

Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 09-07-2007, 22:32   #8 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Fergo eu não usei Copy and Paste não, eu li atentamente as instruções, entendi como funciona cada classe/objeto utilizada e para comparar o código eu abri o seu que vem pronto e comparei, tudo igual.

Eu percebi que o seu effects.fx tem propriedades definidas e o meu não, só isso de diferenças.

meu último POST foi caracterizado como flood, olha o botãozinho amarelo no canto inferior direito!!! :-()
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Antigo 17-07-2007, 21:47   #9 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Fiz um pequeno vídeo demonstrando uma IA básica de veículos que criei no XNA que seguem um caminho, fazendo as curvas quando necessário. Eles ainda viram subitamente, não fiz interpolação para suavizar o movimento de curvatura. Dá para notar também o efeito specular de iluminação conforme a câmera se movimenta. O céu ali é temporário ( com as nuvenzinhas ) pois estava trabalhando em um skybox, que substituiria ele.

http://www.youtube.com/watch?v=DxcQLqL2FCU

Estou organizando e comentando o código dessa mini engine novamente. Provavelmente amanhã eu já vou estar com tudo terminado e então eu posto as fontes aqui ( e talvez faça uma atualização no tutorial ).

Abraços,
Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 18-07-2007, 9:56   #10 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Ele voltou ao tópico, aleluia. Interessante os carrinhos, vai fazer GTA? :-)

vai fazeno tutos aí que nóis lê aqui.
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Antigo 19-07-2007, 16:38   #11 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Valeu. Estava pensando em fazer algo no estilo de Midtown Madness ( estou trabalhando no projeto junto com um colega meu ).
Vou ter que adiar o código um pouco pois resolvi tentar implementar sombras em tempo real ( utilizando ShadowMap com PixelShader 3 ) e specularmap. Algumas fotos de como fica:

Sombras ( tempo real, se alteram de acordo com a posição da luz )


Specular e brilho nos vidros das janelas


Asfalto e calçada com specular map, um pouco mais realista


Abraços!
Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 19-07-2007, 17:12   #12 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Tá bem realista, a textura da grama é que tá feia. Olhei aqui uns screenshots de Midtown Medness no site da Microsoft, gostaria a falar sobre o desenvolvimento do jogo aqui neste tópico.

Tô para aprender a programar games, mas estou desenvolvendo um sistema para marmoraria em PHP com MySQL(quanta conta, quanto gráfico), fico sem tempo de mexer/aprender mais com Programação 3D, mas o sistema vai render uma grana boa.

flws
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Antigo 19-07-2007, 17:15   #13 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Eu estou trabalhando nas texturas de normal map para a grama, e quero ver se a gente consegue implementar o normalmap ainda hoje. Vai dar outra cara para a grama. Midtown Madness eh um tanto quanto antigo ( 99'/00' ), ms tem um freeroam de veículos bem interessante.
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 20-07-2007, 10:48   #14 (permalink)
mvbueno
Novo Membro
 
Avatar de mvbueno
 
Registrado em: Jul 2006
Localização: São Paulo
Idade: 26
Mensagens: 119
Reputação: 12 mvbueno está indo no caminho certo
Enviar mensagem via MSN para mvbueno
Padrão

ein cara... gostei muito do seu tuto... ta bem facil de entender.. mas eu uso linux... sera que esses programas rodam no wine? Oo
__________________
usuário do ubuntu 10.10
mvbueno está offline   Responder com Quote
Antigo 20-07-2007, 11:13   #15 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Olha, é capaz de rodar usando o Cedega ( para emular o DirectX ) e o Mono ( para o .NET Framework ). Pra ser sincero, acho difícil, mas é de se tentar

Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 20-07-2007, 11:51   #16 (permalink)
mvbueno
Novo Membro
 
Avatar de mvbueno
 
Registrado em: Jul 2006
Localização: São Paulo
Idade: 26
Mensagens: 119
Reputação: 12 mvbueno está indo no caminho certo
Enviar mensagem via MSN para mvbueno
Padrão

voce nao conhece algo parecido para linux?
Tenho vontade de criar jogos
__________________
usuário do ubuntu 10.10
mvbueno está offline   Responder com Quote
Antigo 20-07-2007, 15:13   #17 (permalink)
Fergo
Colaborador
 
Avatar de Fergo
 
Registrado em: Nov 2004
Localização: Curitiba - PR
Idade: 24
Mensagens: 8.312
Reputação: 6380 Fergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputaçãoFergo tem uma fabulosa reputação
Enviar mensagem via ICQ para Fergo Enviar mensagem via MSN para Fergo
Padrão

Infelizmente não conheço, pois não trabalho com linux. A única coisa que eu sei é que o Blender ( programa de modelagem 3D ) parece que possui um "Game Studio" embutido nele, dê uma conferida. Existe ele para linux.

Fergo
__________________
Site pessoal www.fergonez.net
Portfolio
www.fbirck.com
Artigos
Informática
Fergo está offline   Responder com Quote
Antigo 20-07-2007, 16:17   #18 (permalink)
mvbueno
Novo Membro
 
Avatar de mvbueno
 
Registrado em: Jul 2006
Localização: São Paulo
Idade: 26
Mensagens: 119
Reputação: 12 mvbueno está indo no caminho certo
Enviar mensagem via MSN para mvbueno
Padrão

Infelizmente nao consegui rodar o xna no linux
Ja tenho o Blender, mas achei ele mto complicado de mexer... voce não conhece um tutorial parecido com o seu para blender?
Tambem to tentando mexer no Crystal Space, mas nao consegui nem compila o CEL...

Abracos
__________________
usuário do ubuntu 10.10
mvbueno está offline   Responder com Quote
Antigo 20-07-2007, 21:10   #19 (permalink)
Herberth_Amaral
Veterano
 
Avatar de Herberth_Amaral
 
Registrado em: Nov 2005
Localização: Qualquer lan de Montes Claros
Idade: 23
Mensagens: 1.239
Reputação: 16 Herberth_Amaral possui ótimo potencial
Enviar mensagem via MSN para Herberth_Amaral
Padrão

Citação:
Infelizmente nao consegui rodar o xna no linux
Ja tenho o Blender, mas achei ele mto complicado de mexer... voce não conhece um tutorial parecido com o seu para blender?
Err.... é meio difícil de achar um bom tutorial para o blender em portugues.

Mas não é tão difícil assim não! O problema básico do blender é sua interface "nada a ver". Mas depois você se acostuma e descobre o quão poderosa ela é.
Vale a pena aprender o blender. Ele possui uma biblioteca física muito boa (a Bullet) e agora na versão 2.44, ele vem ainda mais poderoso com o novo suporte SSS( SubSurface Scattering) que permite ter uma maior realidade nas suas renderezições.
O blender também tem o yafray (www.yafray.org) como um renderizador externo que suporta o RayTracing, que é uma técnica de iluminação que torna as cenas muito mais reais.
Tem um pequeno filme feito somente com software livre (Blender, GIMP e outros) que mostra o poder do blender. O vídeo pode ser baixado em http://www.elephantsdream.org/ e foi feito com a versão 2.42, ou seja esse vídeo não mostra tudo o que o blender pode fazer.

Vou ficar por aqui. O resto e com vcs

P.S: Fergo, parabéns pelo excelente tutorial. Muito bom mesmo!
P.P.S: Estou com o intuito de, no fim do ano, legendar alguns vídeos tutorias do blender. Se vc quiser acompanhar, me mande uma MP.

Até mais!
Herberth_Amaral está offline   Responder com Quote
Antigo 20-07-2007, 23:49   #20 (permalink)
philix
Super Participante
 
Registrado em: Dec 2006
Idade: 21
Mensagens: 953
Reputação: 14 philix possui ótimo potencialphilix possui ótimo potencial
Enviar mensagem via MSN para philix
Padrão

Citação:
Err.... é meio difícil de achar um bom tutorial para o blender em portugues.
Realmente é!!! Eu consegui aprender a mexer nele (um pouco) pq comprei umas pequenas revistas aí que saíram agora da Editora Minuano. Ótimas para começar. Achei o Blender mais fácil de mexer, não pela quantidade de controles e opções, mas pela maneira que vc visualiza a cena e como usa o mouse para selecionar as coisas(vertices, arestas, poligonos...).
O Blender exporta para 3ds...

É interessante a diferença de tamanho entre Blender(30MB) e 3DS MAX(meio DVD)!
__________________
"A Matemática é a ginástica mental necessária na tentativa da compreenssão do universo" Linus Torvalds
philix está offline   Responder com Quote
Resposta


Opções do Tópico

Regras de Mensagens
Você não pode criar tópicos
Você não pode postar respostas
Você não pode anexar arquivos
Você não pode editar suas mensagens

Código vB está Ligado
Smiles estão Ligado
Código [IMG] está Ligado
Código HTML está Desligado
Ir para...


Horários baseados na GMT -3. Agora são 4:31.