<< Chapter < Page
  Xna game studio     Page 14 / 16
Chapter >> Page >
"Snapshot of the game timing state expressed in values that can be used by variable-step (real time) or fixed-step (game time) games."

We won't be using this information in this module, so I won't pursue it further here. However, we will need the information in future modules when wewrite code to cause a sprite to be moved and/or animated.

The call to the GraphicsDevice.Clear method

The call to the GraphicsDevice.Clear method in Listing 7 is contained in theskeleton code for the Game1 class as shown in Listing 3 .

The GraphicsDevice class provides overloaded versions of the Clear method. According to the documentation, the version shown in Listing 7

"Clears the viewport to a specified color."

This version of the Clear method requires a single incoming parameter of type Color .

The Color class

The documentation describes an object of the Color class as follows:

"A Color object stores a 32-bit value that represents a color. The color value contains four, 8-bit components: alpha, red, green, andblue. The first 8 bits (the most significant) contain the alpha component, the next 8 bits contain the red component, the next 8 bits contain the greencomponent, and the next 8 bits (the least significant) contain the blue component. The 32-bit value is stored in a variable of type ARGB."

Type ARGB

We learned about the ARGB texture format earlier . Although ARGB is referred to as a type in the above quotation, it is not a class. Rather, it is a type established using a C-style typedef .

Constructors, methods, and constants

The Color class provides several overloaded constructors and numerous methods that allow you to perform various operations on a Color object.

One of the constructors allows you to create a Color object that represents the color of your choice by specifying the individual values ofthe alpha, red, green, and blue color components.

In addition, the class provides many constants that represent different colors, one of which is named CornflowerBlue . This is the background color of the game window shown in Figure 1 .

You can create Color objects representing those colors simply by calling out the name of the class and the name of the color as shownby the code in Listing 7 .

Code to draw the sprite

Three statements are required to draw one sprite and twelve statements are required to draw ten sprites with the same settings. The sequence consists of a Begin statement, one or more SpriteBatch.Draw statements, and one End statement.

Listing 8 shows the code that is used to draw our sprite once each time the Game.Draw method is called. Note that the SpriteBatch.Draw method is called inside the Game.Draw method.

Listing 8 . Draw the sprite.

spriteBatch.Begin(); spriteBatch.Draw(myTexture,spritePosition,Color.White); spriteBatch.End();

The image that we used to create the sprite is shown in raw form in Figure 2 . This is a rectangular image with the pixels outside the blue area having analpha value of about 5.

Honor the alpha values

As mentioned earlier, the default case is to honor the alpha values in XNA 4.0. This produces the output image 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, Xna game studio. OpenStax CNX. Feb 28, 2014 Download for free at https://legacy.cnx.org/content/col11634/1.6
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Xna game studio' conversation and receive update notifications?

Ask