<< Chapter < Page Chapter >> Page >

Override some or all of five methods

To create a new game program, you override some or all of the five methods shown in Listing 1 .

The program that I explained in the earlier module overrode the LoadContent and Draw methods in such a way as to create a sprite and display it in the upper-left corner of the game window.However, that program did not override the Update method. The sprite did not move and was not animated.

Preview

Moving and bouncing sprite

The Update method is used to implement game logic. The Draw method is used to render the current state of the game on the computer screen. In this module, I will override the Update method to cause the sprite to move around the game window and to bounce off theedges of the game window.

Figure 1 shows a reduced screen shot of the sprite moving in the game window.

Figure 1 . Moving and bouncing sprite.

missing image

The Debug class

On a completely unrelated note, I will introduce you to the Debug class and show you how to use the WriteLine method of the Debug class to display information while the program is running.

Figure 2 shows a screen shot of the Debug output window in the lower left corner of the Visual C# IDE. I will explain the values that yousee in Figure 2 later in this module.

Figure 2 . Debug output window.

Missing image

Discussion and sample code

I will explain the code in fragments, and I will only explain those fragments that are different from the code that I explained in the earlier module titled Xna0118-The XNA Framework and the Game Class . A complete listing of the code for the class named Game1 is provided in Listing 9 near the end of the module.

Making the sprite move

Sprite motion in an XNA game is accomplished by changing the current position coordinates of the sprite in the Update method and drawing the sprite in its new position in the Draw method.

The game loop

You learned about the XNA game loop in the earlier module .

In order to make the sprite move, we need to override the Update method to cause the sprite's position coordinates to change during eachiteration of the game loop. The code to accomplish this begins in Listing 2 .

Listing 2 . Declare variables that specify the incremental distance to move.

//Specify the distance in pixels that the sprite // will move during each iteration.int stepsX = 5; int stepsY = 3;

Distance to move

Listing 2 declares and populates two instance variables that specify the incremental distance that the sprite will move each time the Update method is called. The horizontal and vertical incremental distances are 5 pixelsand 3 pixels respectively.

Note that these two variables are physically declared between the UnloadContent and Update methods. Because they are declared inside a class but outside of a method or constructor, they are instance variables.

How often is the Update method called?

In this program, the computer will do its best to cause the Update method to be called once every 16.67 milliseconds or 60 times per second.

The Update and Draw methods are called at different rates depending on whether the Game property named IsFixedTimeStep is true or false.

Questions & Answers

I'm interested in biological psychology and cognitive psychology
Tanya Reply
what does preconceived mean
sammie Reply
physiological Psychology
Nwosu Reply
How can I develope my cognitive domain
Amanyire Reply
why is communication effective
Dakolo Reply
Communication is effective because it allows individuals to share ideas, thoughts, and information with others.
effective communication can lead to improved outcomes in various settings, including personal relationships, business environments, and educational settings. By communicating effectively, individuals can negotiate effectively, solve problems collaboratively, and work towards common goals.
it starts up serve and return practice/assessments.it helps find voice talking therapy also assessments through relaxed conversation.
miss
Every time someone flushes a toilet in the apartment building, the person begins to jumb back automatically after hearing the flush, before the water temperature changes. Identify the types of learning, if it is classical conditioning identify the NS, UCS, CS and CR. If it is operant conditioning, identify the type of consequence positive reinforcement, negative reinforcement or punishment
Wekolamo Reply
please i need answer
Wekolamo
because it helps many people around the world to understand how to interact with other people and understand them well, for example at work (job).
Manix Reply
Agreed 👍 There are many parts of our brains and behaviors, we really need to get to know. Blessings for everyone and happy Sunday!
ARC
A child is a member of community not society elucidate ?
JESSY Reply
Isn't practices worldwide, be it psychology, be it science. isn't much just a false belief of control over something the mind cannot truly comprehend?
Simon Reply
compare and contrast skinner's perspective on personality development on freud
namakula Reply
Skinner skipped the whole unconscious phenomenon and rather emphasized on classical conditioning
war
explain how nature and nurture affect the development and later the productivity of an individual.
Amesalu Reply
nature is an hereditary factor while nurture is an environmental factor which constitute an individual personality. so if an individual's parent has a deviant behavior and was also brought up in an deviant environment, observation of the behavior and the inborn trait we make the individual deviant.
Samuel
I am taking this course because I am hoping that I could somehow learn more about my chosen field of interest and due to the fact that being a PsyD really ignites my passion as an individual the more I hope to learn about developing and literally explore the complexity of my critical thinking skills
Zyryn Reply
good👍
Jonathan
and having a good philosophy of the world is like a sandwich and a peanut butter 👍
Jonathan
generally amnesi how long yrs memory loss
Kelu Reply
interpersonal relationships
Abdulfatai Reply
What would be the best educational aid(s) for gifted kids/savants?
Heidi Reply
treat them normal, if they want help then give them. that will make everyone happy
Saurabh
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

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