Noob game programmer...need help!!!

I am just starting out as a game programmer and I am taking AP comp sci at my high school, but now i am making a game and i dont know where to start. I know the basics of programming in c++ but i dont know what to do about graphics especially and also how to do a simple multiplayer game. I was hoping to make a bomberman clone...so any help will be greatly appreciated.

Thanks

JBW2k2

Comments

  • SephirothSephiroth Fayetteville, NC, USA
    : I am just starting out as a game programmer and I am taking AP comp sci at my high school, but now i am making a game and i dont know where to start. I know the basics of programming in c++ but i dont know what to do about graphics especially and also how to do a simple multiplayer game. I was hoping to make a bomberman clone...so any help will be greatly appreciated.
    :
    : Thanks
    :
    : JBW2k2
    :
    :
    Well, the way I see it you've got to make a decision first, as far as graphics go. Do you want a game that looks standard and runs on almost any card, or do you want to make a game for gamers that looks TOTALLY awesome? This also includes the "how much headache and time can I spend on this project" question.

    DirectX is great for insuring stability on a wide range of video cards, but doesn't run as fast as OpenGL/OpenAL, and it isn't quite as pretty. On top of this, it is a pain in the rump to learn.

    Now, OpenGL is faster by far, and much easier to pick up (you could pick up on it and have a full rendered and dynamically lit world in about four to six hours). The only downside to GL is that it won't run on video cards that are not OpenGL-compliant. It will run on cards that are compliant, even if they're not 100% compliant, such as most ATI cards. Running GL on these cards may just cause a minor problem like the gamma not adjusting properly and making the game dark, or it could be as big as seeing through polygons (I knew somebody who bought an ATI to run Infiltration in GL mode so he could see through walls and get mass kills).

    The choice is totally up to you. OpenGL can run on any OS out there (MacOS, Windows, Linux, Unix, etc) while DX is M$ only, which means Windoze. This means that if for some reason you wanted to pick up C++ in Linux/Unix as well (I code C/C++ on Win and Linux), you could port your game for Linux/X-Win users if you choose GL! As for my personal experience, I spent over a month playing with DX and stumbling horribly. It's backwards from Glide, GL, AL, and regular software in many aspects and it slowed my learning down. I then spent four or five hours reading up on GL and wound-up with a 3D engine that same day with textures and lighting. Now if only I could figure out collision-detection!

    GL Tutorials:
    http://nehe.gamedev.net/ <=--This is where I learned
    http://www.gamedev.net/
    http://www.opengl.org/

    DirectX:
    http://msdn.microsoft.com/

    That's the only DX site I can think of, but I know there are others out there. I'm sure I'll get flamed once again for saying GL rocks and is easier to learn, because I have several regulars who are DX-fanatics (hi guys!), but it's my personal opinion, and my friends also had similar problems with DX and went to GL or Glide (don't do Glide, 3dfx is gone now). If you have any more questions or want some help or code examples should you choose the GL route, let me know.

    -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]

  • hi,

    i agree,opengl seems to be much easier.ive learned d3d 2 years ago and wrote some simple stuff.some weeks ago ive decided to write a d3d-heightmap-renderer from nothing.5 hours later it was done.

    yesterday ive bought a (german) ogl-book,and tried to rewrite the renderer with opengl.it was my very first ogl-program and it was finished at nearly half the time.

    in fact,ogl does a lot of the basic-math stuff for you,which you have to write yourself in d3d,coz the d3dutil-code is very slow.sure,to write good 3d-code you have to understand the math-thing,anyway,but its lot easier to learn,when you didnt have to write things like matrix-multiplication and so on.
  • SephirothSephiroth Fayetteville, NC, USA
    Whoa, I never got that far into D3D. I didn't know it didn't have BASIC hardware elements like the matrix multiplication and such. There is a HUMONGOUS reason to go the GL route, unless you're some kind of math-genius!

    -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]

  • ive mostly used d3d for trying to create intros (4ks) and a large math-library isnt that useful for that.ive noticed that opengl-programs are slightly smaller than the same ones written for d3d and much faster.and before dx8 it was a real pain,to init a working d3d-environment,with all its hundred surfaces and stuff.
  • : ive mostly used d3d for trying to create intros (4ks) and a large math-library isnt that useful for that.ive noticed that opengl-programs are slightly smaller than the same ones written for d3d and much faster.and before dx8 it was a real pain,to init a working d3d-environment,with all its hundred surfaces and stuff.
    :

    I tried hard learning D3D. Even the latest one has so much of crap. Direct Draw was good. Direct3D looks crap, that is however my personal opinion. I wish the windows libs for OpenGL would be updated more often. Hopefully OpenGL 2.0 will bring in more competition.
  • SephirothSephiroth Fayetteville, NC, USA
    : I tried hard learning D3D. Even the latest one has so much of crap. Direct Draw was good. Direct3D looks crap, that is however my personal opinion. I wish the windows libs for OpenGL would be updated more often. Hopefully OpenGL 2.0 will bring in more competition.
    :
    Right now there is no competition beyond the fact that D3D is more compatible. If OpenGL would detect how much "OpenGL-Compliance" a card had and then ran the other stuff through software like D3D, D3D couldn't hold a candle to GL.

    -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]

  • : : I tried hard learning D3D. Even the latest one has so much of crap. Direct Draw was good. Direct3D looks crap, that is however my personal opinion. I wish the windows libs for OpenGL would be updated more often. Hopefully OpenGL 2.0 will bring in more competition.
    : :
    : Right now there is no competition beyond the fact that D3D is more compatible. If OpenGL would detect how much "OpenGL-Compliance" a card had and then ran the other stuff through software like D3D, D3D couldn't hold a candle to GL.
    :
    : -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]
    :
    :

    As long as you stick to 1.1 it will run fine in software. Or you can go the Mesa route to run it in software:)
    However software mode of D3D sucks. Hardware rendering is the best. I have worked with software mode of OpenGL too and I didn't find that impresive either.
  • SephirothSephiroth Fayetteville, NC, USA
    : As long as you stick to 1.1 it will run fine in software. Or you can go the Mesa route to run it in software:)
    : However software mode of D3D sucks. Hardware rendering is the best. I have worked with software mode of OpenGL too and I didn't find that impresive either.
    :
    Naturally. Software rendering of a hardware mode is nothing but a slow-down. I mean if plain software without blending, fog, or dynamic lighting is slower than Glide, GL, or D3D, running in software and trying to do the advanced stuff that those modes support can't be any better. And even with blending, the modes seem pixelated if run in software.

    -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]

  • Hey guys! thanks for all the help i need when i create the next equivilent of Counter Strike, but honestly, i am making a 2d bomberman game and i was just wondering how to manipulate bitmaps in Dev C++, like in all those old dos games.

    Thanks...I'll take note of the suggestions you guys gave for 3d stuff
  • Hi,

    You can have a look at the tutorial I wrote here http://openglforums.com/tutorials/tutorial7.html. There are few typos there, but we are correcting it slowly :) Load the image, texture it and prioritize it. You dont want to use glDrawPixels, its too slow ;)


    : Hey guys! thanks for all the help i need when i create the next equivilent of Counter Strike, but honestly, i am making a 2d bomberman game and i was just wondering how to manipulate bitmaps in Dev C++, like in all those old dos games.
    :
    : Thanks...I'll take note of the suggestions you guys gave for 3d stuff
    :

  • SephirothSephiroth Fayetteville, NC, USA
    Had to reply back here, we got too deep!

    Now, OpenGL and D3D can be used for 2D VERY easily. I am making a platformer in my spare time in OpenGL. Granted, GL is still running in 3D mode, which it is designed to, but with just a hair of thought and some advice from a friend, I have it looking like SOnic or Mario in GL. You could probably use this method with D3D as well.

    Start by drawing your background image, which should be farther into the distance than any of your world objects.

    Now you draw your world objects (blocks, trees, anything that is up close with the player model).

    Next you draw your items and such.

    After that, it's the enemies and player(s).

    Finally, you draw your score closest to the screen and there you have it!

    If this is a top-down game, you'd draw the ground (or whatever) farthest away, then draw houses, players, etc the closer you get. It's really simple, and with the gorgeous effects that GL and D3D can produce, you could make a very nice-looking 2D game.

    -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]

  • OK, thanks, but what do i do to input bitmaps and such, and can it b done in a file other than main? I sure hope so. Also, are there any good games or examples or something that u guys have done where i can discect the code? THis is usually the easiest way for me to learn these type of things
  • SephirothSephiroth Fayetteville, NC, USA
    : OK, thanks, but what do i do to input bitmaps and such, and can it b done in a file other than main? I sure hope so. Also, are there any good games or examples or something that u guys have done where i can discect the code? THis is usually the easiest way for me to learn these type of things
    :
    You can load a bitmap anywhere, and pass the data to any function you need it in. As for loading and displaying bitmaps, are you using Windoze functions or are you doing a custom routine? What I would do is load the bitmap data manually, then stretch it into a device-context and blit that to your viewport. Fast, simple, easy.

    As for sources, I lost my tutorials a few months ago, and the only two projects I have going now are OpenGL RPGs. One is a platformer and the other is a massive online game (think Morrowind graphics and such, but more players than any Everquest server could hold). I plan on making money on the online 3D game, so it's sources are locked. However, the platformer I will release the sources to when it is 100% debugged and has been out for a few months.

    -[italic][b][red]S[/red][purple]e[/purple][blue]p[/blue][green]h[/green][red]i[/red][purple]r[/purple][blue]o[/blue][green]t[/green][red]h[/red][/b][/italic]

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories