Я пытаюсь использовать imageload для открытия изображения, но получаю ошибку «Преобразование из строкового литерала теряет спецификатор const», и я не могу обойти этот устаревший синтаксис и успешно открыть изображение. Я пробовал разные способы определения изображения и «floor.bmp», но никто не смог открыть изображение для меня. полный код находится здесь https://www.programming-techniques.com/2012/01/how-to-do-texture-mapping-in-opengl-a-sample-example.html.
Image* loadTexture() {
Image* image1;
// allocate space for texture
image1 = (Image*)malloc(sizeof(Image));
if (image1 == NULL) {
printf("Error allocating space for image");
exit(0);
}
if (!ImageLoad("floor.bmp", image1)) {
exit(1);
}
return image1;
}
1>------ Build started: Project: OpenGL, Configuration: Debug|Win32 ------
main.cpp
C:\Users\Nikou K\source\repos\OpenGL\OpenGL -A2 Q2\main.cpp(208,8): error C2664: 'int ImageLoad(char *,Image *)': cannot convert argument 1 from 'const char [10]' to 'char *'
C:\Users\Nikou K\source\repos\OpenGL\OpenGL -A2 Q2\main.cpp(208,20): message : Conversion from string literal loses const qualifier (see /Zc:strictStrings)
C:\Users\Nikou K\source\repos\OpenGL\OpenGL -A2 Q2\main.cpp(60,5): message : see declaration of 'ImageLoad'