Jashore University of Science and Technology: 2D Car Simulation Game With Opengl
Jashore University of Science and Technology: 2D Car Simulation Game With Opengl
2D Car Simulation game is a simple car simulation game with many features
using OpenGL. This game features a car driving in a road with obstacles. The
player has to avoid the obstacles and drive the car. The game does not have an
end point. Meaning the player can keep driving as long as they avoids the
obstacles. If the player hits an obstacle the game ends and goes back to main
menu. The player can easily play the game using the game interface. After
opening the game, the player has to press space on keyboard to start playing.
The player’s car color is pink. The car starts running as soon as the game starts.
The obstacles in the road have different colors. The player can change the car’s
speed to low, medium and high. If the player presses the L key on the keyboard,
then the car moves slowly. When the player presses the M key, then the car
moves in medium speed. When the player presses the key H on the keyboard,
then the car moves in high speed. The game is over if the player hits an
obstacle.
Features
• It has a road
• The obstacles and other cars comes in red, violet and orange color
It is an Use case or Activity Diagram of the simulation game. The diagram shows
how the game system works.
Implementation Details
When we run the application firstly it pop-up the intro screen. It consists of a
road view with a road going through a field and a sky.
The start menu design is implemented using this segment of code:
The car design is implemented using this part of code:
The obstacles are implemented using this segment of code:
In order to control the car speed, this segment of code is used:
This segment of code implements the controlling of the car left and right:
Conclusion
Overall, I am quite satisfied with the project by the end. Almost all the important
elements worked successfully at the end, with the exception of a couple small
details. Although it became clear by the end of the term that nothing would be
perfect, I am happy to have accomplished the bulk of a challenging project.
Specifically, all for major sections were considered a general success, though
some to a greater degree than others. Having worked for 2 months almost
continuously on this project, I have realized a number thing about large-scale
project development. First, it is absolutely critical to design code before diving in
and implementing functionality. Second, it is important to think through all the
small details before plunging in. And third, it is necessary to have backup plans in
the inevitable event that something fails to go according to plan. Finally, it is also
absolutely critical to factor in debugging time to the development process. It is
one thing to plan for design and implementation time, but it is equally important
to assume that things won’t work perfectly the first time and consequently to
budget substantial time for such issues as debugging, system integration and
code merging. I am already much better prepared to approach difficult, large
engineering problems. Although I definitely made mistakes along the way, my
project overall can be considered a success. As such, future engineering
endeavors can expect to go a little more smoothly based on our experiences with
this project.
FUTURE PLAN