現在、私の関数は次のようになります。EGLエラー文字列を照会する標準的な方法はありますか? <code>eglGetError()</code>の結果を変換する
std::string eglErrorString(EGLint error)
{
switch(error)
{
case EGL_SUCCESS: return "No error";
case EGL_NOT_INITIALIZED: return "EGL not initialized or failed to initialize";
case EGL_BAD_ACCESS: return "Resource inaccessible";
case EGL_BAD_ALLOC: return "Cannot allocate resources";
case EGL_BAD_ATTRIBUTE: return "Unrecognized attribute or attribute value";
case EGL_BAD_CONTEXT: return "Invalid EGL context";
case EGL_BAD_CONFIG: return "Invalid EGL frame buffer configuration";
case EGL_BAD_CURRENT_SURFACE: return "Current surface is no longer valid";
case EGL_BAD_DISPLAY: return "Invalid EGL display";
case EGL_BAD_SURFACE: return "Invalid surface";
case EGL_BAD_MATCH: return "Inconsistent arguments";
case EGL_BAD_PARAMETER: return "Invalid argument";
case EGL_BAD_NATIVE_PIXMAP: return "Invalid native pixmap";
case EGL_BAD_NATIVE_WINDOW: return "Invalid native window";
case EGL_CONTEXT_LOST: return "Context lost";
}
return "Unknown error "+to_hex_string(int(error));
}
しかし、例えばのためにOpenGL自体にはgluErrorString()
があるため、手動でエラーのリストを管理する必要がありません。
EGLにはgluErrorString()
のようなものがありますか?
GLUを使用している場合のみ 'gluErrorString'が利用可能です。現代のコードにはあまり関係ありません。実際には、無効なフレームバッファや失われたコンテキストのように、 'glGetError'が返すことができる最近のいくつかのエラーを処理しません。したがって、手動でエラーを管理する方がよいでしょう。 –
@NicolBolasあなたの言葉の正確さを確信しているなら、なぜ答えに入れないのですか? – Ruslan
あなたの質問は、EGLのための 'gluErrorString'のような関数があるかどうかについてでした。私のコメントは、自分のことを気にする必要はなく、自分のことだけを維持すべきだと言いました。それがあなたの問題を解決する間、あなたが尋ねた質問に本当に答えません。私が知っている限り、標準的な 'egluErrorString'関数がいくつか存在する可能性があります。それはあなたの質問に対する答えです。 –