Jump to content
  • Advertisement

Peter Dreyer

  • Content count

  • Joined

  • Last visited

Community Reputation

108 Neutral

About Peter Dreyer

  • Rank
  1. Peter Dreyer

    social game development

    You didn't really supply much information. What language are you using? What type of social game is it? The only database I can think of offhand is MySQL.
  2. Peter Dreyer

    C++ - Is Goto a Good Practice?

    Stay away from the evil goto statement in C++. it may seem nice until your project gets larger at which point they'll help to create 'spaghetti code'. C++ is made so that you don't have to use them. The only time you should need to use goto statements in in Assembly.
  3. The design of a game depends on your own style and thought process. Some games such as pong may be more trivial(paddles are a class and the ball is a class) while other things such as complete game engines may require more work. In my opinion, it boils down to just looking at the concept for a game you thought up and analyzing it to find the best way to put it together. I would suggest starting with pong and SDL like other people have mentioned and work your way up from there.
  4. Peter Dreyer

    SDL_BlitSurface() Problem

    Thanks for your help Servant of the Lord! For the record, I did check the return result of the blitting function several times and I didn't just assume that result as my post made it look. I've just tested it again and it worked.
  5. Hey everyone, I just started game development in C++ with SDL and I'm having some trouble with the SDL_BlitSurface() function. Basically, if i try to blit a surface using NULL for the two SDL_Rects, the image will be blitted as it should be. If I try to blit only a certain portion of the image, it won't work and returns -1. Any ideas? Main.cpp [source lang="cpp"] int main ( int argc, char** argv ){ SDL_Surface* screen = NULL; SDL_Init(SDL_INIT_VIDEO); screen = SDL_SetVideoMode(DEFAULT_WINDOW_WIDTH,DEFAULT_WINDOW_HEIGHT,DEFAULT_WINDOW_COLOR_DEPTH, SDL_SWSURFACE); SDL_WM_SetCaption(WINDOW_TITLE,NULL); SDL_Surface* DefaultFontSheet = SDL_LoadBMP("font.bmp"); SpriteSheetReader ssr; ssr.setSpriteSheet(DefaultFontSheet); ssr.setSpriteSize(12,12); SDL_Surface* letter = ssr.getSprite(1,1); SDL_BlitSurface(letter, NULL, screen, NULL); SDL_Flip(screen); MainLoop(); }[/source] SpriteSheetReader.h [source lang="cpp"] //Sprite Sheet Reader version 1.00 //Peter Dreyer //10 November 2012 class SpriteSheetReader{ public: //spriteSheet Getters and Setters void setSpriteSheet(SDL_Surface* spriteSheet); SDL_Surface* getSpriteSheet(void); //Sprite Size Controlling void setSpriteSize(int width, int height); SDL_Rect getSpriteSize(); //Sprite Retrieval SDL_Surface* getSprite(int x, int y); private: SDL_Surface* spriteSheet; SDL_Rect spriteRect; }; void SpriteSheetReader::setSpriteSheet(SDL_Surface* ss){ this->spriteSheet = ss; } SDL_Surface* SpriteSheetReader::getSpriteSheet(void){ return this->spriteSheet; } void SpriteSheetReader::setSpriteSize(int width, int height){ this->spriteRect.w = width; this->spriteRect.h = height; } SDL_Rect SpriteSheetReader::getSpriteSize(void){ return spriteRect; } SDL_Surface* SpriteSheetReader::getSprite(int x, int y){ this->spriteRect.x = x * this->spriteRect.w; this->spriteRect.y = y * this->spriteRect.h; SDL_Surface* Sprite; SDL_BlitSurface(spriteSheet, &this->spriteRect, Sprite, NULL); return Sprite; } [/source] I've done some testing and found that I can blit the whole sprite sheet and the problem is only introduced when I start trying to use the SDL_Rects.
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!