Nvidia カードの glGetString に問題があります。適切なコンテキスト設定があり、AMD カードを搭載した 3 台の個別の PC ですべて正常に動作します。画像の読み込みに SOIL を使用しているときに問題が発生しました。私のアプリケーションは、2 つの Nvidia テスト システムで SOIL の strstr 呼び出しでセグメンテーション違反を起こしていましたが、AMD システムではそうではありませんでした。
SOIL が拡張機能をチェックしているときに、glGetString が Nvidia システムの strstr に null ポインターを与えていることがわかりました。私は自分のアプリケーションで GL3.3 カードをターゲットにしているので、SOIL コードを変更して、拡張機能を列挙する非推奨の glGetIntegerv および glGetStringi メソッドを使用しました。今、すべてが正常に動作します。
私の問題は解決しましたが、そもそもなぜそれが問題だったのか混乱しています。Nvidia と AMD が廃止を強制する方法の違いだけですか?