Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

C++/sdl anitmation hjälp!

Skapad av Borttagen, 2010-09-18 20:14 i Webbutveckling & Programmering

918
3 inlägg
1 poäng
detvanliga
Visningsbild
Hjälte 381 inlägg
1
har sutit i 2 timmar streck nu utan att få detta o fungera, jag har en bild med 3 stycken träd på i en serie, det är alltså en animation, den än 300x100, men när jag ska måla ut den i mitt spel så hammnar den helt fel! trädets hit box sitter rätt, och när jag gör trädet så får hit boxen och spriten cordinater från samma variabel om vart de ska vara. men det blir fel endå! hä rär koden för hela trädet..

Visa spoiler
/* begining of class tree1 */

class tree1
{

private:
SDL_Rect Cbox;
SDL_Rect Sclip[2];
int x, y;
SDL_Surface *sprite;
int frame;

public:
tree1( int X, int Y );
~tree1();
void drawSprite();

};

tree1::tree1( int X, int Y ):
x( X ),
y( Y ),
frame( 0 )
{
Cbox.x = X;
Cbox.y = Y;
Cbox.w = 100;
Cbox.h = 150;
sprite = loadImage( "tree1_SDL_setting upp.png" );

Sclip[0].x = 0;
Sclip[0].y = 0;
Sclip[0].w = 100;
Sclip[0].h = 150;

Sclip[1].x = 100;
Sclip[1].y = 0;
Sclip[1].w = 100;
Sclip[1].h = 150;

Sclip[2].x = 200;
Sclip[2].y = 0;
Sclip[2].w = 100;
Sclip[2].h = 150;
}

tree1::~tree1()
{
SDL_FreeSurface( sprite );
}

void tree1::drawSprite()
{

frame++;
if( frame >= 3 )
frame = 0;

Draw( x, y, sprite, screen, &Sclip[frame] );

}

/* end of class tree1 */

Ingen status

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

detvanliga
Visningsbild
Hjälte 381 inlägg
Trådskapare
0
här e Draw funktionen btw, men den är helt rätt, men man vet ju alldrig ^^
Visa spoiler
void Draw( int x, int y, SDL_Surface *source, SDL_Surface *destination, SDL_Rect *clip = NULL )
{

SDL_Rect offset;
offset.x = x;
offset.y = y;
SDL_BlitSurface( source, clip, destination, &offset );

}


och funktionen för att ladda bilderna

Visa spoiler
SDL_Surface *loadImage( std::string filename )
{

SDL_Surface *loadedImage = NULL;
SDL_Surface *optimizedImage = NULL;

loadedImage = IMG_Load( filename.c_str() );

if( loadedImage != NULL )
{
optimizedImage = SDL_DisplayFormat( loadedImage );
SDL_FreeSurface( loadedImage );

if( optimizedImage != NULL )
{
Uint32 colorKey = SDL_MapRGB( optimizedImage->format, 0, 255, 255 );
SDL_SetColorKey( optimizedImage, SDL_SRCCOLORKEY, colorKey );
}
}
return optimizedImage;

}

Ingen status

detvanliga
Visningsbild
Hjälte 381 inlägg
Trådskapare
0
fixade det! ngt konstigt fel i construktiorn..
funkade inte o göra om x till X och y till Y på det vanliga sättet, alltså såhär:

Visa spoiler
tree1::tree1( int X, int Y ):
x( X ),
y( Y )
{
}


var tvungen o göra om x och y till collition boxens x och y efter att jag hadde flyttat dom till X och Y .. konstigt..

Ingen status


Forum » Datorer & IT » Webbutveckling & Programmering » C++/sdl anitmation hjälp!

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

1 utloggad

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons