Herramientas · Generador de normal maps

Generador de normal maps: convierte cualquier imagen en mapas PBR

Suelta una foto o una textura y obtén normal map, height map, oclusión ambiental, roughness y specular en tiempo real. Revísalos iluminados sobre una esfera, un cubo o un plano y descarga PNG de hasta 4K o todo en un ZIP. Tu imagen no sale de tu dispositivo.

Cargando…

Cómo funciona

  1. Suelta una imagen PNG, JPG o WebP en la página, pégala con Ctrl+V o empieza con una de las texturas de ejemplo.
  2. Ajusta intensidad, suavizado y niveles de detalle mientras la vista previa se actualiza en vivo. Cambia el eje Y a DirectX si el mapa es para Unreal Engine.
  3. Comprueba el resultado en una esfera, un cubo, un plano o un cilindro. Gira la luz, repite la textura 2×2 y activa el desplazamiento para ver la profundidad.
  4. Elige la resolución y el estilo de nombres y descarga PNG sueltos o un ZIP con todos los mapas. Con Sin costuras la textura se repite sin bordes visibles.

Qué mapas obtienes

Todos los mapas se calculan a partir del brillo de tu imagen. Funciona mejor en superficies donde oscuro significa profundo y claro significa alto, como piedra, ladrillo, corteza, tela o placas de metal.

Normal map
Simula pequeños relieves y ranuras en la iluminación sin polígonos extra. Filtro (Sobel o Scharr), intensidad, tres niveles de detalle y eje Y ajustables.
Height map
Profundidad en escala de grises para desplazamiento, parallax y teselado. En PNG de 8 o 16 bits, la versión de 16 bits no tiene escalones.
Oclusión ambiental
Oscurece grietas y esquinas donde llega menos luz ambiental. Se calcula a partir del height map con radio y profundidad ajustables.
Roughness
Controla lo borrosos o nítidos que son los reflejos. Se deriva del brillo con una curva, un mínimo y un máximo.
Specular
Intensidad de reflexión para flujos specular y motores antiguos.
ORM empaquetado
Oclusión ambiental, roughness y metalness en los canales rojo, verde y azul de una sola textura, como lo esperan glTF y Unreal Engine. Metalness es 0.

Entrada y resultado: una imagen de ejemplo y una textura de la biblioteca

Este generador de normal maps (normal map generator o normal map maker) trabaja con una sola foto o textura. Calcula el normal map y los mapas de altura, oclusión ambiental, roughness y specular en tu tarjeta gráfica, así que ves cada cambio al instante sobre una forma 3D iluminada.

  • Foto de un muro de piedra gris como entrada

    Ejemplo muro de piedra

    Entrada
    La foto del muro de piedra de la lista de ejemplos del panel izquierdo, una imagen plana sin datos de profundidad.
    Resultado
    Mapas normal, height, AO, roughness, specular y ORM de hasta 4K, como PNG sueltos o un ZIP con los nombres de archivo que espera tu motor.

    Probar en el generador

  • Cofre del tesoro de madera con tapa abombada, bandas y esquineras doradas y placa de cerradura dorada

    Cofre del tesoro

    Entrada
    Cofre del tesoro de la biblioteca incluye un normal map horneado a partir de geometría real, junto a sus mapas base color, roughness y metallic.
    Resultado
    Ábrelo en el visor 3D y muestra el canal normal en la pestaña Texturas: una referencia de cómo se ve un normal map terminado en un asset de juego.

    Abrir en el visor 3DPágina del modelo

Cómo crear un normal map a partir de una foto

  1. Elige una foto o textura con luz uniforme y plana, sin sombras duras. Tomada de frente, la superficie se lee mejor.
  2. Suéltala en el generador. Sube Fino para grietas y grano pequeño, Grueso para formas grandes, y ajusta la intensidad.
  3. Elige el eje Y: OpenGL para Blender, Godot, Unity y glTF, DirectX para Unreal Engine.
  4. Gira la luz en la vista 3D. Si los relieves parecen hundidos, invierte la altura. Para texturas repetibles activa la opción sin costuras.
  5. Descarga el normal map en PNG y conéctalo a la entrada normal de tu material, con la textura como datos sin color (non-color).

Lo que no hace

  • Un normal map a partir de una foto estima la profundidad por el brillo. La pintura oscura puede parecer un hundimiento, así que revisa el resultado con la luz en movimiento.
  • Añade detalle de superficie, no forma. La silueta del modelo no cambia. Para geometría real usa el mapa de altura como desplazamiento o modela la forma.
  • Hornear un normal map de una malla high poly a una low poly es otro trabajo. Para eso usa Blender u otra herramienta de horneado.

Preguntas frecuentes

¿El generador de normal maps es gratis?

Sí. Funciona por completo en tu navegador, sin cuenta, sin marca de agua y sin límite. Los mapas que creas son tuyos y puedes usarlos en juegos comerciales.

¿Cómo se crea un normal map?

Suelta una foto o una textura en el generador, ajusta la intensidad y el detalle fino, medio y grueso, elige OpenGL o DirectX para el eje Y y descarga el PNG. La guía breve bajo la herramienta explica cada paso. La luz uniforme sin sombras duras da el resultado más limpio. Los mapas de altura, AO y roughness se generan a la vez.

¿Se sube mi imagen a un servidor?

No. La imagen se procesa en tu tarjeta gráfica con WebGL. No se envía nada, por eso la vista previa es lo bastante rápida para actualizarse mientras mueves un control.

Normal map OpenGL o DirectX, ¿cuál es la diferencia?

Las dos convenciones solo se diferencian en el canal verde (eje Y). Blender, Godot, Unity y glTF usan OpenGL (Y+). Unreal Engine y algunas herramientas antiguas usan DirectX (Y−). Si en tu motor los relieves parecen hundidos, cambia el eje Y y exporta de nuevo.

¿Puedo hacer una textura sin costuras?

Sí. Sin costuras mezcla los bordes de la imagen con una copia desplazada para que la textura se repita sin uniones visibles. Con Repetir 2×2 compruebas el resultado en la vista previa. Bordes repetibles por sí solo solo hace que los filtros den la vuelta al borde, para imágenes que ya se repiten.

¿Por qué mi normal map parece invertido?

El generador supone que los píxeles claros están altos. En imágenes donde lo oscuro sobresale, como remaches oscuros sobre una placa clara, activa Invertir altura. Si solo está cambiada la luz de arriba y de abajo, cambia el eje Y.

¿Qué resolución debo exportar?

La que tendrá la textura en el juego. 1K o 2K bastan para la mayoría de los props, 4K para superficies grandes y primeros planos. Escalar una imagen pequeña no añade detalle, Original mantiene el tamaño de tu imagen.

¿Una foto se convierte en un material PBR real?

El brillo solo es una estimación de la profundidad, así que los mapas son una aproximación. En superficies planas como paredes, suelos, tela o corteza el resultado suele convencer. Las fotos con sombras o brillos fuertes funcionan mejor si antes igualas la iluminación.

¿Cómo uso los mapas en Blender, Unity, Unreal o Godot?

El normal map va en un nodo o ranura de normal map con datos que no son color, el height map en desplazamiento, AO y roughness en sus ranuras. Para Unreal elige DirectX y los nombres T_, para glTF, Godot y Blender mantén OpenGL. La textura ORM va en la ranura empaquetada de oclusión, roughness y metallic.

Las tres texturas de ejemplo se generaron de forma procedural para esta herramienta y son CC0 (dominio público). Sobre la licencia →