What Is Game Development

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 8

Chapter II. What Is Game Development?

Game Development is the art of


creating games and describes the
design, development and release of
a game. It may involve concept
generation, design, build, test and
release. While you create a game, it
is important to think about the game
mechanics, rewards, player
engagement and level design.

A game developer could be a programmer, a sound designer, an artist, a designer or


many other roles available in the industry.

Game Development can be undertaken by a large Game Development Studio or by a


single individual. It can be as small or large as you like. As long as it lets the player
interact with content and is able to manipulate the game’s elements, you can call it a
‘game’.

To get involved in
the Game
Development
process, you do not
need to write code.
Artists may create
and design assets,
while a Developer
might focus on
programming a
health bar. A Tester
may get involved to
see that the game
works as expected.
To resolve problems that game frameworks had, tools like libGDX and OpenGL were
developed. They helped game development to be a lot faster and easier, providing lots
of pre-made functions and features. However, it was still hard to enter the industry or
understand a framework for someone coming from a non-programmer background, a
common case in the game development scene.

That was when game engines like Construct, Game Maker, Unity and Unreal were
developed. Generally, an engine has everything that a framework had, but with a more
friendly approach by using a graphic user interface (GUI) and helping with the graphic
development of the game.
In some cases, like Game Maker and Construct, the amount of pre-made functions are
so big that people with no previous programming skills could build a game from scratch,
really expanding the scene and making game development accessible for almost
anyone.
Game Engines

Many developers
choose to develop a
game using a Game
Development Engine.
Game Engines can
make the process of
creating a game much
easier and enable
developers to reuse lots
of functionality. It also
takes care of rendering
for 2D and 3D
Graphics, physics and
collision detection, sound, scripting and much more.
Some Game Engines have a very steep learning curve such as CryEngine or Unreal
Engine. Yet, other tools are very accessible to beginners and some do not even need
you to be able to write code to create your game, e.g. Construct 2.
The Unity Game Engine ranges somewhere in the middle, while it is beginner friendly,
some popular and commercial games have been built using Unity (e.g. Overcooked,
Superhot).

The BuildBox game engine is basically for developing hyper casual games.

Typical Game Engines


 CryEngine
 Unreal Engine
 Unity Game Engine
 Game Maker
 Construct 2 or 3
 Twine
 Source
 Frostbite
 Buildbox

What is a Game?

A game is a structured
form of play, usually
undertaken for
entertainment or fun,
and sometimes used
as an educational tool.
Games are distinct
from work, which is
usually carried out for
remuneration, and
from art, which is more
often an expression of
aesthetic or
ideological elements. However, the distinction is not clear-cut, and many games are
also considered to be work (such as professional players of spectator sports or games)
or art (such as jigsaw puzzles or games involving an artistic layout such as Mahjong,
solitaire, or some video games).

Games are sometimes played purely for enjoyment, sometimes for achievement or
reward as well. They can be played alone, in teams, or online; by amateurs or by
professionals. The players may have an audience of non-players, such as when people
are entertained by watching a chess championship. On the other hand, players in a
game may constitute their own audience as they take their turn to play. Often, part of
the entertainment for children playing a game is deciding who is part of their audience
and who is a player.

What is a Video Game?

A video game is an
electronic game that
involves interaction with a
user interface or input
device – such as a joystick,
controller, keyboard, or
motion sensing device – to
generate visual feedback
for a player. This feedback
is shown on a video display
device, such as a TV set,
monitor, touchscreen, or virtual reality headset. Video games are often augmented with
audio feedback delivered through speakers or headphones, and sometimes with other
types of feedback, including haptic technology.

Video games are defined based on their platform, which include arcade games, console
games, and personal computer (PC) games. More recently, the industry has expanded
onto mobile gaming through smartphones and tablet computers, virtual and augmented
reality systems, and remote cloud gaming. Video games are classified into a wide range
of genres based on their type of gameplay and purpose.

The first video games were simple extensions of electronic games using video-like
output from large room-size computers in the 1950s and 1960s, while the first video
games available to consumers appeared in 1971 through the release of the arcade
game Computer Space, followed the next year by Pong, and with the first home console
the Magnavox Odyssey in 1972. The quickly-growing industry suffered from the crash of
the North American video game market in 1983 due to loss of publishing control and
oversaturation of the market. Following the crash, the industry matured and established
practices and methods around the development and distribution of video games to
prevent a similar crash in the future, many which continue to be followed. Today, video
game development requires numerous skills to bring a game to market, including
developers, publishers, distributors, retailers, console and other third-party
manufacturers, and other roles.

Since the 2010s, the commercial importance of the video game industry has been
increasing. The emerging Asian markets and mobile games on smartphones in
particular are driving the growth of the industry. As of 2018, video games generated
sales of US$134.9 billion annually worldwide, and were the third-largest segment in the
U.S. entertainment market, behind broadcast and cable TV.
What is a Mobile Game?

A mobile game is a video game that is typically played on a mobile phone. Historically,
the term refers to all games that are played on any portable device, including from
mobile phone (feature phone or smartphone), tablet, PDA to handheld game console,
portable media player or graphing calculator, with and without networkability. The
earliest known game on a mobile phone was a Tetris variant on th e Hagenuk MT-2000
device from 1994.

In 1997, Nokia launched


the very successful Snake.
Snake (and its variants),
that was preinstalled in
most mobile devices
manufactured by Nokia,
has since become one of
the most played games and
is found on more than 350
million devices worldwide.
A variant of the Snake
game for the Nokia 6110,
using the infrared port, was
also the first two-player game for mobile phones.

Today, mobile games are usually downloaded from an app store as well as from mobile
operator's portals, but in some cases are also preloaded in the handheld devices by the
OEM or by the mobile operator when purchased, via infrared connection, Bluetooth, or
memory card, or side loaded onto the handset with a cable.

Downloadable mobile games were first commercialized in Japan circa the launch of
NTT DoCoMo's I-mode platform in 1999, and by the early 2000s were available through
a variety of platforms throughout Asia, Europe, North America and ultimately most
territories where modern carrier networks and handsets were available by the mid-
2000s. However, mobile games distributed by mobile operators and third-party portals
(channels initially developed to monetize downloadable ringtones, wallpapers and other
small pieces of content using premium SMS or direct carrier charges as a billing
mechanism) remained a marginal form of gaming until Apple's iOS App Store was
launched in 2008. As the first mobile content marketplace operated directly by a mobile
platform holder, the App Store significantly changed the consumer behavior and quickly
broadened the market for mobile games, as almost every smartphone owner started to
download mobile apps.

Chapter III. INTRO TO MIT APP INVENTOR

Introduction to MIT App Inventor

MIT App Inventor is a web application integrated


development environment originally provided by Google,
and now maintained by the Massachusetts Institute of
Technology (MIT). It allows newcomers to computer pr ogramming to create application
software(apps) for two operating systems (OS): Android, and iOS, which, as of 8 July
2019, is in final beta testing. It is free and open-source software released under dual
licensing: a Creative Commons Attribution ShareAlike 3.0 Unported license, and an
Apache License 2.0 for the source code.

It uses a graphical user


interface (GUI) very similar
to the programming
languages Scratch
(programming language)
and the Star Logo, which
allows users to drag and
drop visual objects to create
an application that can run
on android devices, while a
App-Inventor Companion
(The program that allows
the app to run and debug on) that works on iOS running devices are still under
development. In creating App Inventor, Google drew upon significant prior research in
educational computing, and work done within Google on online development
environments.

App Inventor and the other projects are based on and informed by constructionist
learning theories, which emphasize that programming can be a vehicle for engaging
powerful ideas through active learning. As such, it is part of an ongoing movement in
computers and education that began with the work of Seymour Papert and the MIT
Logo Group in the 1960s, and has also manifested itself with Mitchel Resnick's work on
Lego Mindstorms and StarLogo.

App Inventor also supports the use of cloud data via an experimental
Firebase#Firebase Realtime Database component.

MIT Inventor Window Parts

Designer
Code Blocks

Canvas
A two-dimensional touch-sensitive rectangular panel on which drawing can be done and
sprites can be moved.

The BackgroundColor, PaintColor, BackgroundImage, Width, and Height of the Canvas


can be set in either the Designer or in the Blocks Editor. The Width and Height are
measured in pixels and must be positive.

Any location on the Canvas can be specified as a pair of (X, Y) values, where

X is the number of pixels away from the left edge of the Canvas
Y is the number of pixels away from the top edge of the Canvas
There are events to tell when and where a Canvas has been touched or a Sprite
(ImageSprite or Ball) has been dragged. There are also methods for drawing points,
lines, circles, shapes, arcs, and text.

ImageSprite
A ‘sprite’ that can be placed on a Canvas, where it can react to touches and drags,
interact with other sprites (Balls and other ImageSprites) and the edge of the Canvas,
and move according to its property values. Its appearance is that of the image specified
in its Picture property (unless its Visible property is false.

To have an ImageSprite move 10 pixels to the left every 1000 milliseconds (one
second), for example, you would set the Speed property to 10 [pixels], the Interval
property to 1000 [milliseconds], the Heading property to 180 [degrees], and the Enabled
property to true. A sprite whose Rotates property is true will rotate its image as the
sprite’s heading changes. Checking for collisions with a rotated sprite currently checks
the sprite’s unrotated position so that collision checking will be inaccurate for tall narrow
or short wide sprites that are rotated. Any of the sprite properties can be changed at any
time under program control.

Events
CollidedWith(other)
Event handler called when two enabled sprites (Balls or ImageSprites) collide. Note that
checking for collisions with a rotated ImageSprite currently checks against its unrotated
position. Therefore, collision checking will be inaccurate for tall narrow or short wide
sprites that are rotated.

Dragged(startX,startY,prevX,prevY,currentX,currentY)
Event handler for Dragged events. On all calls, the starting coordinates are where the
screen was first touched, and the “current” coordinates describe the endpoint of the
current line segment. On the first call within a given drag, the “previous” coordinates are
the same as the starting coordinates; subsequently, they are the “current” coordinates
from the prior call. Note that the ImageSprite won’t actually move anywhere in response
to the Dragged event unless MoveTo is specifically called.

EdgeReached(edge)
Event handler called when the ImageSprite reaches an edge of the screen. If Bounce is
then called with that edge, the sprite will appear to bounce off of the edge it reached.
Edge here is represented as an integer that indicates one of eight directions north(1),
northeast(2), east(3), southeast(4), south (-1), southwest(-2), west(-3), and northwest(-
4).

Flung(x,y,speed,heading,xvel,yvel)
When a fling gesture (quick swipe) is made on the sprite: provides the (x,y) position of
the start of the fling, relative to the upper left of the canvas. Also provides the speed
(pixels per millisecond) and heading (0-360 degrees) of the fling, as well as the x
velocity and y velocity components of the fling’s vector.
NoLongerCollidingWith(other)
Event indicating that a pair of sprites are no longer colliding.

TouchDown(x,y)
When the user begins touching the sprite (places finger on sprite and leaves it there):
provides the (x,y) position of the touch, relative to the upper left of the canvas

TouchUp(x,y)
When the user stops touching the sprite (lifts finger after a TouchDown event): provides
the (x,y) position of the touch, relative to the upper left of the canvas.

Touched(x,y)
When the user touches the sprite and then immediately lifts finger: provides the (x,y)
position of the touch, relative to the upper left of the canvas.
Watch my Youtube Account for the Tutorials of MIT App Inventor

You might also like