PyOpenGL のドキュメントには次のように書かれています。
OpenGL と ctypes が配列データへのポインターなどを処理する方法のため、多くの場合、Python のデータ構造を確実に保持する (つまり、ガベージ コレクションを行わない) 必要があります。これは、コンテキスト固有のキーによってインデックス付けされたデータ値の配列にデータを格納することによって行われます。この機能を提供する関数は、OpenGL.contextdata モジュールによって提供されます。
正確にはいつですか?
私が考えている 1 つの状況は、OpenGL 1 から戻ってきたクライアント側の頂点配列ですが、何年もの間、バッファー オブジェクトに置き換えられてきました。バッファオブジェクトが満たされた後は、クライアント側の配列はもう必要ありません(=glBufferData
リターンの直後、私は強く主張します)。
見逃しているシナリオはありますか?