Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho...

37
Texturas em Jogos Texturas em Jogos IA 725 – Computação Gráfica IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro Leandro de Pinho Monteiro

Transcript of Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho...

Page 1: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Texturas em JogosTexturas em Jogos

IA 725 – Computação GráficaIA 725 – Computação GráficaProfessa Dra. Wu, Shin-TingProfessa Dra. Wu, Shin-Ting

Leandro de Pinho MonteiroLeandro de Pinho Monteiro

Page 2: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

RoteiroRoteiro IntroduçãoIntrodução Definições da áreaDefinições da área Tipos de TexturaTipos de Textura Texturas em JogosTexturas em Jogos Texturas nas Bibliotecas GráficasTexturas nas Bibliotecas Gráficas ConclusãoConclusão

Page 3: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

IntroduçãoIntrodução Adicionar realismo a uma cenaAdicionar realismo a uma cena Evitar processamentos desnecessáriosEvitar processamentos desnecessários Garantir certos aspectos visuaisGarantir certos aspectos visuais Mármore, madeira, roupa, vegetação etc.Mármore, madeira, roupa, vegetação etc. Cenário / Mapas dos Jogos Cenário / Mapas dos Jogos Gerador de terrenosGerador de terrenos Roupas dos PersonagensRoupas dos Personagens

Page 4: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Definições BásicasDefinições Básicas TexturaTextura

• Diversidade de ConceitosDiversidade de Conceitos Espaço de TexturaEspaço de Textura

• TexelTexel TexturizaçãoTexturização

• Função de MapeamentoFunção de Mapeamento• Mapeamento de TexturasMapeamento de Texturas

Page 5: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Outros TermosOutros Termos Texture mappingTexture mapping

Bump mappingBump mapping

Mip mappingMip mapping

Environment mapping Environment mapping

Page 6: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Algumas ImagensAlgumas Imagens

Page 7: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Mais ImagensMais Imagens

Page 8: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Tipos de TexturaTipos de Textura Dificuldade na ClassificaçãoDificuldade na Classificação

• Dimensão (1D, 2D, 3D)Dimensão (1D, 2D, 3D)• Padrão (Rugosidade, Regulares, Ruído)Padrão (Rugosidade, Regulares, Ruído)• Luminosidade (Refração, Reflexão, Luminosidade (Refração, Reflexão,

Sombra)Sombra)• Origem (Procedural, Imagem Digital)Origem (Procedural, Imagem Digital)• Distribuição (Espectrais, Estatísticas, Distribuição (Espectrais, Estatísticas,

Estruturais)Estruturais)

Page 9: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Tipos de TexturaTipos de Textura Texturas de SuperfícieTexturas de Superfície

Texturas SólidasTexturas Sólidas

Texturas ProcedimentaisTexturas Procedimentais

Page 10: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

ImagensImagens

Page 11: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

ImagensImagens

Page 12: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Texturas em JogosTexturas em Jogos Engines (Cenários)Engines (Cenários)

• Efeitos Especiais (Photoshop)Efeitos Especiais (Photoshop)• Gerador de Terrenos (3D Game Studio)Gerador de Terrenos (3D Game Studio)

Softwares de Modelagem Softwares de Modelagem (Personagens)(Personagens)• Roupas (Maya, 3DS)Roupas (Maya, 3DS)• Armas, Veículos, Telas de Interação etc.Armas, Veículos, Telas de Interação etc.

Page 13: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Jogos SimplesJogos Simples

Page 14: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

PersonagensPersonagens

Page 15: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

ArmasArmas

Page 16: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

ArtilhariaArtilharia

Page 17: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

AviõesAviões

Page 18: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Mais AviõesMais Aviões

Page 19: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

HelicópterosHelicópteros

Page 20: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Mais HelicópterosMais Helicópteros

Page 21: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

VeículosVeículos

Page 22: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

CenáriosCenários

Page 23: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

RealismoRealismo

Page 24: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Mais RealismoMais Realismo

Page 25: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Gerador de TerrenosGerador de Terrenos

Page 26: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

TelasTelas

Page 27: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Camadas de TexturaCamadas de Textura

Page 28: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Mapeamento de AmbienteMapeamento de Ambiente

Page 29: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

EspelhamentoEspelhamento

Page 30: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

UVW mapUVW map

Page 31: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Anti-AliasingAnti-Aliasing

Page 32: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Mip mappingMip mapping

Page 33: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

Bibliotecas GráficasBibliotecas Gráficas DirectX SDK (Battlefield Vietnã)DirectX SDK (Battlefield Vietnã)

• Direct3D (d3ddefs.h)Direct3D (d3ddefs.h)• DirectInputDirectInput• DirectSoundDirectSound• DirectMusicDirectMusic• DirectPlayDirectPlay

OpenGL (Quake 3 – Arena)OpenGL (Quake 3 – Arena)• GL, GLU, GLUT, GLAUXGL, GLU, GLUT, GLAUX

Page 34: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

OpenGLOpenGL Criar um objeto de textura e especificar uma textura para Criar um objeto de textura e especificar uma textura para

este objetoeste objeto• glGenTextures(), glBindTextures()glGenTextures(), glBindTextures()

Indicar como a textura deve ser aplicada a cada pixelIndicar como a textura deve ser aplicada a cada pixel• glTexParameter()glTexParameter()

Habilitar mapeamento de texturasHabilitar mapeamento de texturas• glEnable()glEnable()

Desenhar a cena, fornecendo as coordenadas de textura e Desenhar a cena, fornecendo as coordenadas de textura e de objetode objeto

• glTexCoord2f(), glVertex3f()glTexCoord2f(), glVertex3f()

Page 35: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

DirectXDirectX pRenderTexture = NULL pRenderTexture = NULL pRenderSurface = NULLpRenderSurface = NULL pRenderTexture->D3DXCreateTextureFromFile()pRenderTexture->D3DXCreateTextureFromFile() pRenderSurface->SetSurface()pRenderSurface->SetSurface() pRenderTexture->GetSurfaceLevel() pRenderTexture->GetSurfaceLevel() pRenderTexture->SetRenderState() pRenderTexture->SetRenderState() pRenderTexture->SetTextureStageState()pRenderTexture->SetTextureStageState() pRenderTexture->SetTexture()pRenderTexture->SetTexture()

Page 36: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

DirectX vs OpenGLDirectX vs OpenGL DirectX é mais rápidoDirectX é mais rápido DirectX é mais completo e complexoDirectX é mais completo e complexo DirectX é mais direcionado a jogosDirectX é mais direcionado a jogos OpenGL é melhor estruturadoOpenGL é melhor estruturado OpenGL é multi-plataformaOpenGL é multi-plataforma OpenGL é mais flexívelOpenGL é mais flexível

Page 37: Texturas em Jogos IA 725 – Computação Gráfica Professa Dra. Wu, Shin-Ting Leandro de Pinho Monteiro.

ConclusãoConclusão Aumento de realismo e Aumento de realismo e

interatividadeinteratividade Redução de processamentoRedução de processamento Possibilidades de combinaçãoPossibilidades de combinação Grande suporte de bibliotecas Grande suporte de bibliotecas

gráficasgráficas Área em pleno desenvolvimentoÁrea em pleno desenvolvimento