Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

235
Views
Aplicar un sombreador de vértices en una malla, independientemente de su posición

Me gustaría aplicar algunos movimientos en mis mallas usando un vertex-shader. Noté que cuando traduzco mis mallas en mi escena, también mueve la posición de mi onda sinusal simple. Me gustaría tener la misma onda sinusoidal en mis dos mallas incluso si traduzco mis mallas en mi escena.

Tuve una primera pista con esta publicación: mantener el movimiento de vertexShader a pesar de su rotación de malla

Traté de reproducir esta solución pero me falta algo. Aquí está mi sombreador:

 uniform float uTime; void main() { mat4 translate = mat4(1.0); vec4 modelPosition = modelMatrix * vec4(position, 1.0); translate[3].y = sin(uTime * 2. + modelPosition.x *1.); vec4 modelPosition2 = modelMatrix * translate * vec4(position, 1.0); gl_Position = projectionMatrix * viewMatrix * modelPosition2; }

Creo que no debería aplicar mi modelPosition.x en la línea translate[3].y pero no sé cómo llamar en su lugar. Como puede ver en este codepen, mis aviones se ven diferentes: https://codepen.io/michaelgrc/pen/GRMxYBm

¿Alguien ve lo que me estoy perdiendo? Muchas gracias

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Necesitaba usar position.x en lugar de modelPosition.x para resolver mi problema:

 translate[3].y = sin(uTime * 2. + position.x);
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!