Unity in Action: A top-notch how-to guide for game developers – #gamedev #programming

Unity in Action

Joseph Hocking

Manning – paperback

Unity, the cross-platform game development environment, is easy to download and get running. But it definitely is not easy to learn without some help.

Fortunately, Joe Hocking’s Unity in Action makes it reasonably straightforward to learn how to develop games in 3D, as well as with Unity’s new 2D capabilities. The book takes the reader from “Hello, World” all the way to “Putting the parts together into a complete game” and then “Deploying your game to players’ devices.”

Even with this fine book, however, game development can be hard and complicated work. There are many different elements to consider, such as “Adding enemies and projectiles to the 3D game”, “Developing graphics for your game”, “Adding interactive devices and items within the game,” and putting sound effects and music into your game. Hocking’s book does a good job of showing how to handle these tasks, plus many more.

You may have heard Unity described as a game development environment where you don’t have to know how to program. Yes, you might be able to create some games without programming skills. But, “to produce commercial titles” using Unity, you definitely need some programming experience, Hocking emphasizes. In this case, you should have some knowledge of C#, but a background in some other object-oriented (OO) programming language will be helpful if you are new to C#, he adds.

Hocking’s book has many examples, illustrations, headings and subheadings. But step-by-step listings are sparse. Therefore, be prepared to read the text closely and, if necessary, develop lists of steps yourself. There is nothing wrong with this approach, and it is not really a criticism of the book. Game development, after all, is not something that you can, nor should, just dive into and speed through, step by step. It requires a lot of careful planning and thought before you start.

Unity in Action wastes no time. It gets right to the essential stuff you need to know. And it can get you into action reasonably fast as a game developer. But “reasonably fast” in this case must be defined by how quickly you personally can learn to handle Unity, plus the myriad tasks of planning, creating, testing, revising and distributing a game.

Si Dunn

 

Mastering Gamification – A 30-day strategy to enhance customer engagement – #business #bookreview

 

Mastering Gamification

Customer Engagement in 30 Days

Scot Harris and Kevin O’Gorman

(Impackt Publishing – Kindle, paperback)

 Gamification is now a popular buzz word in many parts of the business world. This book wisely does not try to cover every angle, but stays focused on one application: “Marketing and sales people are using gamification to improve customer loyalty and engagement, knowing that it will lead to increased profitability,” the authors write.

They emphasize that “gamifying does not mean turning your business or website into a game. As Gamification.org defines it, gamifying is:

‘The presence or addition of game-like characteristics in anything
that has not been traditionally considered a game.’

 “Take particular note of the word ‘characteristics’ in this phrase,” the authors point out . “The purpose of gamifying is not to turn something into a game, but to apply understanding and knowledge about the basic human desires we all have that make us like games to a non-gaming environment, and hopefully to improve our businesses.”

 You may not finish all of the exercises, nor follow all of the suggestions in this well-written book. Yet the well-structured, 30-day plan offered by Harris and O’Gorman still can help you think harder about your business, how customers see it and how they engage–or don’t engage–with the products or services you offer.

 Even if you operate a small enterprise where you are the entire staff, this book can offer some good ideas and useful tips that can help you make more sales and keep customers coming back.

 What the authors aim to do is help you create and “launch a long-range, ongoing, continuous process of attracting the attention of a target audience, drawing them into a social space built around you and your products or services, encouraging them to evangelize about your products or services, and instilling in them an unshakable sense of loyalty.”

 In other words, you learn how to use some gamification techniques to get customers’ attention, keep their attention, and keep them coming back for more of whatever you are selling–three major keys to long-term survival and growth in business.

Si Dunn

OpenGL ES 2 for Android – A fine quick-start guide for new developers – #android #programming #bookreview

OpenGL ES 2 for Android

A Quick-Start Guide
Kevin Brothaler
(Pragmatic Bookshelf – paperback)

Yes, the timing might seem a bit strange, releasing an OpenGL ES 2 book in early July, 2013, barely a month before the August release of OpenGL ES 3.

However, OpenGL ES 3 is backward-compatible with OpenGL ES 2. And the steps and techniques you can learn in this Open GL ES 2 book for Android are forward-compatible to OpenGL ES 3. Many also are applicable to iOS WebGL or HTML5 WebGL.

This “quick-start guide” assumes you have some experience with Java and Android, and it quickly jumps into creating OpenGL applications for Android. You install software tools such as the Java Development Kit (JDK) and the Android Software Development Kit and create a simple test project. Then you dive into developing and enhancing a 3D game project —  “a simple game of air hockey” — for the remainder of the book.

OpenGL ES 2 for Android is nicely illustrated, well-written, and cleanly organized with short paragraphs and short code examples that clearly have been tested. It is a fine quick-start guide, particularly for developers looking into OpenGL for the first time.

Some math skills are required to develop the air hockey game. But the author does a nice job of explaining and illustrating the math examples, as well.

Kevin Brothaler has extensive experience in Android development. He founded Digipom, a mobile software development shop, and he manages an online set of OpenGL tutorials for Android and WebGL: Learn OpenGL ES.

Si Dunn

Realm of Racket: Learn to Program, One Game at a Time – #Racket #game #programming #bookreview

Realm of Racket
Learn to Program, One Game at a Time!

Matthias Felleisen, David Van Horn, Conrad Barski, M.D., Forrest Bice, Rose DeMaio, Spencer Florence, Feng-Yun Mimi Lin, Scott Lindeman, Nicole Nussbaum, Eric Peterson, and Ryan Plessner
(No Starch Press – paperback, Kindle)

Formerly known as PLT Scheme, Racket is an offshoot of the Lisp/Scheme family of programming languages. (Lisp, which was first specified in 1958, is the second-oldest high-level programming language, behind FORTRAN).

The (numerous) authors of this 294-page book call Racket “a friendly mutation of Lisp” and tout it as “perfect for all, from those who want to launch their education in computer science to those looking to expand their knowledge and experience in programming.”

Lisp has a long learning curve, so the writers have taken special pains to try to make Racket (“a weird-looking programming language,” they concede) approachable and fun by using comics and games built from short code examples.

Their well-written book is aimed at college freshmen readers. But they emphasize “that doesn’t mean you should drop this book if you are a sophomore or an industry professional.” Nor if you are still in high school or simply like to tinker with programming languages for fun and challenge.

“Regardless of your programming background,” they state, “many of the topics in this book will be new to you, and much of what you’ve learned before will appear in a new light.”

Realm of Racket is structured so that you start out programming very simple games and gradually tackle games that are more complex, while learning about such topics as functions, recursion, lambda, lists, structures, loops, testing, and more.

If you are interested in developing special-purpose computer languages that require specific knowledge of specialized fields, Realm of Racket’s  final chapter briefly delves into the field of language engineering. It notes that Racket “makes it particularly easy to create new programming languages, including special-purpose languages.”

Not surprisingly, some people who program in Racket call themselves Racketeers. The open source language and its program development environment (PDE), DrRacket (“Doctor Racket”), can be downloaded from http://racket-lang.org. “Racket can run on Windows, Mac, and *nix* systems,” the authors note.

Realm of Racket can be a fun, challenging book for computer-savvy teens nearing the end of high school or in their first years of college to study computer science or gaming. Younger readers likely won’t stick with it unless they have some helpful, patient guidance from knowledgeable older siblings or adults. Wait until they’ve gotten reasonably good at another language, such as Python, Ruby, C#, or Java, first.

Si Dunn

Designing Games – A well-written, comprehensive guide to video game engineering – #bookreview


Designing Games
A Guide to Engineering Experiences
Tynan Sylvester
(O’Reilly – paperback, Kindle)

If you design video games, if you hope to become a game creator, or if you work for a company whose lifeblood is creating and maintaining successful video games, you need to read this excellent book.

 Tynan Sylvester provides a comprehensive overview of the design processes that are the heart of successful games. And he describes the day-to-day actions necessary to keep game projects on track to completion.

“A game can’t just generate any old string of events, because most events aren’t worth caring about,” Sylvester contends. He is a veteran designer who has worked on everything from independently produced games to big-studio blockbuster games. “For a game to hold attention, those events must provoke blood-pumping human emotion. When the generated events provoke pride, hilarity, awe, or terror, the game works.”

Unlike screenwriters, novelists, or choreographers, game designers do not focus on creating events, Sylvester explains. “Instead of authoring events,  we design mechanics [the rules for how a game works]. Those mechanics then generate events during play.”

In his view, “The hard part of game design is not physically implementing the game. It is inventing and refining knowledge about the design.” And successful game creation involves “inventing mechanics, fiction, art, and technology that interconnect into a powerful engine of experience.”

His 405-page book also shows why you should not try to spell out everything up front before beginning work on a new game. It is too easy to overplan, he emphasizes. But it is also easy to underplan. So you should aim for a process in the middle: iteration, “the practice of making short-range plans, implementing them, testing them, and repeating.” And that loop-like process is applied not just to the overall game. “We can iterate on a level, a tool, or an interface. On larger teams, there should be many different iteration loops running at the same time.”

According to news accounts emerging from the recent Game Developers Conference in San Francisco, much of the video game creation business is now gravitating toward independent developers and game companies with 10 or fewer employees. And the main focus within that movement is on creating games for tablet computers and smartphones–platforms with lower barriers to entry. But powerful new video game consoles are expected to appear soon, and they likely will drive the creation of new games, as well as upgrades for some successful existing games.

Whether you work alone, in a small shop, or on intercontinental game-development teams within big companies, you can learn important insights, processes, and skills from Tynan Sylvester’s Designing Games.  And if you are now in the process of trying to find a design job somewhere in the video game industry, you definitely need to read it.

Si Dunn

Python for Kids – A fun & efficient how-to book that even grownups can enjoy – #programming #bookreview

Python for Kids
Jason R. Briggs
(No Starch Press – paperback, Kindle)

Subtitled “A Playful Introduction to Programming,” Python for Kids is recommended “for kids aged 10+ (and their parents).”

But what if your kids are grown or you don’t have any kids? Should you ignore this book while learning Python? Absolutely not.

I’ve recently taken two Python 3 classes, and I wish I had had many of the explanations and illustrations in Python for Kids available to help me grasp some of the concepts. I’m keeping this book handy on my shelf for quick reference, right next to works such as Head First Python and Think Python.

Yeah, it contains plenty of silliness for kids, such as a wizard’s shopping list that includes “bear burp” and “slug butter,” and using if and elif statements to create jokes such as “What did the green grape say to the blue grape? Breathe! Breathe!” (I have grandchildren who consider this stuff uproariously funny.)

But Python for Kids also covers a lot of serious topics in its 316 pages and shows—simply and clearly—how to handle many major and minor aspects of the Python programming language. NOTE: This book is for the newer 3.X versions of Python, not older 2.X versions that are still in use and still a focus of some books for beginners.

One Python class I took didn’t introduce tuples until the 7th week of lectures. Python for Kids, however, has the reader using tuples on page 38, right after six pages of learning how to work with strings and lists. And the explanations and examples for these elements are clearer than what I got in a college-level course. (Of course, it helps when exercises involve “bear burp” and “gorilla belly-button lint” rather than boring generics such as “Mary has 3 oranges” and “Jack has 6 pencils.”)

Jason R. Brigg’s new book also shows how to draw shapes and patterns and create simple games and animations—topics not covered in some other beginning Python books I have used.

Another cool feature of this excellent how-to book is an afterword titled “Where to Go from Here.” It provides suggestions and gives links for those who want to learn more about games and graphics programming or take up other programming languages such as Ruby, PHP or JavaScript.

Bottom line, Python for Kids offers education and entertainment for children, their parents, and almost anyone else serious about having some fun while learning Python 3.

Si Dunn

LEGO Bonanza — Stack ’em up: 3 hot new books for LEGO builders – #bookreview

No Starch Press recently has released three new books aimed at the world’s millions of LEGO™ builders:

  • The Unofficial LEGO™ Builder’s Guide, 2nd Edition
  • The LEGO™ Adventure Book, Vol. 1
  • The Unofficial LEGO™ Technic Builder’s Guide.

Here are short reviews of each.

The Unofficial LEGO™ Builder’s Guide, 2nd Edition
Allan Bedford
(No Starch,
paperbackKindle)

Allan Bedford’s popular how-to guide has been updated, and all photographs and illustrations are now in color.

The well-written 221-page book starts at the absolute beginner’s level, showing and explaining the various LEGO pieces, which range from “bricks” to “plates” to “slopes” to “tiles” and numerous others. From there, it shows the best ways to connect pieces for successful construction.  Then it delves into three different, progressively larger, sizes of LEGO constructions –minifig, miniland, and jumbo – before briefly going smaller, to microscale.

Bedford explains how to design and build structures and characters from LEGO elements and also shows how to put together several projects, including a train station, a space shuttle, a mosaic, a game board, and a sculpture of the Sphinx.

His book’s Appendix A offers a helpful “Brickopedia” that contains “a selection of more than 275 elements, from basic bricks, slopes, and plates, to specialized elements, arches, and even decorative elements.

The pieces included represent the most common and most reusable elements in the LEGO system,” Bedford notes. The parts’ specifications are given, and helpful notes are included, as well.

Appendix B, meanwhile, shows how to download and use design grids to plan complex LEGO projects before you build them.

The LEGO™ Adventure Book, Vol. 1
Megan Rothrock
(No Starch, hardback 
Kindle)

Megan Rothrock’s book is the debut volume in the new “The LEGO™ Adventure Book series” from No Starch Press.

Subtitled “Cars, Castles, Dinosaurs & More!”, Volume 1 presents excellent color photographs of nearly 200 intriguing models crafted by LEGO builders around the world. Ms. Rothrock’s 200-page book also features “brick-by-brick breakdowns” of 25 models that range from a medieval village to T. Rex and a British Railways steam engine.

The constructions are shown step by step in close-up, so even inexperienced builders can duplicate them. Some are simple, such as a small bridge “that can be added to any scene” in eight steps. And others are more involved, such as a mecha named “Counterblast” that is well-armed with big guns that requires more than 50 steps to complete.

Megan Rothrock is well-known in LEGO builder circles. She is a former set designer for the LEGO Group, and her models have been widely displayed, including at ComicCon and LEGO events in Europe. She is now a freelance toy designer in Denmark.

LEGO builders frequently claim that they can build models of “almost anything” with LEGO parts. With books such as The LEGO™ Adventure Book, Vol. 1 helping guide and train you, you definitely can learn to build lots of different types of models.

The Unofficial LEGO™ Technic Builder’s Guide
Paweł “Sariel” Kmieć
(No Starch, paperbackKindle)

The LEGO™ Technic system lets you build LEGO models that move. The system includes motors, gears, pneumatics, pulleys, linkages, and other devices designed for LEGO constructions. But working with Technic can be complex at times.

Fortunately, Paweł “Sariel” Kmieć has excellent credentials for showing and explaining how to construct Technic models and make them operate. He is described as “YouTube’s most popular LEGO Technic builder, a guest blogger for the official LEGO Technic blog, and a 2012 LEGO Ambassador.”

His 333-page book is packed with illustrations, photographs, explanations, and tips on everything from simple “pins” (which “keep bricks and beams together”) to wheeled suspension systems and using a subtractor to get better steering of a tracked LEGO vehicle that has two motors and is radio-controlled.

While most of the focus is on details of how to use specifics Technic parts, he also shows some amazing and inspiring powered models that he has built from LEGO pieces and LEGO Technic devices.

Whether you are new to Technic or an old hand, you likely will want to build many things that move, once you have this book. 

Si Dunn

Enterprise Games – How to build a better 21st-century business with game mechanics – #business #bookreview

Enterprise Games: Using Game Mechanics to Build a Better Business
Michael Hugos
(O’Reilly, paperbackKindle)

Can 21st-century games and gamers attack and destroy the top-down, assembly-line thinking that still keeps many businesses firmly rooted in the previous century?

 Michael Hugos’ compelling new book makes a solid case that they can. Game mechanics, he argues, can reshape how workers work, how organizations are managed, and how business goals get accomplished in today’s volatile global economy.

“Games and the associated technology we currently refer to as video games offer us more than just a diversion and escape from difficult times,” contends Hugos. “They offer us field-tested models to use for organizing companies and performing complex and creative tasks. They offer clear and compelling examples for how people can work together, build their careers, and earn a living in rapidly changing and unpredictable environments.”

Hugos, principal at the Center for Systems Innovation, offers his well-written views in a 199-page book “loosely divided into three parts.”

Part One focuses on “ideas and case studies to illustrate how games can provide operating models to follow for redesigning work.”

Part Two presents “a discussion of games and game mechanics that are relevant to the way work is done.” He includes “specific examples, pictures, and case studies to show how game techniques and technologies can be applied to the design of new business systems and workflows.”

Part Three “describes business and social impacts of combining technology from video games with in-house corporate systems, consumer technology, and cloud computing. The book concludes with a discussion about where this is all going and what it might mean for the future of work.”

During the coming months, Enterprise Games may spur many discussions and arguments at all levels of enterprise. And these may lead to some business-model reorganizations not only in Corporate America but elsewhere in the interconnected global economy.

For these changes to happen, however, many company leaders will have to stop thinking “top down” and learn to adapt “the four traits of a game…goal, rules, feedback system, and voluntary participation” to how they to structure and operate a business.

“We all have a sense of what a game is,” Hugos notes. But most of us also have been taught that “play” is not “work.” Enterprise Games shows how the two concepts can be brought together in ways that can make companies more competitive and more profitable in these uncertain times.

Si Dunn

Practical Computer Vision with SimpleCV – ‘Seeing’ with Python – #programming #bookreview

Practical Computer Vision with SimpleCV
Kurt Demaagd, Anthony Oliver, Nathan Oostendorp, and Katherine Scott
(O’Reilly, paperbackKindle)

SimpleCV, or Simple Computer Vision, is “an easy-to-use Python framework that bundles together open source computer vision libraries and algorithms for solving problems,” according to the authors of this useful and informative how-to book.

The subtitle is “Making Computers See in Python,” and the codes examples require Python 2.7.

Why learn computer vision? “As cameras are becoming standard PC hardware and a required feature of mobile devices, computer vision is moving from a niche tool to an increasingly common tool for a diverse range of applications,” the authors note.

Indeed, cameras and computer vision now are being used in everything from facial recognition systems and video games to automobile safety, industrial automation, medicine, planetary exploration, and even agriculture.

“The SimpleCV framework has compiled installers for Windows, Mac, and Ubuntu Linux, but it can be used on any system on which Python and OpenCV can be built,” the authors state.

Practical Computer Vision with SimpleCV shows how to use the framework and simple application examples to get started toward building your own computer vision applications. The 240-page book has 10 chapters:

  • Introduction
  • Getting to Know the SimpleCV Framework
  • Image Sources
  • Pixels and Images
  • The Impact of Light
  • Image Arithmetic
  • Drawing on Images
  • Basic Feature Detection
  • FeatureSet Manipulation
  • Advanced Features (focuses on optical flow)

The book also has three appendices: Advanced Shell Tips, Cameras and Lenses; and Advanced Features (deals with advanced segmentation and feature extraction tools).

Practical Computer Vision with SimpleCV provides a good overview of computer vision basics and shows, using simple but effective examples, how you can put them to work.

Si Dunn

WebGL: Up and Running – 3D Web graphics for the beginner, with expert guidance – #bookreview

WebGL: Up and Running
Tony Parisi
(O’Reilly,
paperbackKindle)

“WebGL,” Tony Parisi notes, “brings 3D to the browser, providing a JavaScript interface to the graphics hardware on your machine.”

Parisi is co-creator of the VRML and X3D languages which have become ISO standards for networked 3D graphics. So he knows a bit about using WebGL (Web Graphics Library) for low-level 3D renderings on the Web. If you are ready to give Web 3D graphics a try, you need WebGL: Up and Running.

Parisi’s new book is a well-written “quick introduction” to 3D programming. It has 211 pages and numerous code examples and screen shots. And it is organized into eight chapters and an appendix that provides links to several WebGL resources.

The first two chapters offer an overview of the WebGL API and Three.js, the open source JavaScript library that is used in the programming examples.

Chapters 3 through 6 focus on “the details of programming graphics, animation, and interaction” and explore “WebGL’s breakthrough capabilities for integrating 2D and 3D into a seamless user experience.”

Chapters 7 and 8 look at “real-world WebGL production topics, from authoring tools and file formats to building robust and secure WebGL applications.” Also in`Chapter 8, Parisi shows how to build a full WegGL application, a racing game.

You will need some familiarity with HTML, CSS, JavaScript, jQuery and Ajax to use this book. But you won’t need prior 3D graphics experience. The author’s goal is to get you up and running well enough that you can start using WebGL and learning as you go.

Still, “even the 3D graphics expert will learn something new” from this how-to guide, promises Ken Russell, the Khronos Group’s WebGL Working Group chair, in the Foreword to WebGL: Up and Running.

Si Dunn