Anzeige:
Ergebnis 1 bis 7 von 7

Thema: Nicht-Bmp-Bilder mit SDL???

  1. #1
    Registrierter Benutzer
    Registriert seit
    15.04.2003
    Beiträge
    29

    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!!
    Gruß
    Avirell

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    15.04.2003
    Beiträge
    29
    Hab das schon längst installiert!

    Code:
     
    #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
    Geändert von Avirell (24-05-2003 um 17:22 Uhr)
    Gruß
    Avirell

  4. #4
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Vielleicht vergessen, die SDL_image lib beim Linken anzugeben?

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  5. #5
    Registrierter Benutzer
    Registriert seit
    15.04.2003
    Beiträge
    29
    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?
    Gruß
    Avirell

  6. #6
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Nun, ich kann nur raten.

    Vermutlich -lSDL_image

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  7. #7
    Registrierter Benutzer
    Registriert seit
    15.04.2003
    Beiträge
    29
    Das isses! Danke, jetzt gehts!
    Gruß
    Avirell

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •