Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
Focus On SDL

Focus On SDL

List Price: $29.99
Your Price: $19.79
Product Info Reviews

<< 1 >>

Rating: 4 stars
Summary: Good tutorial
Review:

<i>Focus on SDL</i> is Ernest Pazera's fourth programming tutorial and the third one written for Premier Press. With every effort, both Mr. Pazera and Premier are getting closer to putting together an ideal set of game development tutorials. Pazera's books get more organized while Premier focuses and deflates the fat from their efforts. <i>Focus on SDL</i> is about all I could hope for from an SDL tutorial. It's not perfect, but it does a great job of doing what it
sets out to do.</p>

First off, let me say something about SDL -SDL is easy! While it's got a couple of quirks here and there, SDL is a very well organized and very easy to learn library for games. And <i>Focus on SDL</i> realizes this.
It doesn't try to make a simple subject complicated by ignoring the big picture to focus on minutiae. The main tutorial starts out logically with a discussion of starting up and shutting down SDL, followed by creating your main window, followed by placing bitmaps on the window, followed by event-handling, followed by playing CD-audio and video, followed by the joystick, and finally finished by threads and timers. In other words, it goes in about the order you'd need to go to write a simple game. Go figure.</p>

If you haven't figured out yet, this is a good book for beginners. It takes an easy-to-learn library and makes it even easier to learn. There aren't any code-listings for the obligatory breakout-clone in the text,
but by the time you get to page 150, you should have no problem figuring out how to structure a game from what you've read.</p>

The next 75-odd pages of <i>Focus on SDL</i> are focused on
the most important SDL add-on libraries. If you go to the SDL website, you'll see that there are literally dozens of add-on libraries available that cover everything from sprite graphics to GUI libraries. <i>Focus on SDL</i> covers the four libraries that I would have chosen as the most important components that are not part of core SDL, namely SDL_image (loading common bitmap file formats), SDL_ttf (loading and displaying TrueType fonts), SDL_net (networking), and SDL_mixer (loading, mixing, and playing sounds). As you can imagine, a complete game would likely need most, if not all, of these add-ons, so it's good to have those covered.</p>

The remainder of <i>Focus on SDL</i> covers a C++ wrapper-library for SDL. SDL lends itself very nicely for abstracting with objects, so constructing a wrapper that abstracts all of the primitive SDL bits like colors, palettes, rectangles, etc. is certainly a good idea.</p>

One thing I'd like to commend the author for is waiting to write the class-library until the end of the book. I've read so many books that spend all of chapter 2 constructing a comprehensive class library wrapping the subject technology, then using the rest of the book teaching you how to use the class-library rather than the technology itself. That means that if I want to
know how to use a particular call, I can't just look up the call in the book. I have to look at the author's wrapper-function and figure out how it works. If you want to know the particulars of SDL_Init(), you can just look it up in the
book and read about it. You don't need to take apart the author's own version of SDL_Init() to see it works.</p>

I mentioned earlier that the book's not perfect. My biggest
complaint is its lack of coverage of platforms other than Windows. One of the biggest advantages of SDL is that it works under pretty-much every major computer platform out there. While all of the examples should work just fine on other platforms, I would really liked to have seen coverage of getting SDL to work under Linux and Mac OSX. As it stands, the book only mentions other platforms in passing, pointing out that things like threading can be troublesome to do cross-platform, but never getting deeper than that.</p>

My other complaint is minor. A popular use of SDL nowadays is as a windowing front-end for OpenGL. While this is indeed too deep of a subject for a tutorial like this, it would have been good to see at least some pointers for more information on marrying SDL and OpenGL.</p>

Lack of cross-platform information notwithstanding, <i>Focus on SDL</i> is the best SDL tutorial that I've found. It's a perfect book for beginning game developers, as it makes an easy topic even easier. If you want to write a 2D game, check out SDL. If you want to check out SDL, get this book. I don't know how to make it any clearer.</p>

Rating: 4 stars
Summary: Good tutorial
Review:

Focus on SDL is Ernest Pazera's fourth programming tutorial and the third one written for Premier Press. With every effort, both Mr. Pazera and Premier are getting closer to putting together an ideal set of game development tutorials. Pazera's books get more organized while Premier focuses and deflates the fat from their efforts. Focus on SDL is about all I could hope for from an SDL tutorial. It's not perfect, but it does a great job of doing what it
sets out to do.

First off, let me say something about SDL -SDL is easy! While it's got a couple of quirks here and there, SDL is a very well organized and very easy to learn library for games. And Focus on SDL realizes this.
It doesn't try to make a simple subject complicated by ignoring the big picture to focus on minutiae. The main tutorial starts out logically with a discussion of starting up and shutting down SDL, followed by creating your main window, followed by placing bitmaps on the window, followed by event-handling, followed by playing CD-audio and video, followed by the joystick, and finally finished by threads and timers. In other words, it goes in about the order you'd need to go to write a simple game. Go figure.

If you haven't figured out yet, this is a good book for beginners. It takes an easy-to-learn library and makes it even easier to learn. There aren't any code-listings for the obligatory breakout-clone in the text,
but by the time you get to page 150, you should have no problem figuring out how to structure a game from what you've read.


The next 75-odd pages of Focus on SDL are focused on
the most important SDL add-on libraries. If you go to the SDL website, you'll see that there are literally dozens of add-on libraries available that cover everything from sprite graphics to GUI libraries. Focus on SDL covers the four libraries that I would have chosen as the most important components that are not part of core SDL, namely SDL_image (loading common bitmap file formats), SDL_ttf (loading and displaying TrueType fonts), SDL_net (networking), and SDL_mixer (loading, mixing, and playing sounds). As you can imagine, a complete game would likely need most, if not all, of these add-ons, so it's good to have those covered.

The remainder of Focus on SDL covers a C++ wrapper-library for SDL. SDL lends itself very nicely for abstracting with objects, so constructing a wrapper that abstracts all of the primitive SDL bits like colors, palettes, rectangles, etc. is certainly a good idea.

One thing I'd like to commend the author for is waiting to write the class-library until the end of the book. I've read so many books that spend all of chapter 2 constructing a comprehensive class library wrapping the subject technology, then using the rest of the book teaching you how to use the class-library rather than the technology itself. That means that if I want to
know how to use a particular call, I can't just look up the call in the book. I have to look at the author's wrapper-function and figure out how it works. If you want to know the particulars of SDL_Init(), you can just look it up in the
book and read about it. You don't need to take apart the author's own version of SDL_Init() to see it works.

I mentioned earlier that the book's not perfect. My biggest
complaint is its lack of coverage of platforms other than Windows. One of the biggest advantages of SDL is that it works under pretty-much every major computer platform out there. While all of the examples should work just fine on other platforms, I would really liked to have seen coverage of getting SDL to work under Linux and Mac OSX. As it stands, the book only mentions other platforms in passing, pointing out that things like threading can be troublesome to do cross-platform, but never getting deeper than that.

My other complaint is minor. A popular use of SDL nowadays is as a windowing front-end for OpenGL. While this is indeed too deep of a subject for a tutorial like this, it would have been good to see at least some pointers for more information on marrying SDL and OpenGL.

Lack of cross-platform information notwithstanding, Focus on SDL is the best SDL tutorial that I've found. It's a perfect book for beginning game developers, as it makes an easy topic even easier. If you want to write a 2D game, check out SDL. If you want to check out SDL, get this book. I don't know how to make it any clearer.



Rating: 4 stars
Summary: More examples needed
Review: In his original book on Isometric Games, Pazera takes the novice C++ programmer, like myself with no formal training except books and websites, by the hand to introduce notions like function pointers and linked lists, and also includes many examples on the CD which you can compile and then check the source code line by line to enhance your understanding. In his latest book, I found the use of STL containers of interest as I am presently reading Josuttis, however I was disappointed by the lack of comprehensive examples particularly in the last section on Core Components. The material, encapsulating the main function in a class, the introduction of wrapper classes and a sophisticated messageing system is all new stuff to me and I best learn by myself seeing compiled examples in action and checking the source code. If the final example, a pushbutton that does nothing was replaced by a basic music machine using sdl_mixer and illustrated in it's source code the messageing and interface systems so I could follow the use of AddChild type methods instead of just explanatory text then the book would receive another star. More comprehensive code examples please!

Rating: 4 stars
Summary: More examples needed
Review: In his original book on Isometric Games, Pazera takes the novice C++ programmer, like myself with no formal training except books and websites, by the hand to introduce notions like function pointers and linked lists, and also includes many examples on the CD which you can compile and then check the source code line by line to enhance your understanding. In his latest book, I found the use of STL containers of interest as I am presently reading Josuttis, however I was disappointed by the lack of comprehensive examples particularly in the last section on Core Components. The material, encapsulating the main function in a class, the introduction of wrapper classes and a sophisticated messageing system is all new stuff to me and I best learn by myself seeing compiled examples in action and checking the source code. If the final example, a pushbutton that does nothing was replaced by a basic music machine using sdl_mixer and illustrated in it's source code the messageing and interface systems so I could follow the use of AddChild type methods instead of just explanatory text then the book would receive another star. More comprehensive code examples please!

Rating: 4 stars
Summary: Very good for entry level game developers.
Review: Most books on game development today simply rehash material that is already available in countless other books. The Focus On series is a refreshing change. Though considerably thinner than the fullsize counterparts, the Focus On books dive right into the material you want to learn. This was certainly true in the case of Focus On SDL.

The book gets you going immediately, setting up your compiler and getting a window on the screen. From there, you build on what has already been covered to show off various features of SDL.

My biggest complaint about this book, much like one of the other reviewers, was that the book did not give much information about setting SDL up with OpenGL. The information available on the internet is very good and will allow you to fill in any missing pieces of the book, but if you're like me and would like a physical book to thumb through rather than a web reference, this book is perfect.

Rating: 2 stars
Summary: Not quite what you'd expect
Review: On the positive side, this book is an excellent entry-level programmer's guide to the SDL library. Anybody with basic coding skills should be able to easily follow the examples (which, by the way, are not duplicated in print... something to keep in mind if you are reading this on the train). Surely you could learn all you need to from SDL's own web site and other online documentation. But if you prefer to sit down and read a book cover to cover, like I do, this book might be a better fit.

My biggest disappointment is that there is no coverage of OpenGL at all. My attraction to SDL is to use as a base platform for OpenGL coding. A chapter on OpenGL integration would have won a fifth star from me.

I would like to have seen more advanced and in-depth coverage. Maybe another chapter or so on implementing an example game using the framework given to us in the final section.

Rating: 4 stars
Summary: Good beginner's book, but brief.
Review: On the positive side, this book is an excellent entry-level programmer's guide to the SDL library. Anybody with basic coding skills should be able to easily follow the examples (which, by the way, are not duplicated in print... something to keep in mind if you are reading this on the train). Surely you could learn all you need to from SDL's own web site and other online documentation. But if you prefer to sit down and read a book cover to cover, like I do, this book might be a better fit.

My biggest disappointment is that there is no coverage of OpenGL at all. My attraction to SDL is to use as a base platform for OpenGL coding. A chapter on OpenGL integration would have won a fifth star from me.

I would like to have seen more advanced and in-depth coverage. Maybe another chapter or so on implementing an example game using the framework given to us in the final section.

Rating: 5 stars
Summary: Great SDL reference!
Review: SDL has slipped right under many programmers' radar. That is unfortunate, because if you are doing any 2D programming at all ... all the things we used to do in DirectDraw ... SDL is sanity saver compared to forcing Direct3D to pretend to do 2D work. It is simple, straightforward, and easy to use. Plus it handles audio, input, etc., AND it's cross-platform! However, until now, it has been sadly lacking in documentation.

No more. Ernest Pazera has written a most excellent reference to SDL. This book covers not only SDL graphics, but all of the many other features -- audio, threads, and the add-on libraries such as SDL_ttf and SDL_net. And he does this in 300 pages. Your foot can survive having this book dropped on it, unlike most programming tomes. Your life can survive taking the time to read it cover to cover.

If you are looking for an alternative to DirectX and its pages of initialization code that make you want to tear your hair out by the handful, SDL is the way to go. If you are using SDL, this book is the way to go. I only gave it five stars because Amazon.com's rating system doesn't go to six.

Rating: 2 stars
Summary: Not quite what you'd expect
Review: This book isn't bad if you have no access to the documentation or online tutorials already available for SDL. The book is really short and doesn't go into depth in any one area. There is only a brief mention of using SDL with OpenGL and nothing more. Save your money, there's enough tutorials out there online that you can get more from, than in this book. Instead of calling it "Focus on SDL" the title should be "A Glance at SDL" because that's all that you are getting.


<< 1 >>

© 2004, ReviewFocus or its affiliates