Beginning C++ Through Game Programming
ByMichael Dawson★ ★ ★ ★ ★ | |
★ ★ ★ ★ ☆ | |
★ ★ ★ ☆ ☆ | |
★ ★ ☆ ☆ ☆ | |
★ ☆ ☆ ☆ ☆ |
Looking forBeginning C++ Through Game Programming in PDF?
Check out Scribid.com
Audiobook
Check out Audiobooks.com
Check out Audiobooks.com
Readers` Reviews
★ ★ ★ ★ ★
thatmg
This is great book for learning C++!! It talks about the topic in very understandable wording, then goes into a sample coding project, giving adequate descriptions concerning what is going on in the code. I knew the basics before I got the book, so I cannot speak for the first few chapters, but I can verify that the chapters about classes, pointers, and memory allocation are very well-written and is a great book overall!!
★ ★ ☆ ☆ ☆
ken jacobs
Good to think you are learning coding for games while learning c++. If you are looking to develop even simple graphic games this is not sure you. You will learn c++. Game design/programming is for another book.
★ ★ ★ ★ ★
caitie
Very nice book for all the people who is interested in learning C++. All the explanations are very clear and concise. I have a lot of books about the C/C++ language and this is definitely one of my TOP 10. I give my 1000 points on this book.
Programming in C (4th Edition) (Developer's Library) :: C++ Primer Plus (6th Edition) (Developer's Library) :: C Programming Language, 2nd Edition :: The C++ Programming Language, 4th Edition :: C Programming Absolute Beginner's Guide (3rd Edition)
★ ★ ☆ ☆ ☆
michael cordell
I downloaded the source code from the book and it would not compile using the compiler that he said to use. Not sure what I was doing wrong but since I could not get the first source code to even work; as in compile I could not even get started. Not sure what else to say other then that seems to a very strong none starter.
★ ★ ☆ ☆ ☆
simona simona
The book has a nice principle of teaching you C++ via gaming and actually was the very first I bought for learning this language, but it gets uninspiring very quickly. This is mainly because of the Topics inside the book are overusing headings as a form of introducing new topic, so this gets quickly very robotic.
A good tip would be to transition topics using human language instead of abrupt headings introduction.
The font on which the book was printed also gives a terrible robotic feeling to everything and the experience would be more pleasant by choosing another font type.
A very important point to be improved is to put some graphics or sounds on the concept, because although the principle “C++ though game programming” is good, it is not conducted until the end (we just have some boring command line games, and this gets unmotivating very fast). I have to know the library called Simple and Fast Multimedia Library which would make a GREAT add to the book if used for the book. You can play sounds with it, make animations and everything… It would get the book much more entertaining.
About the robotic style of writing, the best example I have of a book on C++ which feels absolutely great and plesant to read is Learning C++ by Creating Games with UE4. It is absolutely amazing how you can read this book like a romance and still learn a lot. The only thing missing on this book is using a simpler tool like SFML which allows you to be very creative without getting the feeling that all you are doing is modifying some already baked script (UE4 engine).
Actually, after my disappointment with the robotic style from Beginning C++ Through Game Programming (I couldn’t bare to read it anymore), I got Learning C++ by Creating Games with UE4 from William Sherif, which was like a miracle in terms of nice writing style… It’s so pleasant to read and feels like a romance… your brain you never forget anything that he tries to teach. Its perfect didactics!
Than this book from Sherif was quickly read by me and I was left wanting more (this could be improved if this book had more content), so I arrived to SFML Game Development book, which has a nice library (SFML) to make sounds, graphics and much more.
My dream would be that the writers of those three books (SFML Game Development, Learning C++ by Creating Games with UE4 and Beginning C++ Through Game Programming) joined together to make a single book. William Sherif from the UE4 book would be the responsible for the writing style of the book, what would ensure that the books gets very didactic and pleasant to read, Michael Dawson would complete some technical topics which are missing from the William Sheriff book, and the authors of the SFML book would introduce the library and make sure people can have lots of fun on the future based on what they got from the book!
I hope my dreams come true some day!!
A good tip would be to transition topics using human language instead of abrupt headings introduction.
The font on which the book was printed also gives a terrible robotic feeling to everything and the experience would be more pleasant by choosing another font type.
A very important point to be improved is to put some graphics or sounds on the concept, because although the principle “C++ though game programming” is good, it is not conducted until the end (we just have some boring command line games, and this gets unmotivating very fast). I have to know the library called Simple and Fast Multimedia Library which would make a GREAT add to the book if used for the book. You can play sounds with it, make animations and everything… It would get the book much more entertaining.
About the robotic style of writing, the best example I have of a book on C++ which feels absolutely great and plesant to read is Learning C++ by Creating Games with UE4. It is absolutely amazing how you can read this book like a romance and still learn a lot. The only thing missing on this book is using a simpler tool like SFML which allows you to be very creative without getting the feeling that all you are doing is modifying some already baked script (UE4 engine).
Actually, after my disappointment with the robotic style from Beginning C++ Through Game Programming (I couldn’t bare to read it anymore), I got Learning C++ by Creating Games with UE4 from William Sherif, which was like a miracle in terms of nice writing style… It’s so pleasant to read and feels like a romance… your brain you never forget anything that he tries to teach. Its perfect didactics!
Than this book from Sherif was quickly read by me and I was left wanting more (this could be improved if this book had more content), so I arrived to SFML Game Development book, which has a nice library (SFML) to make sounds, graphics and much more.
My dream would be that the writers of those three books (SFML Game Development, Learning C++ by Creating Games with UE4 and Beginning C++ Through Game Programming) joined together to make a single book. William Sherif from the UE4 book would be the responsible for the writing style of the book, what would ensure that the books gets very didactic and pleasant to read, Michael Dawson would complete some technical topics which are missing from the William Sheriff book, and the authors of the SFML book would introduce the library and make sure people can have lots of fun on the future based on what they got from the book!
I hope my dreams come true some day!!
★ ★ ★ ☆ ☆
cessie
It takes its sweet time to get into real programming, and those looking to get into game development will also be sorely disappointed. Lacks any information on most libraries (SDL, OpenGL), technical knowledge, engineering concepts or even game design.
★ ★ ☆ ☆ ☆
andrew gustafson
I bought the Kindle version of this book, so there is no companion CD-ROM. When you go to the website recommended for download of files for the CD-ROM, you are immediately redirected to a site that will sell you the CD-ROM (a company called Delmar Cengage Learning). Lucky me, I can pay $29.99 for the online companion, and I can't get the files, source code for the programs or games, will have to go elsewhere for the Bloodshed Dev-C++ (easy enough), and won't get the "useful links." I don't give a dang at this point if this is a good book or not, I feel completely ripped by the fact that I can pay nearly double for the "companion" information than I paid for the Kindle book. Total ripoff.
★ ☆ ☆ ☆ ☆
elizabethm orchard
I bought this book to see about its suitability for a training aid for my son since gaming programming would be an easy hook.
The book starts with by declaring it is for absolute beginners "it is aimed at the total beginner and assumes no previous programming experience." This statement is inaccurate since the book naturally requires a compiler, editor, etc and recommend strongly the Microsoft Visual Studio one (a good recommendation). But then it launches in to source code immediately without any clues, tips or guidance on how to setup VS nor how to use it to get the sample code to produce the executable. In other words it assumes you know nothing about programming but do happen to know how to use Visual Studio, likely a very small audience. I would suggest that this not be a first book, but the first one be one more geared towards actual beginners unless you want to guide them through the process yourself, which I guess I could do.
The book starts with by declaring it is for absolute beginners "it is aimed at the total beginner and assumes no previous programming experience." This statement is inaccurate since the book naturally requires a compiler, editor, etc and recommend strongly the Microsoft Visual Studio one (a good recommendation). But then it launches in to source code immediately without any clues, tips or guidance on how to setup VS nor how to use it to get the sample code to produce the executable. In other words it assumes you know nothing about programming but do happen to know how to use Visual Studio, likely a very small audience. I would suggest that this not be a first book, but the first one be one more geared towards actual beginners unless you want to guide them through the process yourself, which I guess I could do.
★ ★ ★ ★ ★
tereza
Excellent book. I am fairly new to programming and have been trying in vain to find something that "clicks" for my brain. this book was it!! the author's method of explaining things is very clear and in very plain English. the book is put together very logically so you could use this as a complete beginner and start making programs right away. all that being said i think the biggest advantage of this book over others i have used is the fact that the examples are fun, which may not seem like a big deal but believe me, it is. would you rather< as a beginner, try to drag yourself through pages and pages of "hello world!" and accounting problems. or would you rather create "Game Over!" programs and figure out how to fill the players inventory with swords and battle axes. I suppose if you are into accounting that is your prerogative, but i found learning about classes in relation to spaceships much easier to understand.
things to note:
this is not a book that will teach you how to make pretty graphics or sounds. it is only to teach the basics of c++ and does so in the context of game programming. all of the programs you will make will be in the console window.
if you have no interest in creating games this book is probably not for you as it has a lot of hints and real world tips for real world game programmers.
this book really is for the absolute beginner so someone who is already accustomed to programming may find the first half of the book quite tedious.
things to note:
this is not a book that will teach you how to make pretty graphics or sounds. it is only to teach the basics of c++ and does so in the context of game programming. all of the programs you will make will be in the console window.
if you have no interest in creating games this book is probably not for you as it has a lot of hints and real world tips for real world game programmers.
this book really is for the absolute beginner so someone who is already accustomed to programming may find the first half of the book quite tedious.
★ ★ ★ ★ ☆
giada
I remember reading the 2nd edition of this book 10 years ago as I was teaching myself C++. After reading and coding alongside this version, I am pleased to say that the 4th edition does not disappoint. The author does a great job introducing data types, control flow, pointers, references, classes, and object oriented programming principles (and it's predecessor, structural programming) through the creation of simple text based games - games whose logic could easily be expanded on and could have a GUI added to them with the right knowledge. The samples are easy to follow and he breaks them down for the purpose of understanding. I like that he introduces the Standard Template Library early on using the vector class and the algorithms library in his many samples. Every chapter ends with questions and exercises to help solidify understand (useful for the classroom environment). One thing of note, that I missed in the 2nd edition, is that he cleverly introduces the beginning programmer to their first data structure - the linked list.
There are few items of note that are missing such as templates and IO file operations, and it stays away from some of the updated features of C++ 11. The IO file operations are useful as games (and other programs) are data driven. Any sample where there was a list of words could have implemented the file IO. That said - IO, templates and the C++ 11 features might add to the confusion so I can understand why the author stayed away from them.
Overall, a good book and a great introduction to C++ programming using games as a teaching tool.
There are few items of note that are missing such as templates and IO file operations, and it stays away from some of the updated features of C++ 11. The IO file operations are useful as games (and other programs) are data driven. Any sample where there was a list of words could have implemented the file IO. That said - IO, templates and the C++ 11 features might add to the confusion so I can understand why the author stayed away from them.
Overall, a good book and a great introduction to C++ programming using games as a teaching tool.
★ ★ ★ ★ ★
caroline copley
This book is great for learning how to program! However, this book will not go too in-depth on the c++ language or provide a proper introduction to computer programming. It skips a lot of boring stuff that can be mind-numbing and off-putting for beginners and jumps into some fun activities that make it easy for gamers to learn the fundamentals. For anyone who's an absolute beginner, it's highly recommended, but I suggest you also purchase "Starting Out with C++ from Control Structures to Objects" for a more in-depth introduction language.
★ ★ ★ ☆ ☆
jaimeromanillos
This book does a fairly decent job of introducing new programmers to various C++ topics such as data types, flow control, functions and object-oriented development. It was pretty easy to absorb (with the obligatory struggle on pointers, of course), and I feel it gave me a pretty good start to learning more about C++.
On the other hand there were a few places in the book where the flow seemed to be just right, when all of a sudden a concept would be introduced that kind of seemed out of place or plugged in after the book was finished, as it was not nearly as well presented or explained as the reader had grown accustomed to seeing in the rest of the book. It would usually be only a brief departure, but each time it left me scratching my head and flipping back through several previous pages, wondering what I had missed. One example is the discussion regarding memory usage and the heap. I saw the disclaimer (paraphrasing) "This example is shown as an abstract diagram, because we are talking about an object, rather than a string literal." Used several times throughout that chapter, without ever being provided any explanation on why that point is even significant.
While the example code was straightforward enough and did serve to demonstrate the author's points, it often lacked enough context to provide a thorough understanding of the topic. For example, seeing the way pointers and references behave differently is good information, but no clue is given as to why or how you would determine which you need in a given situation.
All in all I found the book useful, but I'm certain there are better options out there.
On the other hand there were a few places in the book where the flow seemed to be just right, when all of a sudden a concept would be introduced that kind of seemed out of place or plugged in after the book was finished, as it was not nearly as well presented or explained as the reader had grown accustomed to seeing in the rest of the book. It would usually be only a brief departure, but each time it left me scratching my head and flipping back through several previous pages, wondering what I had missed. One example is the discussion regarding memory usage and the heap. I saw the disclaimer (paraphrasing) "This example is shown as an abstract diagram, because we are talking about an object, rather than a string literal." Used several times throughout that chapter, without ever being provided any explanation on why that point is even significant.
While the example code was straightforward enough and did serve to demonstrate the author's points, it often lacked enough context to provide a thorough understanding of the topic. For example, seeing the way pointers and references behave differently is good information, but no clue is given as to why or how you would determine which you need in a given situation.
All in all I found the book useful, but I'm certain there are better options out there.
★ ★ ★ ★ ★
jilyne
I completed this book two years ago to prepare for an embedded systems class (in C/assembly). I haven't used anything but Java for the last year, so I went back and reread it. I'm planning on implementing a few Java games (that I made previously) for iOS, so I wanted to review the basics.
This is a good book to learn C++. It teaches you only from the standard libraries, which is great. You learn a lot of the standard library, including STL, references, pointers, classes, etc. One thing that I really liked was that it discussed efficiency and provided insight on when to use things like: inline, pass-by-reference, pointers, etc. This helped me out a bit when I had to program for extreme efficiency on a micro-controller (though only C was usable in that context).
One thing that I didn't like was the order of the presentation. It seemed kind of weird to put off functions until chapter 5. Before this you're working in an increasingly beefy main function. I felt like STL could be moved to later in the book, for clarity; probably best right before pointers. Classes weren't covered until way late in the book, chapter 8. Putting these two off until so late develops a bad sense of object oriented design (OOD) in the learner. Learning Java after this put me back on track, but this is just a warning. Also, note: file i/o, GUI, and graphics of any kind are not covered in the book. Still, all of the examples and projects are about making games (just sans graphics).
The author writes about complex issues in an extremely clear fashion. Some of these topics are difficult for people to learn (pointers, for example), but the author makes it easy--at least that's how I felt about it. Furthermore, at some point you will really appreciate the optimization tricks and advice. The game theory is limited to about 10 pages in total for the whole book (my 'guess-timate'). The optimization advice is about the same. The rest of the book is dedicated to code examples and C++ theory. Each topic is explained more than once, so highlighting/underlining/writing in margins makes for a quick review.
Overall, an excellent book--still relevant and all of the code compiles as written as of my writing this comment.
This is a good book to learn C++. It teaches you only from the standard libraries, which is great. You learn a lot of the standard library, including STL, references, pointers, classes, etc. One thing that I really liked was that it discussed efficiency and provided insight on when to use things like: inline, pass-by-reference, pointers, etc. This helped me out a bit when I had to program for extreme efficiency on a micro-controller (though only C was usable in that context).
One thing that I didn't like was the order of the presentation. It seemed kind of weird to put off functions until chapter 5. Before this you're working in an increasingly beefy main function. I felt like STL could be moved to later in the book, for clarity; probably best right before pointers. Classes weren't covered until way late in the book, chapter 8. Putting these two off until so late develops a bad sense of object oriented design (OOD) in the learner. Learning Java after this put me back on track, but this is just a warning. Also, note: file i/o, GUI, and graphics of any kind are not covered in the book. Still, all of the examples and projects are about making games (just sans graphics).
The author writes about complex issues in an extremely clear fashion. Some of these topics are difficult for people to learn (pointers, for example), but the author makes it easy--at least that's how I felt about it. Furthermore, at some point you will really appreciate the optimization tricks and advice. The game theory is limited to about 10 pages in total for the whole book (my 'guess-timate'). The optimization advice is about the same. The rest of the book is dedicated to code examples and C++ theory. Each topic is explained more than once, so highlighting/underlining/writing in margins makes for a quick review.
Overall, an excellent book--still relevant and all of the code compiles as written as of my writing this comment.
★ ★ ★ ★ ☆
sue harper
Don't buy this book to learn game programming - buy this book because using text-based "pseudogame" examples to learn C++ is more inspiring and motivating than a dry textbook.
Tip for Absolute Beginners - If you've NEVER programmed before, skip immediately to Appendix A "Creating your first C++ program" as it teaches some very basic use of an Integrated Development Environment.
Likes - It's an easy read, especially if you already understand basic programming concepts from other languages. There's enough variety here to keep your interest between each of the chapters.
Dislikes - If you're like me, and are determined to not rely on using Standard Template Library code (STL) until you are much more familiar with C++ and data structures, well... tough luck. Many of the book's later exercises rely heavily on the use of STL code, and you'll have to look elsewhere to learn more than just he basic use of arrays in C++.
Once you successfully make it through this book end-to-end, are running and understanding each exercise, you'll likely be well prepared to pick up a much more serious and thorough book ("C++ Primer Plus" by Prata, "Game Engine Architecture" by Jason Gregory, or "Game Programming All in One" by Harbour for example).
Tip for Absolute Beginners - If you've NEVER programmed before, skip immediately to Appendix A "Creating your first C++ program" as it teaches some very basic use of an Integrated Development Environment.
Likes - It's an easy read, especially if you already understand basic programming concepts from other languages. There's enough variety here to keep your interest between each of the chapters.
Dislikes - If you're like me, and are determined to not rely on using Standard Template Library code (STL) until you are much more familiar with C++ and data structures, well... tough luck. Many of the book's later exercises rely heavily on the use of STL code, and you'll have to look elsewhere to learn more than just he basic use of arrays in C++.
Once you successfully make it through this book end-to-end, are running and understanding each exercise, you'll likely be well prepared to pick up a much more serious and thorough book ("C++ Primer Plus" by Prata, "Game Engine Architecture" by Jason Gregory, or "Game Programming All in One" by Harbour for example).
★ ★ ★ ★ ★
kim cobin
This book is as the title states, SUPERB! It assumes that the reader has an intermediate knowledge of C++, and uses WinMain() along with DirectX and Direct3D to render graphics, but is lucid from beginning to end. When I read this book, I had no idea how to write any graphics outside of Windows Forms and WPF, and even that was limited. Now, I can write programs that allow me to tutor mathematics to children using the skills learned here. There is even a section which explains how to send commands to an Xbox 360 controller, which is awesome!
Jonathan is truly a master of the art. No matter what anyone says, Computer Science is science, but being able to apply it is ART!
Highly recommend this book to anyone wishing to learn to harness the power of C++ to it's fullest.
Jonathan is truly a master of the art. No matter what anyone says, Computer Science is science, but being able to apply it is ART!
Highly recommend this book to anyone wishing to learn to harness the power of C++ to it's fullest.
★ ★ ★ ☆ ☆
aghavni
I really enjoyed this book but compared to other books of the same subject, this book doesn't go into enough depth on each subject in its early chapters and misses a bit of C++'s foundation. It's a great book for someone who's new to programming in general but for someone who knows other languages, I felt like the book was going to easy on me and I was missing the full picture.
Still a good book, I just wished it was a bit more professional and thorough in its delivery of C++ concepts
Still a good book, I just wished it was a bit more professional and thorough in its delivery of C++ concepts
★ ★ ★ ★ ★
talha
This is a great book for beginners. I floundered and slogged my way through a handful of other "Teach Yourself" books on C++, often shelving them midway as the material would leap exponentially in difficulty without explanation and I would be quickly lost. "Beginning C++ Through Game Programming" proceeds gently and steadily, each lesson building upon the previous, each new concept explained in detail. It does not, however, get into any thing more advanced, such as graphics or audio. But it does provide you with a good foundation for venturing into that territory.
And it's written with a sense of humor. More than once the book made me crack a smile.
And it's written with a sense of humor. More than once the book made me crack a smile.
★ ★ ★ ★ ☆
valora
I think that some people reviewing this may be confusing what the intended goal of this book is. It isn't to teach game design. Game design is just a reoccurring theme throughout the exercises found in the book. This book is intended to teach the C++ programming language, and in that regard it does fairly well. I wish it would go more in depth into idiomatic C++ design and language constructs, however it covers about the same amount of ground in C++ as my freshman CS class, which focused on object oriented programming in java.
I would recommend this book to a friend, and I have loaned it to friends who wanted to learn C++ (that damn bastard needs to return it). Overall, it is a decent book that knows what it is for and does not over reach that goal, it teaches beginning C++ and it does it well.
I would recommend this book to a friend, and I have loaned it to friends who wanted to learn C++ (that damn bastard needs to return it). Overall, it is a decent book that knows what it is for and does not over reach that goal, it teaches beginning C++ and it does it well.
Please RateBeginning C++ Through Game Programming