ポイント ライトのシャドウを作成できるように、キューブ マップを使用して OpenGL でシャドウ マッピングをセットアップしようとしています。
以下はGL_INVALID_ENUM
私に投げかけます:
for (uint32_t i = 0; i < 6; i++)
GLCALL(glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, GL_DEPTH_COMPONENT32, windowWidth, windowHeight, 0, GL_DEPTH_COMPONENT32, GL_FLOAT, 0));
ドキュメントによると、おそらくこれが原因です:
GL_INVALID_ENUM is generated if target is one of the six cube map 2D image targets and the width and height parameters are not equal.
そして、幅/高さが異なる場合、それらは実際には立方体ではありませんが、1920x1080 のような画面解像度またはその他の解像度がある場合、これは問題になります。
おそらく、関数呼び出しに何を提供するかを誤解していますが、ウィンドウの幅/高さではありませんか? パラメータはどうあるべきですか?