Announcement

Collapse
No announcement yet.

c++ programmers

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    c++ programmers

    I've set myself the task of learning how to program in c++ over the summer with some dx as i wanna write a basic shmup. Thats my mission and basic intro coding in c++ too.

    So i'm wondering can any of you recommend any books that cover c++ for retards, dx for retards and c++ and the win32 gui which has some practical coding demos through dem instead of random demos that run in dos prompts and not actually going through the win32 just given me the cmds. Any help would be much appreciated. I got basic programming experience i can cope with delphi.

    #2
    Its that long ago that I learned C++ that I can't remember what I learned with and if I could it would be hopelessly out of date.

    You can't go far wrong with the "bible" though: The C++ Programming Language by Stroustrup. And if you know Delphi I wouldn't have thought you'd have any trouble with it.

    Other books I've found useful would include Effective C++, and Effective STL. Which both taught me (and reminded me of!) plenty even after years of working with the language.

    Comment


      #3
      Originally posted by Ish
      You can't go far wrong with the "bible" though: The C++ Programming Language by Stroustrup. And if you know Delphi I wouldn't have thought you'd have any trouble with it.
      Seconded, I really rate that book.

      You'll need something else to help you with Visual Studio, win32 and dx tho.

      Comment


        #5
        Once you've got some C/C++ into your head you should consider using the SDL library for all your 2D drawing fun... it's simple, fast and cross platform plus there's plenty of tutorials on tinternet.

        Comment


          #6
          Hear hear. Or is it here here. I don't know. But Valken is right... SDL - yummy.

          Comment


            #7
            But if you're desperate to write in DirectX, then the best place to go is simply msdn.microsoft.com and download the DirectX SDK. Comes with all the tools/documentation you'll need to get started - just dont expect to be able to write a demo or anything straight away. Tinker around with it first and learn how it works (I strongly, strongly advise learning some matrix/vector math and some basics on 3D geometry before learning and 3D graphics API though, else it'll all appear double-dutch).

            Comment


              #8
              Everybody should have done matrix/vector math in school, it's a piece of piss. The MSDN link is good though, you should be able to knock a demo together fairly quickly as it is very straight forward given the examples provided. You could grab the Visual Studio Express stuff too, which also has a downloadable version of the subscriber MSDN.

              Comment


                #9
                I certainly never did matrix/vector maths in detail at school, although admittedly it ain't that hard at all. Just make sure you understand the pipeline yourself before you try to do things like camera transformations, it's essential that this section is clear in your head before you attempt things yourself.

                Comment


                  #10
                  aye haing done alevel maths at school just 3 years ago, i never touched on the level of vector and matrix maths required for 3d graphics, i only just coverd this in my second year at uni. But its not hard and can be easily self taught

                  Comment


                    #11
                    Way to go drowning the guy in jargon before he's even started! *rolleyes*

                    He just wants to make a 2D shooter!

                    I did matrices and vector maths in secondary school but it was only in 1st year of college that I learned that it actually had a use.

                    Also, DirectX is great for 2D and 3D but you really do need to be a bit more experienced before you try using it. If you wanted to take the DX route you'd need to worry a bit more about how Microsoft design their APIs. I personally find it a little unintuitive.

                    Considering you'll be faced with learning C++ and the logistics of making a game rather than some demo you should try to keep it simple (hence the SDL recommendation I made earlier).

                    If you're interested I've got some ready made sprite animation and tile drawing stuff as well as some other bits and pieces.

                    Comment


                      #12
                      He just said he wanted to make a shooter, he didn't specify a 2D or 3D one...

                      I'm making a 3D one because I find modelling a hell of a lot easier than drawing bitmapped sprites myself.

                      Or just learn to program the GBA, I've got a racing game demo hanging around somewhere if you wanna check out the source It's really nice to program for, scrolling etc is made a piece of piss by simply setting a certain flag on a certain background, and this means you can concentrate on the logic far more than getting stuff on screen.

                      Comment


                        #13
                        A "simple schmup" is what he wanted not a pile of jargon related to pipelines and matrices. It may seem simple to us now having spent a while learning it but surely you remember how daunting it was initially.

                        How you prefer drawing a game is a matter of little consequence... a few simple sprites to get started is much better than drawing polys.

                        I personally have 2 little projects on the go... one on my own is just a 2D title and I'm working on some parts of a 3D title and I'm enjoying making a little 2D game more.

                        Comment


                          #14
                          I didn't really throw jargon at him...matrices and vectors are the basics of game programming (whether it's 2D or 3D, physics or graphics). And you really, really need to learn some of it before you jump straight in. Let's just agree to disagree (yet again)

                          I admit I prefer 2D programming more too, for the reason I gave above: you can simply concentrate on the logic as soon as you've wrote a few sprite drawing functions. If I start a 3D project, I get bogged down debugging the same sections over and over again until I get bored and end up with nothing. I wrote an occlusion culling BSP engine once (based on a nice article from gamasutra.com)...and when that was done, I'd spent so much time on it I'd got completely bored of the project.

                          So yeah, go for 2D and **** DirectX off

                          Comment


                            #15
                            That's the trouble with 3D stuff... there so much to take care of before you start making the game.

                            I went for an octree style space division system for my current 3D project and while I enjoyed designing and implementing it I found it frustrating at times. Switching to my little 2D game was like a break!

                            I agree that learning the basics is essential but with 2D it's more common sense than maths.

                            Think about it this way...

                            You learn some basic C++ and how to make a window and draw to it. Thwn you figure out how to load an image and move it about, then you learn to animate it and have a few BG layers, then you realise that to speed redrawing you can just paint over areas of the screen that have changed and out of that you have a means of displaying stuff.

                            With that done you turn to a means of storing game data and other issue like events and collisions and general game logic.

                            That sure beats learning a lot of 3D math, space division stuff, modelling, animation, 3D collision, "realistic" or at least believable physics etc.

                            Comment

                            Working...
                            X