Cómo animar el dibujo de una malla en three.js

Tengo una malla en forma de cinta hecha de una geometría de búfer, cuyas caras son invisibles. Estoy usando un sombreador personalizado para esto:gl_FragColor = vec4(1.0,1.0,1.0,0.0).

A medida que se mueve un 3DObject a lo largo de la cinta, difundo el índice de las caras sobre las que se encuentra y actualizo el sombreador para hacerlas.

No estoy satisfecho con el efecto, ya que resulta en una animación bastante gruesa. Si agrego más caras, entonces obtengo un gran éxito en el rendimiento.

¿Habría alguna forma de actualizar el alfa del fragmento en función de la posición del objeto 3D sin tener que recurrir a caras enteras?

En una nota al margen: también he intentado recortar la cinta de la vista, en función de las posiciones de píxeles x / z. El efecto es perfecto, el rendimiento es bueno, pero obtengo efectos no deseados cuando la cinta hace giros bruscos.

Respuestas a la pregunta(1)

Su respuesta a la pregunta