Assuming the new behavior of iOS/WebKit is intended, then you have to add a listener to the webglcontextrestored
event and recreate all WebGL entities (e.g. render targets used as environment maps) for your app. A webglcontextlost
event is not an error per se. It’s something that can happen at any time and WebGL apps in production should normally always properly react on this event.
That said, most three.js
demos ignore the webglcontextlost
event for simplicity reasons.