Video games were considered around the 1950s to be a simple curiosity in the world of computers, yet [612129]
Introduction
Video games were considered around the 1950s to be a simple curiosity in the world of computers, yet
since then they have achieved world -wide popularity. They have become one of the top industries of
the economy.
Video games have become available on a variety of platforms such as personal computers, mobile
devices, and consoles. Video games are chosen by most people around the world to spend their free
time.
Havin g spent many hours in front of the computer, I have proposed that the purpose of my work is to
develop a video game and understand the concepts behind it.
Developing a video game means creating it. The development of a game can be made by one person or
a larger group. In general, computer games and other consoles are funded by a particular company that
publishes games, and their development may last for years. Conversely, Indie games may take a shorter
period to be made by a relatively small number of peop le or individually.
Chapter 1
1.The Unity Game Engine
Unity's Unity Game Engine is the global leader in game creation. It is the engine that over 45% of the
world's developers, according to the Unity website. This makes Unity the most used engine in the
world. The same poll shows that its closest competitor is Unreal Engine 4, with a 17% share.
The Unity game engine offers a wide range of features and an interface that's pretty easy to understand.
Unity is cross -platform, which means that games can be quickly and easily ported on other platforms
like Mac, Linux, Xbox, Playstation, Android, iOS, Windows, Phone, and BlackBerry, which makes it a
motor great game for video game development.
his game engine supports assets from known 3D applications such as 3ds Max, Maya, Softimage,
Cinema 4D, Blender and others, which means there are not many formats that Unity can not handle.
While it supports most formats of any 3D application, Unity does not have a n advanced modeling or
building system, except basic tools, so everything needs to be created with 3D applications. However,
Unity has a fairly large library of assets where you can find and download lots of assets. [1]
1.1 Competitors on the market
Unreal Engine
Unreal Engine is one of the most popular and used gaming engines. The first version was released in
1998 and 19 years later continued to participate in building the best games each year. The most famous
projects made in Unreal Englne include the Gears of War series, Mass Effect, the Batman: Arkham and
many others. The latest version, Unreal Engine 4 allows the use of graphical capabilities that were
considered too heavy for a mobile platform such as global illumination, bump mapping, reflecti ons and
animations that are calculated in real time, and more.
This is an acceleration capability and algorithms that make it possible to use the most impressive
graphics on this platform, especially when it comes to limited computing power and the abili ty of
Unity3D to compete for the same system. However, there is a disadvantage, developers warn that it is
hard to learn, and some tools are not very easy to use. [2]
GameMaker
GameMaker Studio has become known as it does not require prior programming kn owledge. Thanks to
this, developers can develop games easily and faster than programming with native environments.
Some notable projects made by this engine are Spelunky, Hotline Miami, Super Crate Box, and Hyper
Light Drifter. The significant disadvantage that this engine has over other game engines on the market
is the number of gear offered that is quite small.
CryEngine
CryEngine is a very powerful game engine. It includes lots of features such as physics -based shading,
cache geometry, and image -based lights. If the visual visibility is important to you, then this is the
engine you are looking for. The engine offers programming possibilities at the artist level, which offers
an incredible graphical presentation. Moreover, it has a very powerful audio t ool and allows easy
programming of the interface, more than other motors in the market. On the other hand, it is important
to know that the environment is unfriendly for beginners. And because the engine does not have much
in common with the developers, th e community is relatively small.
HeroEngine
HeroEngine is primarily built for multiplayer and online games. The system also includes HeroCloud,
which is designed for scripting, and the creation of physical systems, allowing developers to work
remotely in real time. It offers many open -world maps and a transition without interruption between
them. In addition, it provides an A.I. pretty good and easy to use tools. The script is powerful enough to
develop complex tasks.
RageEngine
The uniqueness of this engine is the power offered compared to other gaming engines. Only a few
engines can handle them. Among the most popular projects built with this engine such as the GTA
series, Red Dead Redemtion and Max Payne. As for graphics, the engine offers a hig h level of quality.
One of its drawbacks is the low number of tools compared to top -of-the-range engines such as Unity
and Unreal.
1.2 2D or 3D projects
Unity is also suitable for creating 2D and 3D games. When creating a new project in Unity, we have the
option to start in 2D or 3D mode.
Choosing the starting mode between 2D and 3D determines some settings for the Unity editor, such as
how images are imported, like textures or sprites. In any case, it can switch from 2D to 3D mode at any
time, no matter what we chose when we created the project. Games can be built in several ways as
below. [3]
Full 3D
3D games typically use three -dimensional geometry with materials and texture rendered on the surface
of GameObjects to make them appear as solid environments, characters and objects that build the game
world (Fig.1). The camera can be moved around the scene freely, with the lights and shadows projected
in the game in a very realistic way. 3D games use rendering of the scene using the perspective, s o the
objects appear larger on the screen as the camera is closest to them.
Ortografic 3D
Sometimes games use 3D geometry, but they use a spell camera (Fig.2). This is a technique that in
normal mode is used to provide a panoramic view of the action, an d is sometimes called 2.5D. If we
want to make a game like this, we should use the editor in 3D mode, because even if we have no
perspective, we still work with models and Assets 3D. For this kind of games you have to change the
room and view the scene in spelling.
Full 2D
Many 2D games use flat graphics (Fig.3), sometimes called sprites, which do not have a three –
dimensional geometry at all. These are drawn on the screen as flat images, and the game room has no
perspective. For this type of game, the e ditor must be used in 2D mode.
2D gameplay with 3D graphics
Some 2D games use 3D graphics for environment and characters, but restrict gameplay in two
dimensions (Fig.4). For example, the camera can display a side view, and the player can only move in
two dimensions, but the game itself, uses 3D obstacle models and a 3D perspective of the room. For
this kind of games, 3D effects serve more for a realistic purpose than a functional one. This type of
games are sometimes classified as 2.5D. With all the g ameplay being 2D, manipulation of objects is
done most in 3D, so you should open the editor in 3D mode for the first time.
2D gameplay and graphics with a perspective camera
This is another popular 2D game style, using 2D graphics, but with a snapshot. This is like a cartoon –
style scene where all the charts are flat but arranged at different distances from the room (Fig.5). To
develop this kind of games, it is preferable to use the editor in 2D mode.
1.3 Popular Apps
Hearthstone: Heroes of Warcraft
Hearthstone: Heroes of Warcraft is an online card game, published by Blizzard Entertaiment. Unlike
other Blizzard games, Heartstone: Heroes of Warcraft is a free game but offers the opportunity to buy
books or missions us ing real money.
The game was released in 2014, being available for iOS, Android, Windows and OS X, becoming
popular, with over 70 million players around the world.
Hearthstone: Heroes of Warcraft is a game built in the Warcraft universe with characters, ma gic and
stories related to the story. Use the rich world of Warcraft to create sets of large books composed of
shamans, warriors, and wizards (Fig.6). Players can choose different game modes, each offering
different experiences, Players start with a certai n card bundle but can get strong cards using the gold in
the game. By simply playing, but effectively, Hearthstone will attract anyone in a very short time. [4]
Battlestar Galactica Online
Battlestart Galactica Online was developed by Bigpoint Games an d Artplant. Using the Unity game
engine for the game client in the browser.
Battlestart Galactica Online is a browser game based on television series of the same name. It is a
multiplayer online game where players take control of a spaceship and fight against other players to get
up and position themselves as high as possible.
Players have a choice between two parts: Colonial (human) or Cyclon and are fighting for the resources
they use to buy ships, equipment, ammunition and ship upgrades they already own (Fig.7).
The game was released in 2011 and has since become very popular with more than 250 million
registered users. [5]
Kerbal Space Program
The Kerbal Space Program is a space flight simulation game, developed and published by Squad in
2011, ava ilable for Windows, PlayStation 4, OS X, Linux and Wii U. In the shortest possible terms, the
Kerbal Space Program is rocket science simplified. It is a strategy game, planning and execution,
careful planning and proper execution offers some of the greates t rewards that can be achieved in video
games. [6]
The game revolves around Kerbals (Fig.8), some green humanoid aliens, who build spacecraft to get
into orbit or land on other planets. It focuses on real physics, that is to build a proper space ship and
send it into outer space, this being an extremely challenging and fun task, providing hours of gameplay.
Pokémon Go
Pokémon Go is a free site -based game released in 2016, developed by Niantic and published by The
Pokemon Company for iOS and Android devi ces.
Pokemon Go offers players the ability to capture, train and participate in battles between Pokemoni.
Pokemonas appear on the device screen as if they were in the real world, these being possible by using
the GPS and camera device (Fig.9).
Pokémon Go has quickly become a global phenomenon, being one of the most used and profitable
mobile applications since 2016, with over 500 million downloads worldwide [7].
Superhot
Superhot is a first person shooter game developed and published by Superhot Team, released in 2016
for Windows, Linux, OS X and Xbox One.
The game follows traditionally the mechanics of a first person shooter, the player trying to destroy
enemy targets using different weapons. The goal of the game is to kill all enemies to finish the level.
The weapon taken by the player has limited ammunition, forcing the player to rely on defeating
enemies to get more ammunition. Taking a shot from an enemy bullet, he kills the player, asking him to
restart the game. [8]
Game mechanics is typical fo r most shooters, time only progresses normally when the player moves or
pulls the gun, otherwise time is slowed down. This gives the player the opportunity to change his
actions to avoid the bullet route or to better assess the current situation by making gameplay similar to
strategy games. The game is presented in a very simple art style, with red enemies and black weapons,
in a white and gray environment (Fig.10).
Chapter 2
2.Technologists used
2.1 Unity
Unity is an engine and framework that provides a 2D and 3D game or 2D game design system. Unity
allows not just interaction. I say games or apps because they are not just games, there are simulators
and other Unity business -oriented applications that have to interact with 2D or 3D space.
Unity not only allows you to interact with the code, but also through visual components, and export it
to a lot of platforms, being free. Unity supports most 3D applications and lots of audio formats, and
also supports Photosop.psd format. Unity allows importin g and using assets, writing code to interact
with different objects, creating or importing animations to use in creating a complete animation system,
and more.
2.1.1
Unity features
Export to multiple platforms
Unity can export games to multiple platforms, including Windows, Max, Linux, Android, iOS,
Windows Phone, Xbox, Playstation, Wii. This is exceptionally useful if we want to create a multi –
platform game since it is very ea sy to export.
Rendering
Art assets can be directly imported from 3DS Max, Maya, Blender, Zbrush, Cinema 4D, Photoshop,
and more. Unity supports bump mapping, reflection mapping, advanced lights, shadows, and other
render effects.
Fizica
Unity uses the Nvidia PhysX engine for a quick and accurate simulation between GameObjects. [9]
2.1.2 Unity Editor
The editor's main window consists of:
Project Window
The Project panel (Fig.11) retains all kinds of files and Assets that are part of the project, including
textures, sounds, scripts, models, plugins, and more.
The left part of the window shows the structure of the project as a hierarchical list. When selecting a
folder from the list using a click, the contents of the folder will appear. On the right, the files in the
folder and their type are displayed.
Scene View
The scene (Fig.12) is the interactive view of the world we are creating. A scene shows the visual
representation of all the GameObets in the current scene, such as characters, cameras, lights, and more.
A game can be divided into multiple scenes and each scene can represent a different stage of the game,
such as the main menu, level 1, leve l 2, and a final game window. Through this panel, GameObjets can
be manipulated by moving, resizing or rotation.
Hierarchy Window
The hierarchy contains a list of all GameOjects present in the current scene. Some of these are Assets,
like 3D models, an d others are Prebabs, these objects being the largest part of the game. As objects are
added or removed from the scene, they will appear and disappear from the hierarchy.
Unity uses the concept of Parenting (Fig.13). When we create a group of objects, the one that is the
highest in the Hierarchy is the parent object, and all the objects grouped under it will be descendants of
it.
Inspector Window
Projects in the Unity Editor are made of several GameObjects that include scrips, meshes, and other
graphic elements such as lights. The Inspector window (Fig.14) displays detailed GameObject
information, which includes all the GameObject components and their properties, allowing the
GameObject functionality to be changed in the scene.
Game View
The Game window (Fig.15) becomes active when the game is running, that is when we press the Play
button. Unity allows you to run the game directly from the editor, which means that testing and
debugging become very fast. [10]
2.1.3 Reasons to use Unity
o Free of charge
Unity comes with a free version and one Pro. Unlike other programs, the free version is complete, only
lacking advanced features. Still, you can create a game without paying anything.
o Easy to learn
You would think that developing a game requires a profound understanding of the engine structure and
organization of the code. In Unity, all you have to do is create scripts and attach them to GameObject.
Scripts determine the role of a GameObject, and the interaction between GameObjects in a game.
Possibility to use multiple programming languages
Scripts in Unity can be written in three different programming languages, these are UnityScript, C #,
and Boo. UnityScript is a custom J avaScript version.
o There are a lot of tutorials
Since Unity is very popular, a lot of resources have come up to help you get a better understanding. [7]
2.2 Microsoft Visual Studio
Microsoft Visual Studio is an integrated IDE development environment from Microsoft. It is used to
develop software for Microsoft Windows, such as Web sites, web applications, web services, and
mobile applications. Visual St udio uses Microsoft software development platforms such as Windows
API, Windows Forms, Windows Presentation Foundation, Windows Store, and Microsoft Silverlight.
Can produce both native code and managed code.
Visual Studio includes a code editor that supports IntelliSense, the code completion component, and
code refactoring. The integrated debugger works both as a source -level debugger and as a machine –
level debugger. Other embedded tools include a code profile, GUI designer designer, web designer,
class designer, and database schema designer. It supports plug -ins that improve functionality at almost
all levels, including adding support for source control systems such as Subversion, and adding new
toolkits, such as editors and visual designers, for doma in-specific languages or sets of tools for others
aspects of the software development lifecycle such as Team Foundation Server: Team Explorer.
Visual Studio supports 36 different programming languages and allows the code editor and the
debugger to han dle, to varying degrees, almost any programming language, provided there is a
language -specific service. Embedded languages include C, C ++ and C ++ / CLI, Visual C ++,
VB.NET through Visual Basic .NET, C # through Visual C #, F # in Visual Studio 2010, and Visual
Basic TypeScript from Visual Studio 2013 Update 2. Support for other languages, such as Python,
Ruby, Node.js and M, among others, is available through language services installed separately. It also
supports XML / XSLT, HTML / XHTML, JavaScript and CSS. Java and J # have been backed up in the
past.
Microsoft provides a free version of Visual Studio called community edition that supports plugins and
is available for free. [8]
2.2.1 Microsoft Visual C#
Microsoft Visual C #, Microsoft's implemen tation of C #, targets the .NET Framework, along with
language services that enable Visual Studio IDE to support C # projects. While language services are
part of Visual Studio, the compiler is available separately as part of the .NET Framework. Visual C #
2008, 2010, and 2012 components support versions 3.0, 4.0 and 5.0 of the C # specifications,
respectively. Visual C # supports Visual Studio class designer, Forms designer, and data designer
among others. [11]
2.2.2 Scheduling on objects
Object Oriented Programming is one of the most important steps taken in the development of
programming languages. This emerged from the need to express a problem in a way
more natural to the human being. In this way the units that form a program are very close to the hum an
way of thinking than the way the computer works.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Video games were considered around the 1950s to be a simple curiosity in the world of computers, yet [612129] (ID: 612129)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
