Sniper Simulator Game
Computer Graphics Final Project Proposal by Elbert Christopher Larosa & Matthew Kharli
Background
The idea for this Computer Graphics final project is based on our first understanding that the idea should be feasible, fun, but still challenging for us. Having interest in the subject of sniping (which is to shoot at individuals as opportunity offers from a concealed or distant position), also because of having early understandings in some of sniping’s concept, we came up with the idea to make a realistic Sniper Simulator game. The game will not only be a typical shooting game; instead it is going to be realistic so that the game will not only excel in visuals and interactivities, but the game could also excel in animations because of the logics and calculations behind it (such as the movements of the bullet being affected by various causes). Thus, multiple aspects of the final project can be fulfilled.
Project Description
The story behind the game is about a sniper recruit that is currently being tested by the academy at the sniper shooting range. The recruit must pass the test by a certain standard or else, it means going back to the class all over again. The player will act as the recruit that has to hit all the target practice placed at various ranges. The player’s number of shots (attempts) needed to hit all the target practice is going to be counted and that the number must be lower than a certain standard set by the academy in order to pass. Even though this is only the shooting range, the player still must fight against the environment in order to hit the targets. The player must fight against wind, gravity, and other aspects that could affect the shot, resulting in a miss. To pass the course is maybe can be considered as easy, but to get the best record, it is another story. The details of the project’s features are going to be discussed in the Project Scope section.
Project Scope
The project scope is going to be discussed into two parts, which are the project’s in-scope (the features that are going to developed in the game) and the project’s out-scope (the features that are not going to be developed in the game / not going to be the concern of this project).
The project’s in-scope are:
- Calculations on the bullet’s trajectory caused on some of the environment causes, which are the distance, wind direction & speed, and gravity.
- The game’s main menu.
- The game’s background music and sound effects.
- The bullet trace’s silhouettes, so that the player can see how the environment is affecting the bullet.
- The game’s models (such as the target practice, the scope’s visual, the environment, etc.).
- Calculation on player’s attempts (number of bullets shot) and the winning / losing conditions.
- In-game Heads-Up Display (such as the wind’s meter, number of bullets shot, etc.)
While the project’s out-scope are going to be:
- Causes that affect bullet’s trajectory other than the ones mentioned in the project in-scope, such as the elevation between the shooter and the target, the humidity, etc.
- Views other than from the sniper’s scope.
Although the features of the game have been mentioned, changes may occur in the future as the game is being developed.
Environment
For the project, we are going to use WebGL as the renderer for the game’s visuals, which will be 3D based. For the framework, we will be using Babylon.js because of its targeted approach towards web based game development. For the visuals, some of the models are going to be made and there could be also some models that are going to be taken from the internet, if available.
Group Members’ Responsibility
For the group members’ responsibility and task allocation, Elbert is going to handle the coding side while Matthew is going to handle the modeling of the project. However, as the project is being conducted, the could be conditions where each other subject’s workloads will be shared.
User Interface Sketches
To download the final project proposal’s file, please click on this link: Computer Graphics Final Project Proposal by Elbert C. L. & Matthew K.