knitr
にrgl
を使用すると、複数のWebGLシーンを含むドキュメントを別々のディスプレイに書き込むことができます。それらのそれぞれは、キャンバスを作成し、それに関連付けられたWebGLコンテキストを取得し、次にWebGLプロットを行います。コンソールはコンテキストを復元するにはどうすればよいですか?
Exceeded 16 live WebGL contexts for this principal
が表示されますし、私が取得します(Firefoxで)
ユーザーが単一のHTMLページに表示され、任意の数を求めることができ、最終的に彼らは、コンテキストを使い果たすだろう、とWebGLcontextlostイベント。ページをスクロールすると、初期の表示はすべて空白になり、後の表示のみが表示されます。
現在ウィンドウに表示されているものを復元する方法を聞かれますか?
編集の追加:この質問のバリアント:表示にスクロールしたときに描画するようにキャンバスを設定するにはどうすればよいですか?典型的なケースでは、一度に1つまたは2つのコンテキストしか表示されないので、両方のコンテキストを描画しても問題ありません。しかし、コードはそのことがいつ起こるかを伝える必要があります。
このWebページを:私はWebGLcontextrestored
イベントをトリガする方法を知りませんが、私は私の質問にバリアントに答えることができ
その他の解決策があります。 [1つのキャンバスを使用し、ビューポートをレンダリングする](http://stackoverflow.com/questions/30541121/multiple-webgl-models-on-the-same-page) [1つのWebGLキャンバスと複数の非webglキャンバスの使用](http://stackoverflow.com/questions/15824840/display-different-scenes-sharing-resources-on-multiple-canvases)コンテキストが表示されている場合のみ参照してください。画面上のレンダリングについてのみ、https://github.com/greggman/requestanimationframe-fix.jsを参照してください。 – gman