<< Chapter < Page Chapter >> Page >

General background information

While studying the past couple of modules, you have learned how to create and then to improve a class named Sprite from which you can instantiate objects that behave as sprites.

Another improvement

In this module, we will once again improve the Sprite class, this time adding the capability for a sprite to determine if it has collidedwith another sprite. This capability is critical for game development in many areas.

Definition of a collision

Our definition of a collision is based on the bounding rectangles for the images that represent the two sprites. If the rectangles intersect in theircurrent positions, a collision is deemed to have occurred. If they don't intersect, there is no collision.


This program is not yet a game because it doesn't provide player interaction. Instead it is a demonstration program that demonstrates sprite collisiondetection is a rather interesting way.

Figure 1 shows a screen snapshot at three different points in time while the program was running.

An epic battle

The demonstration program chronicles a battle between spiders and ladybugs. When the program starts, there are 200 black widow spiders and five ladybugs onthe web in the game window. (See the top image in Figure 1 .)

Spider and ladybug motion

The spiders move at different speeds in different directions but generally toward the southeast. When a spider goes outside the game window on the rightside or the bottom, it reappears on the left side or the top.

The ladybugs also move at different speeds in different directions but generally toward the northwest. When a ladybug goes outside the game window onthe left side or the top, it reappears on the right side or on the bottom.

The spiders don't die easily

When a ladybug collides with a black widow spider, the spider disappears but is reincarnated as a green spider 128 pixels to the right of its originalposition.

When a ladybug collides with a green spider, the spider disappears but is reincarnated again as a small brown spider 128 pixels to the right of itsoriginal position.

The death blow

Finally, when a ladybug collides with a brown spider, the spider is eaten and is removed from the population of spiders. Therefore, all of the spiderseventually disappear and the ladybugs continue marching on victorious.

Output screen images

The top image

The top image in Figure 1 was taken shortly after the program began running. Therefore, the game window was mostly populated with ladybugs and black widowspiders. There are a few green spiders and I believe I see one brown spider at the very bottom border near the right side.

Figure 1 . Screen output at three different times while the program was running.

missing image

The middle image

The middle image in Figure 1 shows the program output after the program has been running for awhile. At this point in time, the game window is mainlypopulated with ladybugs, green spiders, and brown spiders. However, there are a few black widow spiders still in the picture.

The bottom image

The bottom image shows the program output at an even later point in time. At this point, the game window is populated with ladybugs, one green spider and afew brown spiders. Given enough time and a little luck, the ladybugs will collide with and destroy even these remaining spiders.

Questions & Answers

what is variations in raman spectra for nanomaterials
Jyoti Reply
I only see partial conversation and what's the question here!
Crow Reply
what about nanotechnology for water purification
RAW Reply
please someone correct me if I'm wrong but I think one can use nanoparticles, specially silver nanoparticles for water treatment.
yes that's correct
I think
what is the stm
Brian Reply
is there industrial application of fullrenes. What is the method to prepare fullrene on large scale.?
industrial application...? mmm I think on the medical side as drug carrier, but you should go deeper on your research, I may be wrong
How we are making nano material?
what is a peer
What is meant by 'nano scale'?
What is STMs full form?
scanning tunneling microscope
how nano science is used for hydrophobicity
Do u think that Graphene and Fullrene fiber can be used to make Air Plane body structure the lightest and strongest. Rafiq
what is differents between GO and RGO?
what is simplest way to understand the applications of nano robots used to detect the cancer affected cell of human body.? How this robot is carried to required site of body cell.? what will be the carrier material and how can be detected that correct delivery of drug is done Rafiq
what is Nano technology ?
Bob Reply
write examples of Nano molecule?
The nanotechnology is as new science, to scale nanometric
nanotechnology is the study, desing, synthesis, manipulation and application of materials and functional systems through control of matter at nanoscale
Is there any normative that regulates the use of silver nanoparticles?
Damian Reply
what king of growth are you checking .?
What fields keep nano created devices from performing or assimulating ? Magnetic fields ? Are do they assimilate ?
Stoney Reply
why we need to study biomolecules, molecular biology in nanotechnology?
Adin Reply
yes I'm doing my masters in nanotechnology, we are being studying all these domains as well..
what school?
biomolecules are e building blocks of every organics and inorganic materials.
anyone know any internet site where one can find nanotechnology papers?
Damian Reply
sciencedirect big data base
Introduction about quantum dots in nanotechnology
Praveena Reply
what does nano mean?
Anassong Reply
nano basically means 10^(-9). nanometer is a unit to measure length.
do you think it's worthwhile in the long term to study the effects and possibilities of nanotechnology on viral treatment?
Damian Reply
absolutely yes
how did you get the value of 2000N.What calculations are needed to arrive at it
Smarajit Reply
Privacy Information Security Software Version 1.1a
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get the best Algebra and trigonometry course in your pocket!

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?