Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

458
Vistas
ThreeJS: Shader UV no definido si el modelo glTF no contiene textura

Estoy importando un modelo glTF que contiene un conjunto UV, y quiero asignarle una textura dinámicamente en ThreeJS inyectando código de sombreado en el existente usando onBeforeCompile() .

Hasta ahora todo funciona, sin embargo, si elimino la textura de prueba del modelo en Blender y la vuelvo a exportar, el sombreador se niega a compilar con un error vUv undeclared identifier . Al ver los atributos del búfer de geometría en la consola de depuración, los mapas UV parecen estar definidos, pero no se definen en el sombreador por algún motivo.

No quiero exportar el modelo con una textura, eso significaría cargar la textura dos veces (una cuando se cargó el modelo, una vez cuando la textura se carga dinámicamente).

¿Alguien sabe cómo evitar esto?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

los mapas UV parecen estar definidos, pero no se definen en el shader por alguna razón.

Eso sucede porque los materiales incorporados solo definen la variación de vUv si los mapas se muestrean en el sombreador de fragmentos. Dado que ha eliminado todos los mapas de su activo, no se define ninguna variación.

Una solución para resolver el problema es definir la variación manualmente a través onBeforeCompile() sobrescribiendo el fragmento del sombreador uv_pars_fragment con solo varying vec2 vUv; .

about 4 years ago · Juan Pablo Isaza Denunciar

0

Después de un poco de excavación, descubrí que solo puedo configurar

 material.defines.USE_UV = '';

Y habilitará los UV para el modelo.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda