Table of contents
- Preface
- Preview
- General background information
- Discussion and sample code
- Run the program
- Summary
- What's next?
- Miscellaneous
- Complete program listing
Preface
This module is one in a collection of modules designed to teach you about the anatomy of a game engine.
Although the modules in this collection will concentrate on the Java game library named Slick2D, theconcepts involved and the knowledge that you will gain is applicable to different game engines written in different programming languages as well.
The purpose of this module is to take a first look at bitmap graphics in Slick2D.
Viewing tip
I recommend that you open another copy of this module in a separate browser window and use the following links to easily find and view the Figuresand Listings while you are reading about them.
Figures
- Figure 1 . Background image in Windows Paint.
- Figure 2 . Ladybug image in Windows Paint.
- Figure 3 . Ladybug image in Windows Picture and Fax Viewer.
- Figure 4 . Ladybug image in Gimp.
- Figure 5 . Output from program Slick0140a.
Listings
- Listing 1 . Beginning of the class named Slick0140a.
- Listing 2 . The main method.
- Listing 3 . The overridden init method.
- Listing 4 . The overridden render method.
- Listing 5 . Source code for the program named Slick0140a.
Preview
What you have learned
In the previous module, you learned about a property of the GameContainer class named running , and how it is used by the start method to keep the game loop running.
You learned about the salient features of the gameLoop method of the AppGameContainer class.
You learned about the updateAndRender method of the GameContainer class and how it decides when and if to call the update and render methods of the object of the Game class that is wrapped by the container.
You touched on the difference between normal delta and smoothed delta .
You learned about minimumLogicInterval and maximumLogicInterval and how the contents of those two variables are used to determine if, when, and how many times to call the update method during each iteration of the game loop. You also learned how the contentsof these two variables are used to determine the value that is passed as delta each time the update method is called.
You learned that the render method is normally called once and only once during each iteration of the game loop.
You saw a simple example of how you can use the value of delta that is received by the update method to control the behavior of a game program.
You learned that you can set the size of the game window when you instantiate an object of the AppGameContainer class by passing dimension parameters to the constructor.
You learned that you can set the target frame rate by calling the setTargetFrameRate method on the GameContainer object.
You learned how to display text in the game window.