Upload
edena
View
102
Download
0
Embed Size (px)
DESCRIPTION
Introdução à Multimídia Profª.:Judith Kelner – [email protected] Equipe:Caio Lira - [email protected] Guilherme Dantas - [email protected] Hugo Calazans - [email protected] Lauro Moura - [email protected] Rodolfo Saturnino - [email protected]. Motivação. Cenário dos jogos de hoje - PowerPoint PPT Presentation
Citation preview
1
Introdução à MultimídiaProfª.: Judith Kelner – [email protected]
Equipe: Caio Lira - [email protected] Dantas - [email protected] Calazans - [email protected] Moura - [email protected] Saturnino - [email protected]
2
Motivação
Cenário dos jogos de hoje Objetos não se comportam de forma realista Ação limitada a animações regidas por scripts Exemplos:
Explosões grandiosas não provocam danos significativos ao cenário
Oponentes mortos caem de maneira similar e pouco natural
3
Objetivo
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
4
O que é a Física?
Como os objetos se movem e interagem 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
flashplayer.xpt
5
Física em Jogos
Propriedades dos materiais Dinâmica de corpos rígidos Detecção de colisão Juntas e molas Fluidos Sistema de partículas Tecidos
6
Fricção Dirigir na chuva Piso molhado
Dureza Amortecimento de impacto
Tipos de quadra de tênis
Rompimento sob pressão ou tração
Física: Propriedades dos materiais
7
Física: Dinâmica de corpos rígidos e detecção de colisão Física Newtoniana Colisão entre objetos
Cartuchos caindo após tiro Caixas caindo Avalanche de pedras
8
Objetos complexos Veículos Portas Movimento de personagens
Física: Juntas e molas
9
Uma das partes mais pesadas em termos de computação
Interage com objetos dinâmicos, empurrando-os e mudando de forma
Exemplos: Água Sangue...
Física: Fluidos
10
11
Como fluidos, só que mais “inteligentes” Interagem com outras características do
ambiente Fumaça sobe para o teto até encontrar uma saída
Física: Sistema de partículas
12
Movimento de acordo com o tipo do tecido Mais leve, mais pesado
Rasgar em pedaços de acordo com o tipo de tecido
Física: Tecidos
13
Simulação em tempo real Fidelidade Escalabilidade Interatividade Sofisticação
Física avançada em jogos
14
Física avançada em jogos
15
Representação visual de acordo com o que aconteceria na realidade
Modelo matemático preciso
Física avançada: Fidelidade
16
Processamento de milhares de partículas interagindo entre si e outros objetos
Exemplos: Poeira Fumaça Chuva Peças de um veículo batendo
Física avançada: Escalabilidade
17
Ação e reação entre objetos na cena Exemplos:
A água de um hidrante batendo contra um carro Vidro quebrando ao cair no chão Roupa se rasgando em pedaços
Física avançada: Interação
18
Nível de detalhe alcançado pela simulação Tipos de interação possíveis Exemplos:
Deformações e fraturas Juntas flexíveis Atrito
Física avançada: Sofisticação
Exemplo de física em jogos: Corrida
19
Atrito com a pista (materiais)
Colisão com outros carros e cenário (física newtoniana)
Trabalho de suspensão (juntas)
Aerodinâmica (fluidos)
Vídeo: Jogos de Caminhão
Boa física: Rigs of Rods http://www.youtube.com/watch?v=TR9jqGv05H4
Péssima física: Big Rigs http://www.youtube.com/watch?v=mB1zWEhgrLs
20
21
Física calculada ainda através da CPU 1/6 do tempo gasto com física
Tentativa de adaptação das GPU's
Cenário Atual
22
Necessidade de algoritmos extremamente otimizados
Divisão do processador entre diferentes tarefas IA e lógica
Processamento paralelo insuficiente dos diversos objetos físicos Escalabilidade + Interação
Abordagens – CPUs de propósito geral
23
Banda de memória limitada Limita o número de objetos na cena
Pipeline específico para gráficos Dificulta o mapeamento de algoritmos físicos
Abordagens - GPUs
24
Alternativa – Ageia PhysX PPU Primeiro processador dedicado a física
Physics Processor Unit AGEIA
25
Foca especialização de cada unidade de processamento
AGEIA PhysX PPU
26
Alta velocidade interna – 2 Tbits/s Hardware preparado para tipos de dados e
algoritmos específicos de cálculos físicos Multicore
Paralelismo
PhysX PPU
27
O que é o PhysX SDK?
Uma engine para física de tempo-real em jogos 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
28
O que o PhysX SDK não faz
Não é uma ferramenta de renderização Não simula sons Necessita de outra biblioteca para montar as
cenas DirectX OpenGL
29
Utilizando o PhysX SDK
Duas formas de funcionamento Utilizando apenas o processador do computador
Desempenho ruim Emulação Não suporta a totalidade dos efeitos
Utilizando a PPU PhysX Bom desempenho Suporta todos os efeitos
30
Comparativo de Desempenho
31
Comparativo: Cena sem PhysX
32
Comparativo: Cena com PhysX
33
PhysX nos Jogos
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
34
Movimentação de Objetos
Vídeo
35
Fluidos
Vídeo 1Vídeo 2Vídeo 3
36
Poeira e Resíduos
Vídeo
37
Movimentação de Personagens
Vídeo
38
Vegetação e Tecidos
Vídeo 1Vídeo 2
39
Ambiente de desenvolvimento
40
PhysX Create Inclui plugins para 3DS 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
Ambiente de desenvolvimento
41
PhysX VRD Debugger visual remoto em tempo real Reproduz a simulação PhysX para debug
interativo Capaz de parar em qualquer ponto a simulação Conexão via TCP/IP para PC, Xbox 360, e PS3
runtime
Ambiente de desenvolvimento
42
PhysX Rocket 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
Ambiente de desenvolvimento
43
AGEIA APEX Adaptive Physics Extensions Nova plataforma de desenvolvimento Implementações mais fáceis Física mais real, robusta e imersiva
Ambiente de desenvolvimento
44
AGEIA APEX
Ambiente de desenvolvimento
45
AGEIA APEX Pipeline Offload
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
Ambiente de desenvolvimento
46
AGEIA APEX 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:
Emissões de partículas e explosões customizáveis
Ambiente de desenvolvimento
47
AGEIA APEX Scaling Level of Detail
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
Ambiente de desenvolvimento
48
Custo de desenvolvimento
Preço Caso seja dado suporte às placas PhysX da
AGEIA Free
Caso contrário U$ 50,000
Esforço para a integração 2538 linhas de código
49
Vantagens
Rápido em tempo de execução Na presença de uma PPU PhysX
Full featured Código base estável
50
Desvantagens
Benefícios exclusivos para máquinas com a PhysX PPU
Diferentes formatos de arquivo para Max e Maya
51
Plataformas compatíveis
Windows Linux
Sem aceleração de hardware Videogames
Sony Playstation 3
52
Concorrentes
Havok SDK Principal concorrente do PhysX Desenvolvido por uma companhia irlandesa
desde 2000 Utilizado em mais de 150 jogos
Half-life 2 Deadrising
53
Concorrentes
NVIDIA GeForce 8 Series GPU com unidade PPU acoplada Quantum Effects Technology
Nova tecnologia aceleradora de física Newtoniana
API CUDA Compute Unified Device Architecture Oferece uma API low e high-level para a GPU Programação em C ou alternativamente Assembly
54
Mercado
Aumento da representatividade da marca no mercado
Empresas líderes em desenvolvimento de jogos têm se especializado na utilização do AGEIA PhysX SDK
Crescente número de jogos utilizando a engine
55
Trailers Demonstrativos
Trailer 1 Trailer 2
56
Dúvidas
57
Referências
http://www.matthiasmueller.info/ http://personal.inet.fi/atk/kjh2348fs/
ageia_physx.html http://www.ageia.com/physx/ http://en.wikipedia.org/wiki/PhysX http://en.wikipedia.org/wiki/
Physics_processing_unit Seminário sobre este tema