Introduo Multimdia Prof Judith Kelner jkcin ufpe br
Introdução à Multimídia Profª. : Judith Kelner – jk@cin. ufpe. br Equipe: Caio Lira - ctal@cin. ufpe. br Guilherme Dantas - gamsd@cin. ufpe. br Hugo Calazans - htcrs@cin. ufpe. br Lauro Moura - lmmn@cin. ufpe. br Rodolfo Saturnino - rps@cin. ufpe. br 1
Motivação n Cenário dos jogos de hoje q q q Objetos não se comportam de forma realista Ação limitada a animações regidas por scripts Exemplos: n n Explosões grandiosas não provocam danos significativos ao cenário Oponentes mortos caem de maneira similar e pouco natural 2
Objetivo n n Apresentar o conceito de processador de física Ilustrar como uma engine de física pode aumentar significativamente o grau de realismo e imersão dos jogos modernos 3
O que é a Física? n Como os objetos se movem e interagem q q n Em termos de movimento (posição + velocidade) e forma Independe da representação gráfica Uma quantidade tremenda de cálculos matemáticos e lógicos sobre grande quantidade de dados 4
Física em Jogos n Propriedades dos materiais n Dinâmica de corpos rígidos n Detecção de colisão n Juntas e molas n Fluidos n Sistema de partículas n Tecidos 5
Física: Propriedades dos materiais n Fricção q q n Dirigir na chuva Piso molhado Dureza q Amortecimento de impacto n q Tipos de quadra de tênis Rompimento sob pressão ou tração 6
Física: Dinâmica de corpos rígidos e detecção de colisão n n Física Newtoniana Colisão entre objetos q q q Cartuchos caindo após tiro Caixas caindo Avalanche de pedras 7
Física: Juntas e molas n Objetos complexos q q q Veículos Portas Movimento de personagens 8
Física: Fluidos n n n Uma das partes mais pesadas em termos de computação Interage com objetos dinâmicos, empurrandoos e mudando de forma Exemplos: q q Água Sangue. . . 9
10
Física: Sistema de partículas n n Como fluidos, só que mais “inteligentes” Interagem com outras características do ambiente q Fumaça sobe para o teto até encontrar uma saída 11
Física: Tecidos n Movimento de acordo com o tipo do tecido q n Mais leve, mais pesado Rasgar em pedaços de acordo com o tipo de tecido 12
Física avançada em jogos n Simulação em tempo real q q Fidelidade Escalabilidade Interatividade Sofisticação 13
Física avançada em jogos 14
Física avançada: Fidelidade n n Representação visual de acordo com o que aconteceria na realidade Modelo matemático preciso 15
Física avançada: Escalabilidade n n Processamento de milhares de partículas interagindo entre si e outros objetos Exemplos: q q Poeira Fumaça Chuva Peças de um veículo batendo 16
Física avançada: Interação n n Ação e reação entre objetos na cena Exemplos: q q q A água de um hidrante batendo contra um carro Vidro quebrando ao cair no chão Roupa se rasgando em pedaços 17
Física avançada: Sofisticação n n n Nível de detalhe alcançado pela simulação Tipos de interação possíveis Exemplos: q q q Deformações e fraturas Juntas flexíveis Atrito 18
Exemplo de física em jogos: Corrida n Atrito com a pista (materiais) n Colisão com outros carros e cenário (física newtoniana) n Trabalho de suspensão (juntas) n Aerodinâmica (fluidos) 19
Vídeo: Jogos de Caminhão n Boa física: Rigs of Rods q n http: //www. youtube. com/watch? v=TR 9 jq. Gv 05 H 4 Péssima física: Big Rigs q http: //www. youtube. com/watch? v=m. B 1 z. WEhgr. Ls 20
Cenário Atual n Física calculada ainda através da CPU q n 1/6 do tempo gasto com física Tentativa de adaptação das GPU's 21
Abordagens – CPUs de propósito geral n n Necessidade de algoritmos extremamente otimizados Divisão do processador entre diferentes tarefas q n IA e lógica Processamento paralelo insuficiente dos diversos objetos físicos q Escalabilidade + Interação 22
Abordagens - GPUs n Banda de memória limitada q n Limita o número de objetos na cena Pipeline específico para gráficos q Dificulta o mapeamento de algoritmos físicos 23
Alternativa – Ageia Phys. X PPU n Primeiro processador dedicado a física q q Physics Processor Unit AGEIA 24
AGEIA Phys. X PPU n Foca especialização de cada unidade de processamento 25
Phys. X PPU n n n Alta velocidade interna – 2 Tbits/s Hardware preparado para tipos de dados e algoritmos específicos de cálculos físicos Multicore q Paralelismo 26
O que é o Phys. X SDK? n Uma engine para física de tempo-real em jogos q q q Utiliza variáveis como massa, velocidade, atrito e resistência do ar para cálculos físicos Auxilia aplicações multimídia Simula e prevê efeitos sob diferentes condições que se aproximam da vida real 27
O que o Phys. X SDK não faz n n n Não é uma ferramenta de renderização Não simula sons Necessita de outra biblioteca para montar as cenas q q Direct. X Open. GL 28
Utilizando o Phys. X SDK n Duas formas de funcionamento q Utilizando apenas o processador do computador n n n q Desempenho ruim Emulação Não suporta a totalidade dos efeitos Utilizando a PPU Phys. X n n Bom desempenho Suporta todos os efeitos 29
Comparativo de Desempenho 30
Comparativo: Cena sem Phys. X 31
Comparativo: Cena com Phys. X 32
Phys. X nos Jogos n n n Movimentação dos objetos mais real Física dos fluidos melhor elaborada Explosões geram poeira e resíduos Personagens com geometria complexa e movimentação mais real Vegetação e tecidos são elementos ativos e interagem com jogador e ambiente 33
Movimentação de Objetos Vídeo 34
Fluidos Vídeo 1 Vídeo 2 Vídeo 3 35
Poeira e Resíduos Vídeo 36
Movimentação de Personagens Vídeo 37
Vegetação e Tecidos Vídeo 1 Vídeo 2 38
Ambiente de desenvolvimento 39
Ambiente de desenvolvimento n Phys. X Create q q Inclui plugins para 3 DS Max e Maya Adiciona física aos objetos do jogo Criação e edição avançada de rag-doll Criação de efeitos nos panos 40
Ambiente de desenvolvimento n Phys. X VRD q q Debugger visual remoto em tempo real Reproduz a simulação Phys. X para debug interativo Capaz de parar em qualquer ponto a simulação Conexão via TCP/IP para PC, Xbox 360, e PS 3 runtime 41
Ambiente de desenvolvimento n Phys. X Rocket q q q Permite visualização e ajuste Modular e extensível, permitindo aos desenvolvedores customizar para adequar às suas próprias necessidades Ambiente ideal para a criação, visualização e ajuste de modelos para componentes complexos como fluidos e veículos por exemplo 42
Ambiente de desenvolvimento n AGEIA APEX q q Adaptive Physics Extensions Nova plataforma de desenvolvimento Implementações mais fáceis Física mais real, robusta e imersiva 43
Ambiente de desenvolvimento n AGEIA APEX 44
Ambiente de desenvolvimento n AGEIA APEX q Pipeline Offload n n Conjunto de modificações na engine física Otimização do código em execução no jogo Melhor performance Melhor uso dos recursos computacionais 45
Ambiente de desenvolvimento n AGEIA APEX q q q Verticals são exemplos de cenários préprojetados de simulações físicas Feitos para a fácil integração com as novidades do mercado Exemplos: n Emissões de partículas e explosões customizáveis 46
Ambiente de desenvolvimento n AGEIA APEX q Scaling Level of Detail n n Dimensionamento integrado que permite aos eventos físicos se adequarem à capacidade de processamento da plataforma Um único evento físico (como a destruição de um vidro) pode ter seus detalhes ajustados sem nenhum esforço adicional de implementação 47
Custo de desenvolvimento n Preço q Caso seja dado suporte às placas Phys. X da AGEIA n q Caso contrário n n Free U$ 50, 000 Esforço para a integração q 2538 linhas de código 48
Vantagens n Rápido em tempo de execução q n n Na presença de uma PPU Phys. X Full featured Código base estável 49
Desvantagens n n Benefícios exclusivos para máquinas com a Phys. X PPU Diferentes formatos de arquivo para Max e Maya 50
Plataformas compatíveis n n Windows Linux q n Sem aceleração de hardware Videogames q Sony Playstation 3 51
Concorrentes n Havok SDK q q q Principal concorrente do Phys. X Desenvolvido por uma companhia irlandesa desde 2000 Utilizado em mais de 150 jogos n n Half-life 2 Deadrising 52
Concorrentes n NVIDIA Ge. Force 8 Series q q GPU com unidade PPU acoplada Quantum Effects Technology n q Nova tecnologia aceleradora de física Newtoniana API CUDA n n n Compute Unified Device Architecture Oferece uma API low e high-level para a GPU Programação em C ou alternativamente Assembly 53
Mercado n n n Aumento da representatividade da marca no mercado Empresas líderes em desenvolvimento de jogos têm se especializado na utilização do AGEIA Phys. X SDK Crescente número de jogos utilizando a engine 54
Trailers Demonstrativos n n Trailer 1 Trailer 2 55
Dúvidas 56
Referências n n n http: //www. matthiasmueller. info/ http: //personal. inet. fi/atk/kjh 2348 fs/ageia_phy sx. html http: //www. ageia. com/physx/ http: //en. wikipedia. org/wiki/Phys. X http: //en. wikipedia. org/wiki/Physics_processin g_unit Seminário sobre este tema 57
- Slides: 57