Användarprofil

Uppgifter
Användarnamn
Email
Besök -
Hemsida Ingen
Plats (stad)
Senaste besök 01:00 - 1:a Januari 1970
Poster i forumet
Varningar
Grupp
Medlem sedan 01:00 - 1:a Januari 1970
Artiklar och filer
Den här användaren har inga artiklar eller filer

Avatar


Presentation av

Den här användaren har inte skapat någon personlig presentation.

Senaste inläggen i forumet

SDL (hjälp)
Tack.Smiley

Postad 16:45 - 16:e Februari 2009
SDL (hjälp)
Hur lägger man upp två eller flera bilder i SDL?
Jag har försökt, men då blinkar bara bilderna och hakar när man försöker röra dem.

Kod:

//Visar vart programmet ska leta efter filerna.
#ifdef WIN32
#pragma comment(lib, "SDL.lib")
#pragma comment(lib, "SDLmain.lib")
#endif

//Inkluderar bibliotek.
#include <SDL.h>
#include <iostream>

using namespace std;

//Skärmen som bilden visas på.
int DisplayImage(SDL_Surface* destination, const char*, int x, int y) {

    //Laddar bilden.
    SDL_Surface* bakgrund;
    SDL_Surface* image;
    bakgrund = SDL_LoadBMP("bakgrund.bmp");
    image = SDL_LoadBMP("test.bmp");
    if (image == NULL) {
        cout<< "Image could not be loaded." << endl;
        SDL_Quit();
        return 1;
    }

    //Vart bilden laddas upp.
    SDL_Rect rect;
    rect.x = x;
    rect.y = y;
    rect.w = image->w;
    rect.h = image->h;

    SDL_BlitSurface(image, NULL, destination, &rect);
    SDL_BlitSurface(bakgrund, NULL, destination, &rect);

    return 0;

}

//Programmets main funktion.
int main(int argc, char *argv[]) {
    SDL_Surface *screen;
    SDL_Event event;
    int imgX=0,imgY=10;

    //Intierar SDL.
    if (SDL_Init(SDL_INIT_AUDIO|SDL_INIT_VIDEO) < 0) {
        cout<< "Error, unable to initalize SDL: " << SDL_GetError() << endl;
        SDL_Quit();
        return 1;
    }

    else {
        cout<< "Succsesfully initalized SDL!" << endl;
    }

    //Ställer in höjd, bredd, färger. hårdvara och buff.
    screen = SDL_SetVideoMode(640, 480, 16, SDL_HWSURFACE|SDL_DOUBLEBUF);

    if (screen == NULL) {
        cout<< "Unable to set video mode: " << SDL_GetError() << endl;
        SDL_Quit();
        return 1;
    }

    else {
        cout<< "Succsesfully set video mode!" << endl;
    }

    //Gör så att bilden ritas ut flera gånger för den är i en loop.
    while(1) {
        SDL_PollEvent(&event);
        switch(event.type)
        {
        case SDL_QUIT:
            cout<< "Terminating program!" << endl;
            SDL_Quit();
            return 0;
        case SDL_KEYDOWN:
            Uint8 *keys;

            //Vart bilden ska ritas ut (rör på sig).
            keys = SDL_GetKeyState(NULL);
            if (keys[SDLK_UP])
                imgY -= 5;
            if (keys[SDLK_DOWN])
                imgY += 5;
            if (keys[SDLK_LEFT])
                imgX -=5;
            if (keys[SDLK_RIGHT])
                imgX +=5;
            if (keys[SDLK_ESCAPE])
            {
                cout<< "Terminating program!" << endl;
                SDL_Quit();
                return 0;
            }
        }


        //"Suddar" ut bilderna innan så att det inte blir massor av bilder (fyller bakgrunden med svart innan bilden ritas).
        SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format, 0x00, 0x00, 0x00));

                //Ritar ut bild.
        DisplayImage(screen, "bakgrund.bmp", 0, 0);
        SDL_Flip(screen);
        SDL_Delay(25);

        //Ritar ut bild.
        DisplayImage(screen, "test.bmp", imgX, imgY);
        SDL_Flip(screen);
        SDL_Delay(25);

    }

    //Stänger programmet.
    SDL_Quit();

    //Visar att det har slutat som det ska.
    return 0;

}


Postad 11:06 - 15:e Februari 2009
Programmerings språk.
Vilket språk borde man lära sig? Jag kan lite i c++ men jag hittar inga böcker om det, så jag funderar på att byta. Och vilka/vilket är bäst för spelprogrammering?

Tacksam för svar.Smiley

Postad 20:33 - 20:e Januari 2009
Nya medlemmar
Välkommna. ^^

Postad 23:09 - 12:a December 2008
Skryt med era datorer! :D
Kan du inte ta bort ESC knappen då med en kniv eller något, ta bort brödsmulan och sen sätta dit den igen?Smiley

Postad 07:35 - 8:e December 2008

Skicka meddelande
Läs s blog