Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Building a platformer, a few questions!

Options
  • 16-07-2010 11:31am
    #1
    Registered Users Posts: 558 ✭✭✭


    Hi,

    I want to build a simple platform game, just so i can get into making more complicated games.

    I've done a couple simple games, namely Breakout and Pong, using OpenGL and the GLUT libraries.

    Making something bigger, like the platformer will be, will require something easier than GLUT to use, I've been reading a lot about SDL and it seems the way to go. I've built a few things with it, just loading textures on screen and that, and its far simpler and superior to GLUT (in my opinion anyway).

    The other option is Microsofts XNA game framework, which seems like a VERY simple way to go, and can still build very good, in depth games, despite its simplicity. The only trouble is that an XNA game wont play on linux(obviously) and it requires an install of XNA onto every machine you want to play the game on...not ideal for distribution.

    Anyway, my question to you all is, have any of you any experience with either of these technologies? Which would you recommend I use to build the platformer under? Is there any other alternatives I could use instead of either of these(except GLUT!! :))?

    The other thing I want to ask is, what would your recommendation be on building a simple 2D engine to run the game on? Obviously im going to need some classes to handle sprites and that sort of thing, but do i need a fully fledged engine? Maybe i could use a pre-built engine instead, just to get a ground work going?

    I didn't think this post was going to end up so long...sowwy!!:eek:

    All hints, discussions welcome, maybe we could make it a little community project out of it ;)!

    Thanks!!

    EDIT: Oh, meant to say, my language of choice for this would be C# cos it makes a lot of things simple but i can certainly work with java or c/c++ or even python if it came to it...


Comments

  • Registered Users Posts: 2,781 ✭✭✭amen


    The only trouble is that an XNA game wont play on linux(obviously)

    I wouldn;t worry about that. Linuix gaming in % is very small compare to PC/Console.
    and it requires an install of XNA onto every machine you want to play the game on...not ideal for distribution.

    True but you launch on the XBOX then you don't have this problem.

    You could prob bundle the installer for XNA into the game.


  • Registered Users Posts: 849 ✭✭✭Connavar


    Also as you say it's only to get into making more complicated games.
    Would the lack of support on other PCs be that much of a problem?


  • Registered Users Posts: 558 ✭✭✭wobbles-grogan


    Connavar wrote: »
    Also as you say it's only to get into making more complicated games.
    Would the lack of support on other PCs be that much of a problem?

    I guess it wouldn't actually. I'm running ubuntu so that's the only thing i was thinking about but i guess if its easier on windows then go for that first!


  • Registered Users Posts: 35 Lexor


    I've done a couple simple games, namely Breakout and Pong, using OpenGL and the GLUT libraries.

    Making something bigger, like the platformer will be, will require something easier than GLUT to use, I've been reading a lot about SDL and it seems the way to go. I've built a few things with it, just loading textures on screen and that, and its far simpler and superior to GLUT (in my opinion anyway).

    If you've already done projects in OpenGL/GLUT, why change? Doing games like Pong and Breakout should give you a pretty solid base to work from and you would have good deal of the work already done for a platformer, assuming a 2D one similar to Ghost 'n Goblins etc.
    The other thing I want to ask is, what would your recommendation be on building a simple 2D engine to run the game on? Obviously im going to need some classes to handle sprites and that sort of thing, but do i need a fully fledged engine? Maybe i could use a pre-built engine instead, just to get a ground work going?

    If I were you, I'd just keep going with what I already know!! Try and structure your code into a more general purpose 2D scrolling engine. Probably have a little bit more perserverance with OpenGL as you will find that it is quite easy to use once you get the hang of it. Also, I would not recommend using other people's engine when you are only beginning to make games and it is only by practice and learning from your mistakes that will make you a better programmer overall.

    HTH.


  • Registered Users Posts: 558 ✭✭✭wobbles-grogan


    Regarding your first point, I have built pong in OpenGL/GLUT completely, and it works and all.

    I could do the same using SDL, i just havent done it yet. All i'd have to do is implement the logic of moving the pads and the ball and that.
    I guess what im trying to say is, i've built a couple games with OpenGL but i could use SDL to the same degree at the moment.

    About the engine, i think your right. I'm doing alot of reading about it and I'm thinking that the overhead in building the engine wouldnt be worth it for what the game will be. I will need to have re-usable ways to do things, like rendering sprites, loading levels etc etc.

    It's just hard finding where to start with the thing :confused:


  • Advertisement
  • Registered Users Posts: 35 Lexor


    About the engine, i think your right. I'm doing alot of reading about it and I'm thinking that the overhead in building the engine wouldnt be worth it for what the game will be. I will need to have re-usable ways to do things, like rendering sprites, loading levels etc etc.

    I'll emphasise re-usable as this is absolutely key. Take loading sprites, which would include your actual game characters along with your tiled background for a 2D game. Write a class that can load a sprite from a graphics file (say TGA, BMP etc.) and will store the input data in a format that you require for your game (in say a sprite class). Now expand the class a little to 'cut' multiple sprites from a single graphics file (if required) to produce sprite animation. (and expand your sprite class to handle animation also). You now have the base for loading in all your graphics for your 2D game.

    Now that you have all your graphics loaded into memory consider rendering them to the screen. Write an openGL routine that renders the data in your sprite class to the screen. You now have the raw bones of a 2D platformer in three or so classes!!!
    It's just hard finding where to start with the thing

    1) Graphics loader class (to load BMP, TGA depending on your format of choice)
    2) Sprite class which extracts data from graphics class to create sprites and will hold all relevant information about the sprite (coords, width, height etc)
    3) Render class for rendering sprites to the screen..
    4) keyboard reader class..(for moving your main sprite on screen)

    If you complete 1,2,3 & 4 you have a very solid base for your platformer.

    Have fun!!


  • Closed Accounts Posts: 5,482 ✭✭✭Kidchameleon


    Hi,

    I have experience with XNA. To be honest its a real pain in the ass to work on a game for ages then not be able to share it with friends. To run an XNA game on a PC, the computer will need .NET and XNA installed (XNA is known for having installation problems). It will also need a graphics card capable on shader model 2. Not hard to find among developer friends, but if you try to give it to the general people out there, they will have lots of trouble appreciating your hard work. As far as deploying on XBOX is concerned, as far as I know, in Ireland you can submit to the Indie channel but the games are unavailable for purchase in ROI at the moment (correct me if im wrong on that but it was certainly true as of three months ago) These deployment problems have forced me to start learning SDL which is going well at the moment but its allot harder than XNA that's for sure. Anyway here is a link to a video of my finished XNA platformer, if you like it, please download it!!! Links are available on the youtube page. Oh if you want the source for that game and its level editor id be more than happy to pass it on to you, just pm me.

    Regards,

    Kid.

    http://www.youtube.com/watch?v=1SoxmiNB3P0


  • Registered Users Posts: 2,119 ✭✭✭p


    You should also check out this site:

    www.gamedevelopers.ie


  • Registered Users Posts: 558 ✭✭✭wobbles-grogan


    Thanks all!

    The gamedevelopers.ie site looks good. Thanks for the linky :-)

    Over the last day or so, i built a few simple classes in SDL to draw Sprites, Animations and play sounds. Thats one thing i like about SDL, it can play the sounds as well, unlike GLUT. Also, im using SDL.net, dunno if anyone has used that but its very useful and allows me to write the game in C#, rather than unfriendly c++.


Advertisement