0

私たちは小さな開発チームで、古いグラフィックス カードをコンパイルするには大きすぎるかもしれない GLSL を扱っています。これが発生した場合、エラーのタイプに基づいて、(単に情報ログをダンプしたり、一般的な「このシェーダーは機能しませんでした」タイプのメッセージを出力したりするのではなく)、適切なエラー メッセージをユーザーに表示したいと考えています。

問題は、ATI と nVidia ではこれらのエラー メッセージの規則が異なり、シェーダーで発生したエラーの種類を判断する唯一の方法は、glGetShaderInfoLog によって生成されたエラー文字列を解析することです。

それを考えると、どこかにリストがありますか、またはATIとnVidiaカードの両方のエラー出力がどのように見えるかを誰かが知っていますか? または、命令の制限を超えたことを検出するより良い方法はありますか?

4

1 に答える 1

1

現在、エラー メッセージがどのように表示されるかを知っていても、nVidia と ATI には、次のバージョンのドライバーで同じメッセージを維持する義務はありません。基本的に、デバッグ以外の目的で信頼することはできません。

ベンダーの拡張機能がより具体的な診断情報を提供できるかどうかを確認します。

于 2009-08-16T04:34:42.220 に答える