提示コードですが以下のエラーが発生するのですがubuntu
上ではエラーにならずなぜwindows10
上ではエラーになるんでしょうか?
以下の一行を追加しましたが同じくエラーが出ます。調べましたがコンパイルエラーについての記事しかヒットせずどうすればいいのかわかりません。
cpp
1#include <GL/gl.h>
参考サイト:https://registry.khronos.org/OpenGL-Refpages/gl4/html/glTexImage2D.xhtml
Error
C:\Users\yw325\Desktop\FrameWork>make g++ -c -MMD -MP -Ilibrary -Ilibrary/freetype src/Init.cpp -o obj/Init.o g++ -c -MMD -MP -Ilibrary -Ilibrary/freetype src/Resource.cpp -o obj/Resource.o src/Resource.cpp: In function 'FrameWork::Texture FrameWork::LoadTexture(const char*)': src/Resource.cpp:44:34: error: 'GL_RG' was not declared in this scope; did you mean 'GL_R'? 44 | glTexImage2D(GL_TEXTURE_2D, 0, GL_RG, size.x, size.y, 0, GL_RG, GL_UNSIGNED_BYTE, data); | ^~~~~ | GL_R src/Resource.cpp: In function 'std::vector<FrameWork::Texture> FrameWork::LoadTexture(const char*, glm::vec2)': src/Resource.cpp:119:34: error: 'GL_RG' was not declared in this scope; did you mean 'GL_R'? 119 | glTexImage2D(GL_TEXTURE_2D, 0, GL_RG, textureSize.x, textureSize.y, 0, GL_RG, GL_UNSIGNED_BYTE, &data[50]); | ^~~~~ | GL_R make: *** [obj/Resource.o] エラー 1 C:\Users\yw325\Desktop\FrameWork>make g++ -c -MMD -MP -Ilibrary -Ilibrary/freetype src/Resource.cpp -o obj/Resource.o src/Resource.cpp: In function 'FrameWork::Texture FrameWork::LoadTexture(const char*)': src/Resource.cpp:45:34: error: 'GL_RG' was not declared in this scope; did you mean 'GL_R'? 45 | glTexImage2D(GL_TEXTURE_2D, 0, GL_RG, size.x, size.y, 0, GL_RG, GL_UNSIGNED_BYTE, data); | ^~~~~ | GL_R src/Resource.cpp: In function 'std::vector<FrameWork::Texture> FrameWork::LoadTexture(const char*, glm::vec2)': src/Resource.cpp:120:34: error: 'GL_RG' was not declared in this scope; did you mean 'GL_R'? 120 | glTexImage2D(GL_TEXTURE_2D, 0, GL_RG, textureSize.x, textureSize.y, 0, GL_RG, GL_UNSIGNED_BYTE, &data[50]); | ^~~~~ | GL_R make: *** [obj/Resource.o] エラー 1 C:\Users\yw325\Desktop\FrameWork>
環境
OS: windows 10
コンパイラ: g++
cpp
1 2 //テクスチャ生成 3 if(channel == 4) 4 { 5 //glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, textureSize.x, textureSize.y, 0, GL_RGBA, GL_UNSIGNED_BYTE, &data[1080 * 200]); 6 glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, textureSize.x, textureSize.y, 0, GL_RGBA, GL_UNSIGNED_BYTE, data); 7 8 // glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, textureSize.x / 2 , textureSize.y / 2, 0, GL_RGBA, GL_UNSIGNED_BYTE, &data[1080 * 4 * 540]); 9 10 } 11 else if(channel == 3) 12 { 13 glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, textureSize.x, textureSize.y, 0, GL_RGB, GL_UNSIGNED_BYTE, &data[50]); 14 } 15 else if(channel == 2) 16 { 17/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 18 glTexImage2D(GL_TEXTURE_2D, 0, GL_RG, textureSize.x, textureSize.y, 0, GL_RG, GL_UNSIGNED_BYTE, &data[50]); 19/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 20 } 21 else if(channel == 1) 22 { 23 glTexImage2D(GL_TEXTURE_2D, 0, GL_R, textureSize.x, textureSize.y, 0, GL_R, GL_UNSIGNED_BYTE, &data[50]); 24 } 25 else 26 { 27 std::cerr<<"未対応: " << fileName <<std::endl; 28 assert(0); 29 } 30
あなたの回答
tips
プレビュー