BLENDER COMO UMA FERRAMENTA AUXILIAR E GRATUITA PARA A FLUIDODINÂMICA COMPUTACIONAL MÓDULO II: INTRODUÇÃO AO BLENDER I N S T RUTOR : E L MO D E S E N A F. J Ú N I OR
Blender Foundation TON ROOSENDAAL Co-fudador do NeoGeo (maior estúdio de animação 3D da Holanda)
Responsável pelo desenvolvimento do software
6/9/2016
2
Blender Foundation PRINCIPAIS CARACTERÍSTICAS • O Blender é um software de modelagem e animação 3D de código aberto; • O Blender sob a licença GNU-GPL, que permite a qualquer pessoa ter acesso ao código-fonte do programa para que possa fazer melhorias;
• O Blender permite-nos criar jogos, sem programação, e realizar pós-produção de animações com um editor de vídeo integrado. Com as ferramentas do Blender pode-se desenvolver: MODELAGEM 3D, RENDERIZAÇÃO, ANIMAÇÃO, EDIÇÃO E VÍDEOS, TEXTURIZAÇÃO, CRIAÇÃO DE JOGOS E SIMULAÇÕES.
6/9/2016
3
Aplicações em jogos YO FRANKIE DESCRIÇÃO Neste jogo criado pela Blender Foundation controla-se um esquilo malvado, ele e capaz de carregar ovelhas e atirar nozes. O primeiro que termina as fazes ganha.
Fonte: Blender Foundation
6/9/2016
4
Aplicações em jogos MONKEY GAME DESCRIÇÃO
O projeto do jogo Monkey foi um esforço colaborativo entre muitos usuários do Blender. O jogo é um RPG terceiro conjunto em uma ilha distante. Uma colônia de macacos estão lutando para afastar uma tartaruga gigante , que já começaram a invadir a vila atrás de seu alimento. Fonte: Blender Foundation
6/9/2016
5
Aplicações em jogos BIG BUCK BUNNY
DESCRIÇÃO Conta a história de um coelho gigante bem generoso que se torna o vingador da morte de duas borboletas. Fonte: Blender Foundation
6/9/2016
Link vídeo 6
Aplicações em jogos SINTEL DESCRIÇÃO Conta a história da garota Sintel que está a procura de um dragão bebê que ela chama de Scales.
Fonte: Blender Foundation
6/9/2016
Link vídeo
7
Aplicações em Modelagem 3D
6/9/2016
8
Blender: primeiros passos • PRINCIPAIS CARACTERÍSTICAS DO SOFTWARE: Multi-plataforma: disponível para Linux, Windows, MAC OS X;
Suporta Python como linguagem de script (para plugins por exemplo).
BlenderFDS Possível visualizar no user preferences do blender 6/9/2016
9
Splash Screenpassos Blender: primeiros
Links para páginas oficiais da web
6/9/2016
Projetos mais recentes que foram abertos.
10
Blender: primeiros passos
6/9/2016
Formato padrão para o Blender
11
Blender: primeiros passos
LEGENDA: (1) O menu principal (Janela de Informações) no topo; (2) A grande janela 3D (Janela de Visualização 3D); (3) Uma janela de Outliner no canto superior direito; (4) A janela de botões (Janela Propriedades) no canto inferior direito; (5) A janela de tempo na linha de fundo. 6/9/2016
12
Blender: primeiros passos • COMANDOS BÁSICOS Movimentação da câmera • Todos os movimentos de câmera são baseados no botão scroll do mouse (MB): MB: girar a câmera;
MB + Shift: Mover câmera no eixo relativo à rotação; MB + Ctrl: Zoom da câmera;
Shift + C: centralizar a câmera; 6/9/2016
13
Blender: primeiros passos • COMANDOS BÁSICOS Visão da câmera Numpad 1: Front view (eixo y); Numpad 3: Right view (eixo x);
Numpad 7: Top view (eixo z); Numpad 5: alterna entre a visão perspectiva e ortogonal;
Z: alterna entre wireframe e shared. 6/9/2016
14
Blender: primeiros passos • COMANDOS BÁSICOS Principais atalhos para comandos de objetos G: Move o objeto em relação ao eixo da câmera; S: Escalona o objeto;
R: Rotaciona o objeto em relação ao eixo da câmera; Botão esquerdo do mouse(LB): concluir ação;
Botão direito do mouse(RB): Cancelar ação. 6/9/2016
15
COMO SALVAR UM DOCUMENTO NO BLENDER?
O USUÁRIO DEVE SALVAR O ARQUIVO A CADA ALTERAÇÃO;
Salvar arquivo .blender
O BLENDER NÃO INFORMA SE O DOCUMENTO AINDA NÃO FOI SALVO (versões mais antigas); O BLENDER NÃO SALVA NENHUMA INFORMAÇÃO AUTOMATICAMENTO.
6/9/2016
16
COMO IMPORTAR UM ARQUIVO NO BLENDER?
IMPORTAR ARQUIVO .stl PARA O BLENDER
Salvar arquivo .blender SALVAR ARQUIVO COMO .blender
6/9/2016
17
COMO EXPLORAR UM ARQUIVO NO BLENDER?
EXPORTAR ARQUIVO .stl A PARTIR DE UM ARQUIVO BLENDER
Salvar arquivo .blender IMPORTAR O ARQUIVO .stl
6/9/2016
18
IMPORTAR/EXPORTAR UM ARQUIVO NO BLENDER http://tf3dm.com/ • Diversos modelos 3D prontos para download Carros - helicópteros Aviões – jatos Animais – pessoas Casas – prédios e etc
Salvar arquivo .blender
Arquivos disponíveis
• Arquivos .blender .3ds .stl .fbx .obj
6/9/2016
19
Shift + A Adicionar um novo objeto
6/9/2016
20
Manipulação dos objetos
6/9/2016
21
Blender: primeiros passos • MANIPULAÇÃO DE OBJETOS Define a posição do objeto em qualquer lugar do 3D view Rotaciona o objeto ao longo do próprio eixo 1m
Define o tamanho do objeto 1m
6/9/2016
22
Blender: primeiros passos • MANIPULAÇÃO DE OBJETOS
1m
1m z y x 6/9/2016
23
Blender: primeiros passos • PROBLEMA EXEMPLO 1: • Mudar a localização do “cube1” exatamente acima do grid do blender;
z
x
y
(2)
• Inserir um novo objeto do tipo “cube”;
• Colocar o novo “cube” sobre o “cube1” • Escala original dos objetos.
6/9/2016
1m
(1)
1m
24
Blender: primeiros passos • Colocar Cube 1 na mesma altura do Grid do Blender:
z
𝑧 𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒1) = 𝑧 𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1)
y x
(2)
• Colocar Cube 2 na mesma altura do Cube 1: 1m
𝑧 𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒2) = 2 ⋅ 𝑧 𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1) + 𝑧 𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒2)
6/9/2016
(1) 1m
25
Blender: primeiros passos • PROBLEMA EXEMPLO 2: z • Mudar a localização do “cube1” exatamente acima do grid do blender;
(2)
y x (1)
• Inserir um novo objeto do tipo “cube2”; • Colocar o novo “cube2” à direita do “cube1” e na metade da altura total do “cube1” • Escala original dos objetos.
6/9/2016
1m
1m
26
Blender: primeiros passos • Colocar “cube1” na mesma altura do Grid do Blender:
(2)
𝑧 𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒1) = 𝑧 𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1) • Colocar “cube2” à direita do “cube1” e na metade da altura do total do “cube1”:
𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒2) = 2 ⋅ 𝑧 𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1)
(1) 1m
1m
𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒2) = 2 ⋅ 𝑦 𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1)
6/9/2016
27
Blender: primeiros passos • PROBLEMA EXEMPLO 3: Qual deve ser a localização?
DIMENSÕES CUBO 1:
z
x
• Escala: 3 – 3 – 3 DIMENSÕES CUBO 2:
y
(2)
• Cubo 1 está no centro do grid • Cubo 2 está no centro do cubo1 • Escala: 1 – 1 – 1
DIMENSÕES PLANO:
(1)
• Escala: 1 – 1 – 1 (PADRÃO)
6/9/2016
28
Blender: primeiros passos Localização do cubo 1 já é conhecido! • Localização para o plano:
z x y
(2)
𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛 = 2 ⋅ 𝑧𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1) 𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛 = 𝑦𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1) + 𝑦𝑠𝑐𝑎𝑙𝑒(𝑝𝑙𝑎𝑛𝑜) (1)
6/9/2016
29
Blender: primeiros passos • LOCALIZAÇÃO PARA O CUBO 2:
z x
𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛 = 2 ⋅ 𝑧𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
+ 𝑧𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒2)
y
(2)
(1)
6/9/2016
30
Blender: primeiros passos • PROBLEMA EXEMPLO 4: (2)
Qual deve ser a localização? • Cubo 1 está no centro do grid
DIMENSÕES CUBO 1: • Escala: 3 – 3 – 3 DIMENSÕES OUTROS CUBOS: (5)
• Cubo 2 está no centro do cubo1 • Escala: 1 – 1 – 1
(1)
(3) z
(4) y x
6/9/2016
31
Blender: primeiros passos • LOCALIZAÇÃO PARA O CUBO 3: (2)
𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒3) = 𝑧𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒3
𝑥𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒3) = 𝑥𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒3
+ 𝑥𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1) (1) (5) (3)
(4)
z y x 6/9/2016
32
Blender: primeiros passos • LOCALIZAÇÃO PARA O CUBO 3: 𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒3) = 𝑧𝑠𝑐𝑎𝑙𝑒 𝑐𝑢𝑏𝑒3 𝑥𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒3) = 𝑥𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
(2)
+ 𝑥𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒3)
• LOCALIZAÇÃO PARA O CUBO 4: 𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒4) = 𝑧𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒4
𝑥𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒4) = 𝑥𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
+ 𝑥𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒4)
𝑐𝑢𝑏𝑒1
+ 𝑦𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒4)
𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒4) = 𝑦𝑠𝑐𝑎𝑙𝑒
(5)
(1)
(3) z
(4) y x
6/9/2016
33
Blender: primeiros passos • LOCALIZAÇÃO PARA O CUBO 5:
𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒5) = 𝑧𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒5
𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒5) = 𝑦𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
(2)
+ 𝑦𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒5)
(5)
(1)
(3) z
(4) y x
6/9/2016
34
Blender: primeiros passos • PROBLEMA EXEMPLO 5: Qual deve ser a localização? • Plano1 está no centro do grid • Cube 2, e as torres estão nas extremidades do plano 1
z DIMENSÕES PLANO1: • Escala: 5 – 5 – 0.05
DIMENSÕES CUBO2: • Escala: 1 – 1 – 1
x
y
(3)
DIMENSÕES BARRA3: • Escala: 0.25 – 0.25 – 3
DIMENSÕES BARRA4: • Escala: 0.25 – 0.25 – 3 • Rotação: 90° em y
6/9/2016
(4)
(2)
(1)
35
Blender: primeiros passos • LOCALIZAÇÃO PARA O CUBO 2: 𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒2) = 2 ⋅ 𝑧𝑠𝑐𝑎𝑙𝑒
𝑥𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒2) = 𝑧𝑠𝑐𝑎𝑙𝑒
𝑝𝑙𝑎𝑛𝑜1
𝑝𝑙𝑎𝑛𝑜1
+ 𝑧𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1)
z
(4) x
y
− 𝑧𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒2) (3)
𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑐𝑢𝑏𝑒2) = 𝑦𝑠𝑐𝑎𝑙𝑒
𝑝𝑙𝑎𝑛𝑜1
− 𝑦𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒2)
(2)
(1)
6/9/2016
36
Blender: primeiros passos • LOCALIZAÇÃO PARA O TORRE 3: 𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑡𝑜𝑟𝑟𝑒3) = 𝑧𝑠𝑐𝑎𝑙𝑒
𝑡𝑜𝑟𝑟𝑒3
+ 2 ⋅ 𝑧𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1)
𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑡𝑜𝑟𝑟𝑒3) = 𝑦𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
− 𝑦𝑠𝑐𝑎𝑙𝑒(𝑡𝑜𝑟𝑟𝑒3)
𝑥𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑡𝑜𝑟𝑟𝑒3) = 𝑥𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
− 𝑥𝑠𝑐𝑎𝑙𝑒(𝑡𝑜𝑟𝑟𝑒3)
z (4)
x
y
(3) (2)
(1)
6/9/2016
37
Blender: primeiros passos • LOCALIZAÇÃO PARA O TORRE 4: 𝑧𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑡𝑜𝑟𝑟𝑒4) = 2 ⋅ 𝑧𝑠𝑐𝑎𝑙𝑒 𝑡𝑜𝑟𝑟𝑒3 + 2 ⋅ 𝑧𝑠𝑐𝑎𝑙𝑒(𝑐𝑢𝑏𝑒1) + 𝑧𝑠𝑐𝑎𝑙𝑒(𝑡𝑜𝑟𝑟𝑒4)
z (4)
x
y
(3)
𝑦𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑡𝑜𝑟𝑟𝑒4) = 𝑦𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
− 𝑦𝑠𝑐𝑎𝑙𝑒(𝑡𝑜𝑟𝑟𝑒4)
𝑥𝑙𝑜𝑐𝑎𝑡𝑖𝑜𝑛(𝑡𝑜𝑟𝑟𝑒4) = 𝑥𝑠𝑐𝑎𝑙𝑒
𝑐𝑢𝑏𝑒1
− 𝑧𝑠𝑐𝑎𝑙𝑒(𝑡𝑜𝑟𝑟𝑒4)
(2)
(1)
6/9/2016
38
Referências blender.org.com
6/9/2016
39
BLENDER COMO UMA FERRAMENTA AUXILIAR E GRATUITA PARA A FLUIDODINÂMICA COMPUTACIONAL MÓDULO I: BLENDERFDS E O FDS(FIRE DYNAMICS SIMULATOR) I N S T RUTOR : E L MO D E S E N A F. J Ú N I OR
FDS – Fire Dynamics Simulator • O FDS é um código CFD de domínio público desenvolvido pelo NIST (National Instituite of Standard and Technology);
• O FDS possui um manual do usuário e guia técnico detalhado onde explica o como utilizar este software CFD; • Os resultados do FDS podem ser visualizados utilizando o Smokeview;
6/9/2016
2
FDS – Fire Dynamics Simulator CONSTRUINDO UM MODELO NO FDS
Parâmetros do FDS declarados
declarados
Prompt de comando
Arquivo de texto
BlenderFDS
Arquivo.fds
6/9/2016
3
FDS – Fire Dynamics Simulator CONSTRUINDO UM MODELO NO FDS OBS: Abrir arquivo de texto pelo promt de comando arquivo de texto &HEAD CHID=‘exemplo', TITLE=‘Este é um exemplo' / &MESH ID='MESH1' IJK=24,24,200, XB=-0.03,0.03,-0.03,0.03,0.0,0.5 / &MISC ISOTHERMAL=.FALSE. TMPA=25.0, P_INF=101325.0, GVEC=0.0,0.0,-9.81, DNS=.FALSE., TURBULENCE_MODEL='DYNAMIC SMAGORINSKY', RESTART=.FALSE. /
No MISC todos são padrões do FDS (exceto o modelo turbulento)
6/9/2016
4
FDS – Fire Dynamics Simulator CONSTRUINDO UM MODELO NO FDS Arquivo de texto &TIME T_END=5.0 /
&VENT &VENT &VENT &VENT &VENT
MB MB MB MB MB
= = = = =
'XMIN' 'XMAX' 'YMIN' 'YMAX' 'ZMAX'
SURF_ID SURF_ID SURF_ID SURF_ID SURF_ID
= = = = =
'OPEN'/ 'OPEN'/ 'OPEN'/ 'OPEN'/ 'OPEN'/
No VENT Todas as extremidades abertas, exceto Zmin. &SPEC ID='AIR', BACKGROUND=.TRUE./ Espécie química dentro do domínio computacional 6/9/2016
5
FDS – Fire Dynamics Simulator CONSTRUINDO UM MODELO NO FDS Arquivo de texto &SURF ID='LEAK',VEL=-57.48, SPEC_ID(1)='AIR', MASS_FRACTION(1)=1.0, TMP_FRONT=25 / 1- Superfície nomeada de LEAK; 2- Velocidade de 57.48 m/s; 3- Componente puro, informações do SPEC 54 - Ar sai a 25°C. &VENT XB=-0.0075,0.0075,-0.0075,0.0075,0.0,0.0, SURF_ID='LEAK', COLOR='RED'/
6/9/2016
6
FDS – Fire Dynamics Simulator CONSTRUINDO UM MODELO NO FDS Arquivo de texto &DUMP DT_RESTART=0.01, DT_SL3D=2.0, DT_PL3D=2.0 / (2) (1) 1 – Caso haja algum problema a simulação esta recomeça 0.01s antes do tempo que parou; 2 - O SLCF 3D é impresso a cada 2.0 segundos (TINI-TFINAL)/5 - padrão)
6/9/2016
7
FDS – Fire Dynamics Simulator CONSTRUINDO UM MODELO NO FDS Arquivo de texto &SLCF PBY=0.0,
QUANTITY='VELOCITY',
SPEC_ID='AIR‘, VECTOR=TRUE /
Corte para visualização das quantidades informadas perpendicular a direção y. &DEVC &DEVC &DEVC &DEVC &DEVC
XYZ=0.0,0.0,0.000, XYZ=0.0,0.0,0.095, XYZ=0.0,0.0,0.19, XYZ=0.0,0.0,0.30, XYZ=0.0,0.0,0.40,
QUANTITY='VELOCITY', QUANTITY='VELOCITY', QUANTITY='VELOCITY', QUANTITY='VELOCITY', QUANTITY='VELOCITY',
ID='V-P1' ID='V-P2' ID='V-P3' ID='V-P4' ID='V-P5'
/ / / / /
Pontos de monitoramento.
&TAIL / FIM. 6/9/2016
8
Práticas • Perfil de velocidade e camada limite
6/9/2016
• Incêndio em poça
9
Práticas • Utilizar blender para construir a geometria proposta; • Utilizar blenderfds para definir as condições de contorno do problema investigado; • Utilizar o FDS (Fire Dynamics Simulator) para realizar os cálculos de conservação estudada; • Utilizar o Smokeview visualizar os resultados.
6/9/2016
10
Prática 1
x y
z x
z
6/9/2016
y
11
Prática 2
z
z x
6/9/2016
x
y 12
Projeto Vento
Domínio computacional
Foco de incêndio
Plataforma simplificada 6/9/2016
13