0% found this document useful (0 votes)
567 views19 pages

Game Development

The document is a project proposal report for developing a game called "ZigZag" using Unity 3D. It was submitted by Naman Aggarwal under the supervision of Akshay Banda from Being Digital and Dr. Sumita Nainan from SVKM's NMIMS University. The report includes an introduction to the video game industry and the background of the project. It then describes the problem definition, overview of the project, and methodology used. The methodology discusses building the 3D environment in Unity and coding the game using C#. It also includes images of the main menu, platform spawn code, and lists models, prefabs, and scripts used.

Uploaded by

Naman Aggarwal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
567 views19 pages

Game Development

The document is a project proposal report for developing a game called "ZigZag" using Unity 3D. It was submitted by Naman Aggarwal under the supervision of Akshay Banda from Being Digital and Dr. Sumita Nainan from SVKM's NMIMS University. The report includes an introduction to the video game industry and the background of the project. It then describes the problem definition, overview of the project, and methodology used. The methodology discusses building the 3D environment in Unity and coding the game using C#. It also includes images of the main menu, platform spawn code, and lists models, prefabs, and scripts used.

Uploaded by

Naman Aggarwal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

Zig Zag using Unity 3D

Project Proposal Report submitted in the partial fulfillment

Of
Bachelor of Technology
In
Electronics and Telecommunications Engineering

By

Naman Aggarwal

Under the supervision of

Akshay Banda
(Industry Mentor, Being Digital)

Dr. Sumita Nainan


(Asst. Professor, EXTC Department, MPSTME)

SVKM’s NMIMS University


(Deemed-to-be University)
MUKESH PATEL SCHOOL OF TECHNOLOGY
MANAGEMENT & ENGINEERING
Vile Parle (W), Mumbai-56

2020-21

CERTIFICATE

This is to certify that the project entitled “ZigZag using Unity 3D”, is in progress by
Mr. Naman Aggarwal under my guidance and supervision for Technical Internship
Program as part of the curriculum of Bachelor of Technology in Electronics and
Telecommunications engineering of MPSTME, SVKM’s NMIMS (Deemed-to-be
University), Mumbai, India.

------------------------------

Akshay Banda

------------------------------

Dr. Sumita Nainan


Acknowledgment

I have taken efforts in this project. However, it would not have been possible without
the kind support and help of many individuals and organizations. I would like to extend
my sincere thanks to all of them.

I am highly indebted to Akshay Banda Sir for their guidance and constant supervision
as well as for providing necessary information regarding the project & also for their
support in completing the project.
I would like to express my gratitude to my faculty mentor Dr. Sumita Nainan Sir
for their kind cooperation and encouragement which help me in the completion of this
project.

I would like to express my special gratitude and thanks to industry persons for giving
me such attention and time.
Abstract

Computer gaming is a key component of the rapidly growing entertainment industry.


While building computer games has typically been a commercial endeavor, it is
believed that designing and constructing a computer game is also a useful activity for
educating students about geometric modeling and computer graphics.

The report includes the project that is a game developed for Being Digital. It will be
made using Unity 3D, C#, and guidance from the mentors at Being Digital. It is a
detailed explanation of the project and references
Table of Contents

Topics Page

List of Figures 1

Chapter 1 Introduction

1.1 Introduction of the Industry 2

1.2 Background of the project topic 2

Chapter2

3.1 Problem Definition 3

3.2 Overview of Project 3

Chapter 3 Methodology 4-5


3.1 Environment Development 4
3.2 Coding 4

6
Chapter 4 System Analysis
Chapter 5 Testing and Results 7-9
Chapter 6 Advantages, Limitations and Applications
6.1 Advantages 10
6.2 Limitations 11
6.3 Applications 11
Chapter 7 Conclusion and Future Scope 13
References 14
List of the figures
Fig. No. Name of the figure Page
No.
1 Snapshot of the main menu of the game 4

2 Platform spawn code 5

3 All models 7

4 All prefabs 8

5 Scripts 8

6 Game Mode (Result) 9

7 Environment Development 9

1
Chapter 1
Introduction

Introduction
1.1 Introduction of the Industry

Video game development is the process of creating a video game. Development is


undertaken by a game developer, which may range from one person to a large business.
Traditional commercial PC and console games are normally funded by a publisher and
take several years to develop. 2-dimensional JAVA games can take less time and can
be produced cheaply by individuals and small developers. The 2-dimensional JAVA
game industry has seen a rise in recent years with the growth of new online distribution
systems and the mobile game market.

The first video games were developed in the 1960s but required mainframe computers
and were not available to the general public. Commercial game development began in
the 1970s with the advent of first-generation video game consoles and home computers.
Due to the low costs and low capabilities of computers, a lone programmer could
develop a full game.

1.2 Background of the project topic

Despite the economic instability and crisis deeply affecting the world, the analysts
published that the game industry has grown at a rate of 57% surprisingly. Even as I type
these words, millions of people are playing games in front of their computers. The
reason for this growth can be stated that the game industry can appeal to any user with
different tastes.

61% of the game development professionals we surveyed believe AR/VR will impact
game development in the 2020s.AR/VR has been on the rise for years. And AR/VR has
become a key focus area in game development. In the 2020s, AR/VR is expected to
dominate.

2
Immersive experiences will become standard. 8K resolution will arrive. Unreal Engine
5 (UE5) will drive technological advancements. And AR/VR will no longer be a
separate category. It will become an expected feature in game development.

Chapter 2
Problem Statement
2.1 Problem Definition

Game development is a live project for the students it is based on a deal with the R&D
dept of the JCL (JIO Corp labs). If the projects are completed, it will help the company
secure VR headset deals where in being digital will provide JCL with normal VR games
and other VR apps which involve 3D games and animations.

2.2 Overview of the project

The project was a direct implementation project. ZigZag Game project is in the Unity
Game Engine. The language used for the development of this project is “C#”. The
project file contains Assets such as C# scripts, prefabs, sprite images, animation, and
many more. ZigZag is a 3D arcade game, especially for PCs and Android phones. The
gameplay Graphics is good enough and the controls are pretty simple for the users.
Talking about the gameplay, the main objective of this game is to roll the ball through
the path. This game is a clone version of the original Zig Zag. The report breaks down
a typical game into various components that are suited for individual projects and
discuss the use of modern graphical design tools such as Maya in building art for the
game. Listed below are the scopes that I will be covering in the development of this
game:
I. Single Player
II. PC/mobile based
III. 3-dimensional platform
IV. Single level
V. Adventure-based
VI. A 3D platform for GUI and menu systems

3
Chapter 3
Methodology
3.1 Environment Development

Snapshot of the main menu of the game

The game requires a 3d environment. First, the required platforms will be built, and
the camera will be synchronized according to the starting platform. The 3d ball will be
added at the start and the required theme will be set. As the game doesn’t have levels,
the platforms were made up to some extent and then the rest was coded for it to be
randomized and in an endless loop.

3.2 Coding
Game development today involves several stages, starting with concept development,
working through an initial design, and then production. A game’s coding language is
chosen following the development of the game’s initial design. Games are developed
using a variety of programming languages depending on the platform (console,
computer, or mobile) and the scope of the game. Additionally, not all games are
programmed with a single language — they may combine several.
For this game ‘C#’ was used, pronounced “C Sharp”, this programming language is a
popular choice for developing a wide range of applications as well as video games. In
fact, it is one of the main codes seen in popular game engines today such as Unity.
Some examples of C#-based games include Pokémon Go, Hearthstone, Temple Run,
and Assassin’s Creed Identity.
4
Platform spawn code

5
Chapter 4
System Analysis

 Building the Environment

The game requires a 3d environment. First, the required platforms will be built, and
the camera will be synchronized according to the starting platform. The 3d ball will be
added at the start and the required theme will be set

 Scripts

The basic gameplay will be added by using scripts and giving the 3D ball basic physics.
Checking input and changing the direction of the ball corresponding to the mouse
clicks.

 Generating game levels

As the game progresses, the platform generating system should change, and the speed
too. Creating automatic and random spawning platforms.
Stopping platform spawning and the following of camera on game over. Reloading the
level and fixing the light

 Adding score and Game UI

Creating a simple score system that displays on-screen and updates as the game
progresses. Creating the main menu UI and the tap text to start the game. Displaying
the high score on the main menu screen.

 Adding special effects

Creating a pick-up particle effect that initiates when the random cubes spawned on the
platform during gameplay are picked. Changing background colour automatically.

6
Chapter 5
Testing and Results
Game Testing is a software testing process for testing video games for quality control.
The main goal of Game testing is to identify and discover defects and bugs in a video
game and improve the stability and performance. Game testing is a component of game
development that helps to ensure the video game to be deployed is bug-free.
Pre- Production: During this stage Game idea, storyboard, features, requirement
analysis, and documentation is done. This phase includes technical design document
and feature specifications, game architecture, frame overlay, animation. Following
items are considered

 Music, Camera (zoom in and out, replay, cinematic view,) player, and action
attributes
 Game flow logic, Rules, and condition to attain the next level
 Object & event triggers, scores, player movement and positioning, player
statistics,
 Non-Interactive sequence, Special effects, title screens, multi-button actions
 Gamepad, movie clip, shock/vibration effects, legal texts, use of button
functions, use of analog &digital mode.

Production: During this stage, the actual coding is done. This phase includes coding,
and integration of the various modules.
Testing and Deployment: During this stage Functional tests, regression testing, Alpha,
Beta, and Gold are performed. Testing of coverage and flows, data integrity, algorithm-
specific testing, path testing, and incremental testing is also done using mobile game
testing tools.

All models
7
All prefabs

Scripts

Animations

8
Game Mode (Result)

Environment Development

Results:
 No Bugs or Errors
 Main menu and Result window is shown properly
 Platforms spawned without error

9
Chapter 6
Advantages, Limitations, and Applications

6.1 Following are some of the advantages

Unity is the best app for Game development. It is very effective while rendering 2D
and 3D scenes. In this era of visual treats, Unity can very well be used for rendering 3D
images also. The quality offered is also relatively good compared to other apps.

Unity is excellent for cross-platform development and multiplatform games. Cross-


development platforms are trending much these days. It is really time-consuming and
demands lots of effort for developing native apps. Platforms like Unity have made the
process quite simple and easy to use when compared to previous times. Using cross-
development platforms, a single script can be compiled and used for many platforms.

The assets store is also reportedly great when compared to other platforms. Basically,
the tech support for Unity is efficient. The tech support members are also highly skilled,
and they can be relied upon in case of any technical issues.

In the case of the visual platform, Unity is excellent. But we cannot appeal the same in
the case of the non-visual platform. It might vary in terms of the app’s application and
usage.
The Unity game engine is also easier to use compared to many other technologies.
There are so many other complicated technologies that become tougher while we use
them. Unity is an exception here.

Despite not being open source, the cost is very less when compared to all its other
competitors. Cost efficiency is one of the main advantages of using Unity.

10
6.2 Limitations
The platform the game is being developed for. This can affect screen sizes, computing
power, input devices, etc. By knowing the platform and its limitations ahead of time,
you can pick an appropriate game engine, plan assets and design the interface better.

Technical bugs or limitations. Whether it’s memory limitations on a mobile device or


framerates on a browser, games will always push the boundaries of computers further
than any other medium. If you find yourself in this camp, try obfuscating the issue with
a clever design or by looking at modifying a game rule in a way that can free up
resources and trick the gamer into seeing what you intended in the first place.

A game with pre-existing Intellectual Property (IP). It can restrict choices on the story,
artwork, or even game mechanics depending on the specific property. In a situation like
this, it might be best to double down on what is unique about that IP, instead of just
adding more of the same.

Limited resources. Such as with limited budgets, small teams, no skills in certain
disciplines, or running up against a hard deadline. If you need an artist, go on one of
the many asset stores to save time and money. Don’t have time to finish your design?
Find some procedural algorithms to speed up content development or remove some
mechanics that aren’t adding a major benefit.

6.3 Disadvantages
Following are some of the disadvantages of using Edge Computing −

The documentation of several features is quite out of date and in some cases, it is
completely non-existent.
Even the technologies like render textures, profiler, and stencil buffer support which
are common in many free tools are still behind the $1500 paywall.

The Terrain engine and Movie Textures are not good at all, and they need a lot of effort
for no reason.

11
The Unity 3D Pro license doesn’t bring all the features to mobile. Hence an additional
$1500-3000 investment is needed for Mobile Pro licenses which seems quite
extravagant.

Until Unity 5.0 the engine is set to remain in 32-bit which means that the editor will
silently crash if you run out of memory and the engine is not suitable for AAA games.
The outdated (in fact ancient) version of Mono results in the developer fighting the GC
once the project reaches a certain size.

There seems to be no upcoming update for the OpenGL support to 4.x thus, things like
Compute Shader or Geometry Shader won’t be available for OSX or Linux.

12
Chapter 7
Conclusion and Future Scope

The rise of AR/VR will continue in 2020 and beyond.

61% of the professionals we surveyed believe AR/VR will impact the future of game
development. And many industry experts, like Gamasutra, predict big things for
AR/VR in 2020 (and beyond). In particular, AR/VR will cease to be a separate category.
It will be an expectation in games moving forward. Game developers will pursue
realism. Players will pursue the ability to live in the game.

Photorealism will be important for game developers. Tools such as Unreal Engine 4
(and especially the upcoming Unreal Engine 5) will be important to ensuring the
photorealism required for AR/VR. Many we surveyed believe that AR/VR will truly
dominate in the 2020s. Here’s what one of our survey takers said about AR/VR in the
2020s.

In this project, we developed a client-specific game. The environment, models, and


physics of the game were developed on the Unity3D software and ‘C#’ to code the
game with the possibility for changes and updates if required.

After making the game, I understood the working of Unity3D and how to work with a
deadline to meet the client’s expectations.

13
References

[1] Unity, "Unity User Manual 2021.3 (LTS)," Unity, [Online]. Available:
https://docs.unity3d.com/Manual/index.html. [Accessed 21 May 2022].

[2] C. W. C. a. C. G. Marvin T. Chan, "Development of a Car Racing Simulator Game


Using Artificial Intelligence," in International Journal of Computer Games Technology,
2015.

[3] Learn Everything, "Learn Unity 3D for Absolute Beginners," Udemy, [Online].
Available: https://www.udemy.com/course/learnunity3d/. [Accessed 21 May 2022].

[4] Brackeys, "Unity Beginner Tutorials," Youtube, [Online]. Available:


https://www.youtube.com/watch?v=j48LtUkZRjU&list=PLPV2KyIb3jR5QFsefuO2R
lA gWEz6EvVi6&index=1. [Accessed 21 May 2022].

[5] Unity, "Unity Asset Store," Unity, [Online]. Available:


https://assetstore.unity.com/. [Accessed 21 May 2022].

14

You might also like