<< Chapter < Page Chapter >> Page >

Preview

It's time to kick back and have a little fun with what you have learned. In this module, I will present four programs, (one of which is an interactive 3D game) , that use the current capabilities of the game-math library to produce some fairly serious animation. The programs arenamed:

  • GM01test08
  • GM01test04
  • GM01test03
  • StringArt04

I will explain the game program in detail and will provide a brief description of the other three programs.

GM01test08

The first three programs are based on an artificial life concept frequently referred to as boids , which is "a computer model of coordinated animal motion such as bird flocks and fish schools."

Flocking fish:

I got the idea for this game while watching a segment of a documentary series named Blue Earth on one of the cable channels. I even surprised myself as to how well I was able to simulate some of the scenes in that TV program using programming concepts similar to those used by Reynolds in boids.

A flocking game program

Although the flocking algorithms won't be the same as those used in the original boids program written by Reynolds, the general concepts will besimilar.

The first program named GM01test08 is an interactive 3D game program based on the flocking behavior of fish. This game simulates a school of preyfish being attacked and eaten by a predator. The objective for the player is to cause the predator to catch and eat all of the prey fish in a minimum amount oftime.

A preview

I will get into a lot more detail about the game aspects of the program later. For a preview, Figure 1 shows the instant in time when a school of 500 prey fish (shown in red) have just been attacked by the blue predator shown near the center right.

Figure 1 A school of red prey fish being attacked by a blue predator.

Missing image.

The predator in Figure 1 has penetrated the school of fish by swimming from left to right, eating fish all along the way, and has emerged from the rightside of the school. The prey fish, which were originally in a small tight cluster, have reacted to the presence of the predator by scattering in anattempt to avoid being eaten.

Fully three-dimensional

This game program is fully three-dimensional. Any or all of the fish are capable of swimming in any direction at any time in the 3D world. This isevidenced by the prey fish near the center that appear to have very short or non-existent tails. The fish that appear to have no tails actually have tailsthat are the same length as the tails on all of the other fish. These fish appear to have no tails because they are swimming either directly toward ordirectly away from the viewer. I will have more to say about this later.

GM01test04 and GM01test03

These two programs provide essentially the same behavior (as one another) , except that one is a 2D program and the other is a 3D program. They are not gameprograms. Rather, they are demonstration programs that show another aspect of flocking behavior. In these two programs, a large number of predators pursue asingle prey object.

A screen shot of the animated output from the 2D version is shown in Figure 2 and a screen shot of the output from the 3D version is shown in Figure 3 .

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Game 2302 - mathematical applications for game development. OpenStax CNX. Jan 09, 2016 Download for free at https://legacy.cnx.org/content/col11450/1.33
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Game 2302 - mathematical applications for game development' conversation and receive update notifications?

Ask