Archiv verlassen und diese Seite im Standarddesign anzeigen : Nicht-Bmp-Bilder mit SDL???
Tach
Hab schon diverse Tuts durchgelesen, jedoch bin ich auf kein Ergebnis gestoßen, welches funktioniert hat...
Wie zeige ich in SDL z.b. jpgs an? Ich kenn nur die möglichkeit mit SDL_LoadBMP(".."); (oder so ähnlich ^^) aber die geht ja nur mit bitmaps!!
anda_skoa
24-05-2003, 16:15
http://www.libsdl.org/projects/SDL_image/
Ciao,
_
Hab das schon längst installiert!
#include <stdlib.h>
#include "SDL.h"
#include "SDL_image.h"
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
SDL_Surface *image;
SDL_Rect dest;
SDL_Event event;
SDL_Surface *display; //Fenster-Variable definieren
//Video-Modus initialisieren
if (SDL_Init(SDL_INIT_VIDEO) < 0)
{
cout << stderr << "SDL konnte nicht initialisiert werden: " << SDL_GetError() << "\n" << endl;
exit (1);
}
//Fenster initialisieren: 800x600
display = SDL_SetVideoMode(800,600,16,SDL_SWSURFACE);
if (display == NULL)
{
cout << stderr << "Konnte kein Fenster mit 800x600 öffnen: " << SDL_GetError() << "\n" << endl;
exit (1);
}
//Bild laden
image = IMG_Load("tux.jpg");
if (image == NULL)
{
cout << stderr << "Bild konnte nicht geladen werden: " << SDL_GetError() << "\n" << endl;
exit (1);
}
//Events
SDL_EventState(SDL_MOUSEMOTION, SDL_IGNORE);
while(SDL_WaitEvent(&event) >= 0)
{
switch(event.type) {
case SDL_QUIT:
exit(0);
break;
}
}
atexit(SDL_Quit);
return 0;
}
Wenn ich das kompillieren will, dann kommt das:
/tmp/cchUNGSH.o(.text+0x11f): In function `main':
: undefined reference to `IMG_Load'
collect2: ld returned 1 exit status
anda_skoa
24-05-2003, 19:25
Vielleicht vergessen, die SDL_image lib beim Linken anzugeben?
Ciao,
_
Ich habs bisher so kompilliert:
g++ v1.cpp -o v1 -I/usr/include/SDL -D_REENTRANT -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread
muss da noch was zu, für die sdl-image-libs?
anda_skoa
24-05-2003, 20:15
Nun, ich kann nur raten.
Vermutlich -lSDL_image
Ciao,
_
Das isses! Danke, jetzt gehts! :)
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.