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

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

Embed Size (px)

Citation preview

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