So, I’ve been using the SPE particle system for years now. https://github.com/squarefeet/ShaderParticleEngine
Unfortunately the author no longer maintains the project. I’ve been able to patch things here and there as three.js evolves, but it seems I’ve hit a roadblock.
Three.js 118 seems to render a webgl2 context by default. For some reason that I cannot figure out, this is breaking the SPE shader. I am getting the error:
ERROR: 0:250: 'texture' : function name expected ERROR: 0:250: '=' : dimension mismatch ERROR: 0:250: '=' : cannot convert from 'const mediump float' to 'highp 4-component vector of float'
I am not awesome at debugging shaders but I have tried messing with it. No luck.
I have made a fiddle showing the error. Just switch the three.js version from 110 to 118.