MÓDULO 3.3

🏍️ Motorcycle Commercial (Three.js)

Showcase cinematográfico: câmera orbita enquanto luzes de estúdio revelam o reflexo metálico da lataria. Nada mais na lista cria cenas 3D convincentes — Three.js é a escolha inequívoca para produto visual premium.

6
Seções
~45
min
Three.js
Lib
4K
Render alvo
1

🎥 Cenário: o comercial que parece real

Uma fabricante de motos precisa de um comercial premium para digital. Budget zero para estúdio real, mas o produto tem que parecer que saiu de uma concessionária de luxo. Three.js com materiais PBR entrega esse nível de qualidade — sem uma câmera física.

objeto 3D — demonstração ao vivo
metalness: 0.9
roughness: 0.1
PBR material

Three.js é ideal quando…

Produto físico precisa de visualização realista
Câmera orbita ao redor de um objeto 3D
Iluminação de estúdio com reflexo metálico

Three.js não é a melhor escolha quando…

Storytelling de texto e UI (→ GSAP)
Infográficos de dados (→ D3)
Micro-animações de app (→ Lottie)
WebGL
renderização GPU
PBR
materiais físicos
Scene
grafo de objetos
Camera
perspectiva 3D
2

💡 Iluminação de Estúdio: três pontos de luz

A iluminação três pontos é o padrão fotográfico de produto que transforma qualquer mesh em objeto desejável. Key light revela a forma. Fill light suaviza as sombras. Rim light separa o produto do fundo escuro.

KEY LIGHT intensidade 1.5 🏍️ mesh 3D FILL LIGHT intensidade 0.6 RIM LIGHT atrás do objeto plano reflexivo sutil — FogExp2 escurece bordas

💡 Rim light é o segredo

O rim light (luz de aro) é o que separa o objeto escuro do fundo escuro. Sem ele, a moto se funde com o background #0a0a0a. Posicione-o diretamente atrás, intensidade 0.3–0.5, e use a cor da marca para personalidade.

Key 1.5
forma principal
Fill 0.6
sombras suaves
Rim 0.4
separação do fundo
Ambient 0.1
base mínima
3

🪞 Material PBR: o brilho de concessionária

PBR (Physically Based Rendering) significa que o material responde à luz como material real. Com metalness=0.9 e roughness=0.1, a pintura da moto reflete o ambiente como lacagem automotiva premium.

material PBR — configuração
const material = new THREE.MeshStandardMaterial({
  color: 0x1a0050,        // roxo escuro da marca
  metalness: 0.9,         // quase metal puro
  roughness: 0.1,         // superfície polida
  envMap: cubeRenderTarget.texture, // reflexo ambiente
  envMapIntensity: 1.2,
});

Configurações que funcionam

metalness 0.85–0.95 + roughness 0.05–0.15
envMap cúbico para reflexo de ambiente realista
clearcoat=0.8 para efeito verniz sobre lacagem

Erros comuns de material

MeshBasicMaterial — sem resposta à luz
roughness=0 — reflexo perfeito parece plástico
Sem envMap — superfície plana sem profundidade
metalness
0=plástico 1=metal
roughness
0=espelho 1=fosco
envMap
reflexo realista
clearcoat
verniz automotivo
4

🌀 Órbita de Câmera: o arco cinematográfico

A câmera percorre um arco ao redor do objeto via Math.sin e Math.cos do frame atual. O movimento é lento e deliberado — 0.3–0.5 rotação por segundo — como câmera de cinema de alta gama seguindo o objeto.

órbita de câmera — demonstração ao vivo
câmera
camX = sin(frame/fps * speed) * radius
camZ = cos(frame/fps * speed) * radius
speed = 0.4 rad/s
radius = 4 units

💡 Velocidade define o caráter

Câmera lenta (0.2–0.4 rad/s) = marca premium, confiante, sofisticada. Câmera rápida (1+ rad/s) = energia, esporte, juventude. Para um comercial de moto de luxo, velocidade lenta é sempre a escolha certa.

Math.sin/cos
arco perfeito
0.4 rad/s
ritmo premium
lookAt(0,0,0)
foco no objeto
Arco parcial
30s = ~180°
5

💬 O Prompt Completo

Este é o prompt literal que você dá ao Claude Code (com skill Remotion ativa). Cada requisito do prompt mapeia para um elemento da cena Three.js — o Claude gera a composição completa com React Three Fiber integrado.

prompt — copie e use
Build a cinematic motorcycle showcase.
Requirements:
Studio lighting,
Rotating camera orbit,
Slow dramatic movement,
Metallic reflections,
Dark background.
Render as a commercial-style product presentation.

💡 "Studio lighting" e "Metallic reflections"

Essas duas palavras ativam o conhecimento de Three.js do Claude para configurar o sistema de três pontos de luz e o material MeshStandardMaterial PBR. Sem elas, o Claude pode usar iluminação plana e material básico — resultado amador.

"cinematic"
tom dramático
"studio"
3-point lighting
"metallic"
PBR material
"commercial"
padrão de qualidade
6

🏆 Render 4K e Deliverable Premium

Com a composição aprovada no preview, o render 4K com antialias gera o MP4 final. A qualidade é indistinguível de marketing automotivo profissional — e custou horas, não dias.

Build order: da cena ao comercial

1

Scene e câmera

Crie a cena Three.js dentro de um useEffect no Remotion. Camera perspectiva fov=45, posição inicial em (4, 2, 4).

2

Mesh e material PBR

Carregue o GLTF da moto com GLTFLoader. Aplique MeshStandardMaterial com metalness/roughness. Valide estático antes de animar.

3

Sistema de iluminação

Adicione as três luzes. Ajuste intensidades até a moto parecer "de concessionária". Confirme que o rim light separa do fundo.

4

Conectar câmera ao frame

Camera.position.x = sin(frame/fps * 0.4) * 4. Renderize o frame no Three.js DEPOIS de atualizar a câmera — determinístico.

4K render
3840×2160
Antialias
sem serrilhado
Instagram
9:16 story
YouTube
16:9 landscape

📋 Resumo do Módulo 3.3

← Population Shift Próximo: Banking Onboarding →