Modificadores de sombreador SceneKit con matrices GLSL

Estoy tratando de pasar una serie de puntos a un modificador de sombreador en SceneKit, pero no puedo resolver la sintaxis correcta. En mi código de extensión de sombreador tengo:

uniform vec2 points[100];

Si llamo ...

material.setValue(NSValue(point: CGPoint(x: 100.5, y: 50.5)), forKey: "points")

... luego establece el valor depoints[0], lo que me hace pensar que tal vez no sea posible. He probado muchas otras combinaciones tanto para la clave como para el valor, pero nada parece funcionar.

¿Hay una mejor manera de hacer esto? Mi objetivo final es modificar el color difuso de la superficie para un conjunto de puntos en la matriz, y usar la representación predeterminada de lo contrario. ¿Hay una mejor manera de hacer esto en el sombreador que hacer un bucle sobre una matriz devec2s?

Gracias por tu ayuda.

Respuestas a la pregunta(1)

Su respuesta a la pregunta