Expresso Marketing
SobreServiçosPortfólioBlogCursosContato
Solicitar Proposta
Proposta
Expresso Marketing

Menu

  • Sobre
  • Serviços
  • Portfólio
  • Blog
  • Cursos
  • Contato
Solicitar Proposta
Expresso Marketing

Expressamos a essência da sua marca para o mundo

Links Rápidos

  • Sobre nós
  • Por que nós?
  • Portfólio
  • Blog
  • Cursos
  • Contato

Serviços

  • Marketing Digital
  • Criação de Sites
  • Gestão de Redes Sociais
  • SEO e Tráfego Pago
  • Automação de Marketing
  • Identidade Visual

Contato

  • dyonatan@expresso.marketing
  • (49) 99999-0000
  • WhatsApp
  • Rodovia SC 480, CEP 89816-126, Chapecó — SC
Solicitar Proposta

© 2026 Expresso Marketing. Todos os direitos reservados.

CNPJ 31.330.035/0001-12Marca registrada INPI (921.143.834)Política de PrivacidadeTermos de Uso
    Laboratório/Three.js + R3F
    <Points> · bufferGeometry · useFrame

    Three.js no React

    Sistema de 2.000 partículas com cores brand reage ao movimento do mouse. Renderizado direto no WebGL via React Three Fiber.

    React Three Fiber · @react-three/fiber

    Geometrias e efeitos 3D

    Cada cena usa uma técnica diferente do Three.js

    Wave Mesh

    PlaneGeometry com vértices animados via useFrame — perfeito para backgrounds de seção

    Floating Spheres

    5 esferas flutuantes com MeshStandardMaterial e animação de posição independente

    Torus Knot

    MeshNormalMaterial + rotação contínua. Elemento decorativo premium para hero ou seção de destaque

    Wireframe Box

    BoxGeometry em modo wireframe com luz colorida. Pode representar um logo abstrato ou elemento tech

    Código

    Padrões R3F

    Como estruturar componentes 3D no projeto

    Dynamic import obrigatório (sem SSR)
    const Scene = dynamic(
      () => import('./scene'),
      { ssr: false }
    );
    Loop de animação com useFrame
    useFrame(({ clock }, delta) => {
      mesh.current.rotation.y += delta * 0.5;
      mesh.current.position.y =
        Math.sin(clock.getElapsedTime()) * 0.3;
    });
    Canvas mínimo configurado
    <Canvas
      camera={{ position: [0, 0, 5], fov: 60 }}
      gl={{ antialias: true }}
    >
      <ambientLight intensity={0.5} />
      <pointLight position={[10, 10, 10]} />
      <MeuComponente3D />
    </Canvas>