Estudo Dirigido 03¶
Atividade: Transformações Geométricas 2D e 3D no Blender 4.5 LTS¶
Contexto¶
Nesta AC, você vai construir uma cena simples no Blender 4.5 LTS para praticar transformações geométricas em nível introdutório. A atividade combina manipulação manual (interface) e automação básica com Python.
Objetivos de aprendizagem¶
- Aplicar transformações 2D em objetos planos (translação, rotação e escala).
- Aplicar transformações 3D em sólidos (translação, rotação e escala em eixos distintos).
- Distinguir transformações em espaço local e espaço global.
- Criar uma animação curta com keyframes de transformações.
- Escrever um script Python simples para criar objetos e aplicar transformações.
Ferramentas obrigatórias¶
- Blender 4.5 LTS.
- Janela Scripting do Blender (Python integrado).
Enunciado da prática¶
Você deve montar uma mini-cena chamada "Parque Geométrico" contendo:
-
Elementos 2D (plano XY):
- 1 quadrado (Plane).
- 1 triângulo (pode ser um Plane editado para 3 vértices).
- 1 círculo (Mesh Circle).
-
Elementos 3D:
- 1 cubo.
- 1 cilindro.
- 1 esfera UV.
-
Animação curta (3 a 6 segundos):
- Um objeto 2D deve transladar e rotacionar.
- Um objeto 3D deve escalar e rotacionar em eixos diferentes.
-
Automação com Python (obrigatória):
- Criar ao menos 2 objetos por script.
- Aplicar pelo menos 3 transformações via script (ex.: location, rotation_euler, scale).
Requisitos técnicos mínimos¶
- Cena organizada com nomes coerentes de objetos (ex.:
obj2d_quadrado,obj3d_cubo). - Uso de pelo menos um caso de rotação em graus convertidos para radianos no Python.
- Aplicação de ao menos uma transformação em cada eixo principal (X, Y, Z) ao longo da atividade.
- Inserção de keyframes pelo menos nos frames inicial e final para dois objetos.
Passo a passo sugerido¶
- Criar uma coleção chamada
AC03_transformacoes. - Inserir os objetos 2D e posicioná-los no plano XY.
- Inserir os objetos 3D e posicioná-los acima ou ao lado dos 2D.
- Aplicar transformações manuais com
G(move),R(rotate) eS(scale). - Definir timeline (ex.: frame 1 a 120 em 24 fps).
- Criar keyframes de transformações para 1 objeto 2D e 1 objeto 3D.
- Abrir a aba Scripting e executar um script para criar/transformar objetos.
- Ajustar câmera e gerar um render estático da cena final.
Script base (exemplo inicial)¶
import bpy
import math
# Cria um cubo e aplica transformacoes 3D
bpy.ops.mesh.primitive_cube_add(location=(2, 0, 1))
cubo = bpy.context.active_object
cubo.name = "obj3d_cubo_script"
cubo.rotation_euler = (math.radians(25), math.radians(15), math.radians(40))
cubo.scale = (1.2, 0.8, 1.5)
# Cria um plano e aplica transformacoes 2D (XY)
bpy.ops.mesh.primitive_plane_add(location=(-2, -1, 0))
plano = bpy.context.active_object
plano.name = "obj2d_plano_script"
plano.rotation_euler = (0, 0, math.radians(30))
plano.scale = (1.5, 1.0, 1.0)
Você pode usar este script como ponto de partida, mas deve adaptá-lo para a sua cena.
Entregáveis¶
- Arquivo Blender:
AC03_NomeSobrenome.blend. - Script Python:
AC03_NomeSobrenome.py(pode ser também em.txtexportado do editor de texto do Blender). - Uma imagem renderizada da cena final:
AC03_NomeSobrenome.png. - Um texto curto (5 a 10 linhas) explicando:
- Quais transformações 2D e 3D você aplicou.
- Qual parte foi feita manualmente e qual parte por Python.
Bônus (até +1,0)¶
- Uso de hierarquia (parent/child) para mostrar transformação composta.
- Pequena variação temporal adicional na animação (ex.: easing ou etapa intermediária).
Observações¶
- Atividade introdutória: o foco é compreender o processo, não complexidade visual.
- Em caso de dúvida, comente o código e justifique decisões no texto de entrega.
Questões Teóricas¶
- Explique a diferença entre translação, rotação e escala em computação gráfica.
- Qual é a diferença entre transformar um objeto no espaço local e no espaço global?
- Em uma cena 3D, por que rotações em eixos diferentes podem gerar resultados visuais distintos?
- No Blender, por que usar
math.radians()ao definirrotation_eulerpor script? - Dê um exemplo prático de quando vale mais a pena usar Python em vez de transformar manualmente pela interface.
Critérios de avaliação (10,0 pontos)¶
- Modelagem básica da cena (2,0): presença e organização dos objetos 2D e 3D.
- Transformações 2D (2,0): aplicação correta de translação, rotação e escala em objetos planos.
- Transformações 3D (2,0): aplicação correta de translação, rotação e escala em sólidos.
- Python introdutório (2,0): script funcional criando e transformando objetos.
- Animação e apresentação (2,0): keyframes, legibilidade da cena e qualidade da entrega.