Download Unit 09

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Java performance wikipedia , lookup

C Sharp (programming language) wikipedia , lookup

Video game programmer wikipedia , lookup

Transcript
Project Planning with IT
L/600/6610
LO3 - Understand software technologies
for game platforms
Learning Outcome
(LO)
The learner will:
Pass
The assessment criteria are
the pass requirements for
this unit.
The learner can:
Merit
For merit the evidence
must show that, in
addition to the pass
criteria, the learner is
able to:
Distinction
For distinction the
evidence must show that,
in addition to the pass
and merit criteria, the
learner is able to:
1
Understand game
platform types
P1
Describe game
platform types with
some appropriate use
of subject terminology
M1 - Describe how
computer games
platform types have
developed over time
D1 - Explore potential
future gaming platform
types
2
Understand
hardware
technologies for
game platforms
P2
Describe hardware
technologies for game
platforms with some
appropriate use of
subject terminology
M2 - Describe mobile
technologies for game
platforms
D2 - Evaluate the
suitability of mobile
technologies for game
play
3
Understand
software
technologies for
game platforms
P3
Describe software
technologies for game
platforms expressing
ideas with some
appropriate use of
subject terminology
M3 - Discuss the
different software
technologies for
multiple platform
usage
D3 - Justify the choice of
platform on which to run
an identified software
technology
4
Be able to connect
and configure
platforms and
devices to enable
gameplay
P4
Apply techniques to
connect and configure
platforms and devices
with some assistance
M4 - Explain the
different connection
types for multiplayer
gaming
D4 - Justify how the
connection types are
appropriate for the
different multiplayer
gaming experiences
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10






Scenario
Assessment Criteria P3
P3 Learners must describe types of software technologies for game platforms to
include operating systems, drivers and graphics. This should include examples of
operating systems, application and scripting software. This could be presented in
the form of a report, and should include some appropriate use of subject
terminology.
Assessment Criteria M3,
For merit criterion M3 learners must discuss the different software technologies
for multiple platforms excluding operating systems. They should discuss and
detail the usage of these technologies. Evidence for this could be supported by
photographic evidence that the learners have used different technologies with
multiple platforms in addition to the discussions of these from the learners which
could be presented in the form of a report.
Assessment Criteria D3
For distinction criterion D3 the learners must justify the choices of platform on
which to run an identified software technology. This is best achieved if they are
given a scenario which gives them the opportunity to look at a number of
different platforms to play an identified software technology and to compare any
differences with a view to justifying the choice of platform for the user and the
technology. This could be evidenced in the form of a report or table that
compares the choices with detail.
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10


Scenario
Here the learners need to be encouraged to develop an indepth understanding of the software technologies available
for game platforms. They should extend their discussion
from the hardware to identify the software used on them.
They should research different software technologies and
consider all aspects of software requirements for
developing on different platforms. This is ideal group/team
working where discussions and new ideas will help wider
thinking.
Here the learners will also benefit from having practical
gameplay on the different systems; this will give them the
opportunity to compare the hardware and software
specifications and the differences in performance in the
game play with different platforms. They should share their
findings and views as discussions with the group.
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10
All gaming production software on the market is aware of the limitations of the device it
is being programmed for. We would love to have a FPS on the iPhone that had multiple
levels, character development, Unreal graphics, video cut sequences etc. but the iPhone
is just not capable of handling this. Similarly programming COD on the Xbox so it could
be used on the Wii was always going to be a challenge because of the control system.
 All games are programmed on a PC or Apple computer, it is the software that games are
made on that limits down the usage. For instance Kodu makes 3D games that run on the
Xbox 360, the games have little limit in terms of size, layers, amount of characters etc.
The produced 3D environment is automatic creating a layer plane for the action. Put this
onto a Wii and change the code and it might work, put this onto an iPhone and it will
struggle, graphics will be reduced to a lower pixel rate, FPS will be reduced, there will be
slow down when too many things are on the screen.
 Similarly when a game is written for a PS4 and all the sound is linked, flowing action,
activated FMV’s, routines etc., it is all written in the language used on a PS4. When
something is written for Android it is almost guaranteed to work on other Android
devices because of the cross compatibility with OS’s.
 Dependent code throughout the written program will need recoding, this is why there
was a long wait for porting from one system to another. Remember that it was a long
time before video encoding became cross compatible from one system to another.
P3.1 – Task 1 – Research and Describe with examples how hardware dependency can have
an impact on software technologies for game platforms using appropriate use of subject
terminology.

Internal Hardware dependence
Scenario
Criteria
Tasks
1
2
Software compliance
3
4
5
6
7
8
Code compatibility
9
10
External hardware issues
All Consoles and handhelds have a different operating system and even similar
operating systems have subtle difference that can affect the compatible coding of a
game. We are all aware of Windows and the different versions of this OS. Installed
games take advantage of the coding of Windows to benefit the gaming experience.
Games look at the hardware installed within the OS and use it, Screens, Sound,
Graphics, Networks, Resolution, installed components like DirectX.
 The transition time from PC to Xbox was less than any other system because they sued
a similar OS, similar modules and routines and define similar hardware. If anything the
coding on an XBox is reduced because it only has one graphics card to dice for.
 Nintendo used a similar language for its systems which allowed backward compatibility
between generations of console, it allowed Gameboy games to play on an Advance,
Advance Games to play on a DS. Coding becomes more streamlined but it is not a huge
new learning curve for programmers.
 Similarly PS3, PS2 and PS1 OS’s had similarities to make games backwardly compatible.
IOS on Apple hardware is less compatible even with generations of Apples. Cross
compatible software from OSX and from generations of IOS so the API’s can run
through the generations has limited down Apps on earlier devices.
 In comparison Android OS is more open source allowing for devices to upgrade OS to
make Apps and Games more compatible.
P3.2 – Task 2 – Research and Describe with shown examples of how OS dependency can
have an impact on game creation and game compliance using appropriate use of subject
terminology.

Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10
The biggest benefit stated on programming for the PS, Xbox and Nintendo is the one
size fits all (mostly) when it comes to hardware and compatibility. Same for Handhelds,
games on the DS work straight on the DSX and Dsi. There is no need for additional
downloads, to install drivers, to configure for screen issues. Same for the controllers,
any Xbox controller will work, the keys are the same, the buttons, possibly located
somewhere else or with a few extra but that is just adding to what is already there.
 However on PC’s and Apples there is this issue. Compliant drivers for the game you
want slows down the installation and game playing processes. All boxes state what the
games work best in but most PC gamers have different hardware, different graphics
cards, sound cards, motherboards, screen sizes and resolutions, different controllers
beyond the keyboard, different Cameras and Microphones. Games programmers cannot
include a one size fits all for these, every card is different and requires different drivers.
 The solution is to put the driver files on the site to download, plugins, add-ons,
updates and bug fixes. Without the right drivers there will be glitches, dropped frame
rates, dropped baud rate on the sound card, or lag on the network. Configuring a game
on a PC or Apple for the right drivers will overcome most of these issues, most. Testing
after game release and patches tends to fix most of those remaining but it is a burden
PC owners will put up with for that extra water effect, that extra facial feature, that
extra reduction in lag to make their games better.
P3.3 – Task 3 – Research and Describe with shown examples of how Driver Issues can have
an impact on game creation and game installation using appropriate use of subject
terminology.

Graphics
Scenario
Criteria
Tasks
Sound
1
2
3
4
5
6
Networks
7
8
9
10
Interface



All games are written in code, it is what computers understand. There have been so
many codes over the years that Computer programming courses struggle to keep up
with what is new, what is trendy, what is good and what is necessary to learn. Pascal,
Fortan, Basic, Cobol, all gone now but the basis of their language still exists, the skills
learned from them, the techniques, the methodology is the same even with new
languages.
C++ and C# (called C sharp) are the current main contenders in the higher level of
programming languages, with engines like the CryEngine, Unreal and Rockstar’s priority
engine all using C++ as the backbone for the programming. Programmers around the
world embrace C because it gives maximum control and efficiency to the programmer. C
is an easy language to learn. It is a bit more cryptic in its style than some other
languages, but you get beyond that fairly quickly.
C is what is called a compiled language. This means that once you write your C program,
you must run it through a C compiler to turn your program into an executable that the
computer can run (execute). For example:
◦
◦
◦
◦
◦
◦

#include <stdio.h>
int main()
{
printf("This is output from my first program!\n");
return 0;
}
When executed, this program instructs the computer to print out the line "This is output
from my first program!" -- then the program quits. You can't get much simpler than
that! Then add a million more lines for the rest of the game.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10




C# or C Sharp is a language designed to be fully compatible with
Microsoft's .NET initiative while taking advantage of what has
been learned from C, C++ and Java. C# is designed to be a
platform independent language in the tradition of Java. It's
language is similar to C and C++, and C# is designed to be an
object-oriented language.
In terms of similarity to Java, C# does not support multiple
inheritance; instead it provides Java's solution: interfaces.
Interfaces avoid the messy dangers of multiple inheritance while
maintaining the ability to let several classes implement the same
set of methods.
C#, as part of the .NET framework, is compiled to Microsoft
Intermediate Language (MSIL), which is a language similar to Java's
bytecode. MSIL allows C# to be platform independent and runs
using just in time compiling. Therefore programs running under
.NET gain speed with repeated use. Furthermore, because the
other languages that make up the .NET platform (including VB and
Cobol) compile to MSIL, it is possible for classes to be inherited
across languages.
The potential for C# is great if the .NET platform succeeds. C# is
designed to take advantage of the design of .NET, and Microsoft
has poured a great deal of money into .NET. More importantly, If
the user knows C++, then they'll probably be able to pick it up
quickly.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10



Java is a programming language and computing platform first released by Sun
Microsystems in 1995. There are lots of applications and websites that will not
work unless you have Java installed. Java is fast, secure, and reliable. From laptops
to data centres, game consoles to scientific supercomputers, cell phones to the
Internet, Java is everywhere.
Java allows you to play online games, chat with people around the world, calculate
your mortgage interest, and view images in 3D, just to name a few. It's also
integral to the intranet applications and other e-business solutions that are the
foundation of corporate computing.
One characteristic of Java is portability, which means that computer programs
written in the Java language must run similarly on any hardware/operating-system
platform. This is achieved by compiling the Java language code to an intermediate
representation called Java bytecode, instead of directly to platform-specific
machine code. Java bytecode instructions are the equivalent to machine code, but
they are intended to be interpreted by a virtual machine (VM) written specifically
for the host hardware. End-users commonly use a Java Runtime Environment (JRE)
installed on their own machine for standalone Java applications, or in a Web
browser for Java applets. An example below is the common scripting.
◦ class HelloWorldApp {
public static void main(String[] args) {
System.out.println("Hello World!"); // Display the string.
 }
 }
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10


J2ME or Java Platform, Micro Edition, or Java ME, is a Java platform designed for embedded systems
(mobile devices are one kind of such systems). Target devices range from industrial controls to
mobile phones and set-top boxes.
J2ME technology adopts a modular and scalable architecture. It has two primary kinds of
components—configurations and profiles. J2ME configuration defines the minimum set of Java
virtual machine features and Java class libraries available for a particular category of devices and
then uses that knowledge to build a profile. A configuration typically represents a group of devices
with similar processing power and amounts of available memory, like Apple brands or Samsung
Ranges. A profile is a specification that defines sets of application programming interfaces (APIs)
and features and utilises the underlying configuration to provide a complete run-time environment
for a specific kind of device. So if your device has an API and J2ME knows it, it will clap its hands
(handshake).
J2SE or Java Platform, Standard Edition is a widely used platform for development and use of
portable applications for desktop and Network servers. J2SE uses object-oriented Java programming
language.

One well-known type of Java application is the applet, a sort of fast-working subroutine that is
largely platform - independent and can work within other frameworks. Applets are mini applications
that perform a variety of functions, large and small, mundane and dynamic, within the framework of
larger applications. A prime example of an applet is a browser-based plugin, such as the one that
allows users to see Flash movies or hear audio files by clicking on a Web page link. Such a click
keeps the user in the browser environment, while simultaneously launching the application-withinan-application that is the applet, showing the requested video or playing the requested sound.
Many online games are applet-based as well.
P3.4 – Task 4 – Research and Describe with shown examples of how Programming Languages and
their choices can have an impact on game and App creation using appropriate use of subject
terminology.

C++
Scenario
Criteria
C#
Tasks
1
2
3
4
5
Java
6
7
8
9
10
J2ME and J2SE





Scripting is the process of making multiple actions work by telling it to do the same thing as a
previous action, like a macro in word or excel. Why write the same movement codes when you
could write one code and make multiple object do it in a slightly different speed, direction,
pace etc. Write the script, change the parameters.
UnrealScript – unreal is the bad boy of game making. Most 3D FPs games use this kind of
engine, or this one specifically. UnrealScript is the programming language for Unreal Engine 3
and 4 engine. Because it was designed with games in mind, it contains certain built-in features,
such as states and timers, that make implementing gameplay much easier. UnrealScript is
compiled, but it is not part of the main executable. This makes it a perfect means of
implementing and testing on new gameplay elements without the need to recompile the entire
engine when changes are made.
The language is completely built on object-oriented principles and resembles Java or C++ in its
syntax. This makes it familiar to experienced game programmers, and extremely easy to pick
up. At the same time, because it is used within the context of a game, some of the methods
and principles differ from traditional programming. For example, there are no standard explicit
constructors or destructors for objects which can be confusing to those used to more
traditional programming languages. Once Users become familiar with this things will begin to
fit into place and adding new elements to games will be a quick and painless process.
The following is a hello world example using the syntax of UnrealScript.
class HelloWorld extends GameInfo;
event InitGame( string Options, out string Error )
{
`log( "Hello, world!" );
}
What this does is displays the text Hello World on the screen.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10
Maya Embedded Language (MEL) - is a high level scripting language. This means that you can type a
Mel command and execute that command as soon as you hit enter. This differs from a compiled
language, a compiled language would require you convert your code into commands the computer
understands such as C. Since Mel is a scripting language, it makes Mel extremely fast to use.
Unfortunately, this does not eliminate your having to debug your code. Like any programming
language debugging will probably be where you spend the bulk of your time.

MEL is a powerful scripting language that can be used to automate many tasks within the Autodesk
Maya suite. Using MEL, the user can create their own scripts, which can save them time and labour
and extend the capabilities of Maya. MEL has developed over the years into a powerful tool embraced
by many artists and technical directors. Much of the tedium of working in Maya can be eliminated
with just a few simple scripts. Maya users from around the world share their MEL scripts online; these
scripts can be downloaded and installed as part of Maya, allowing users to customise your workflow.
For instance creating a sphere in Maya in the script editor. The code in Red is the script:


Create a sphere
Create / Nurbs Primitives / Sphere
Open up the script editor
Windows / General Editors / Script Editor



What you should see in the script editor is:
sphere -p 0 0 0 -ax 0 1 0 -ssw 0 -esw 360 -r 1 -d 3 -ut 0 -tol 0.01 -s 8 -nsp 4 -ch 1;
objectMoveCommand;
We see two commands. The first command creates a nurbsSphere with some options attached and
the second command sets our current tool to the move tool. Let's take the fundamental aspect of
this code and type it into the command line. In the command line type sphere; then hit enter and
you should see a nurbs Sphere appear on your screen. Open your script editor again. sphere;
// Result: nurbsSphere1 makeNurbSphere1 //
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10





ActionScript - This is an object-oriented programming
(OOP) language that is designed specifically for Web site
animation. ActionScript makes it possible for developers to
create onscreen environments (such as games, tutorials,
and e-commerce applications) that can respond to user
input through the keyboard or mouse. ActionScript is an
event-based language: just as is the case in real life,
actions are triggered by events.
If you want to do anything interactive in Flash, you'll need
to use ActionScript. It allows you to execute different
actions in a movie depending on what a user does or on
what frame of the movie is being played.
ActionScript looks a lot like JavaScript, which Macromedia
did on purpose. ActionScript in Flash MX is based on the
ECMA-262 specification, so if the user has used Java-Script
before, a lot of ActionScript will look familiar to them.
var x = 1;
while (x <= 5) {
trace (x);
x = x + 1;
}
This code count up to 5 and then stops at 5.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10





JavaScript – JavaScript is a programming and scripting language used to
make web pages interactive. It runs on your visitor's computer and
doesn't require constant downloads from your website. JavaScript is
often used to create polls and quizzes, marquee text or behaviours of
objects on Websites like rollover images or galleries.
JavaScript support is built right into all the major web browsers,
including Internet Explorer, Firefox, Chrome and Safari. Provided that the
visitors to your site are using web browsers that support JavaScript (most
do) and have JavaScript enabled (it is by default), then your JavaScript will
run when they visit the page.
There are plenty of pre-written JavaScripts that people have made
available for users to plug straight into their web page. All they need to
know to be able to use such scripts is how to paste the supplied code
into the required places in your web page.
JavaScript is an interpreted language, so no special program is required
to create usable code. Any plain text editor such as Notepad (one of the
Accessories that comes in Windows) is quite satisfactory for being able to
write JavaScript. That said, an editor that colourises the code to make it
easier to see what is what makes it easier to find your mistakes. An
example below just shows the titles.
document.write("<h1>This is a heading</h1>");
document.write("<p>This is a paragraph</p>");
P3.5 – Task 5 – Research and Describe with shown examples of how
Scripting Languages are used and how they can have an impact on game
and App creation using appropriate use of subject terminology.
Unreal Scripting
Scenario
Criteria
Tasks
MEL Scripting
1
2
3
4
5
6
7
Action Script
8
9
10
Javascript





Application Programming Interface (API’s) - API’s are the modules used within programs
to make them more integrated - a set of programming instructions and standards for
accessing a Web-based software application. A software company releases its API to the
public so that other software developers can design products that are powered by its
service.
For example, Amazon.com released its API so that Web site developers could more easily
access Amazon's product information like Google, GoCompare and Ebay. Using the
Amazon API, a third party Web site can post direct links to Amazon products with
updated prices and an option to "buy now."
An API is a software-to-software interface, not a user interface. With APIs, applications
talk to each other without any user knowledge or intervention. When you buy movie
tickets online and enter your credit card information, the movie ticket Web site uses an
API to send your credit card information to a remote application that verifies whether
your information is correct. Once payment is confirmed, the remote application sends a
response back to the movie ticket Web site saying it's OK to issue the tickets.
As a user, you only see one interface, the movie ticket Web site, but behind the scenes,
many applications are working together using APIs. This type of integration is called
seamless, since the user never notices when software functions are handed from one
application to another.
An API resembles Software as a Service (SaaS), since software developers don't have to
start from scratch every time they write a program. Instead of building one core
application that tries to do everything, e-mail, billing, tracking, etc., the same application
can contract out certain responsibilities to remote software that does it better.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10




Let's use the same example of Web conferencing from
before. Web conferencing is SaaS since it can be accessed
on-demand using nothing but a Web site. With a
conferencing API, that same on-demand service can be
integrated into another Web-based software application, like
an instant messaging program or a Web calendar.
Versions of this we are used to include OpenGL ES, DirectX
and Java/ Java SE.
OpenGL is an API supplied by Games companies that makes
games run faster, work better and display better on the
screen. Originally used in games like Quake and Unreal, it
meant those people without the quality of cards necessary
could run in higher resolution because the OpenGL files were
supplied.
OpenGL ES is a royalty-free, cross-platform API for fullfunction 2D and 3D graphics on embedded systems
including consoles, phones, appliances and vehicles. It
consists of subsets of desktop OpenGL, creating a flexible
and powerful low-level interface between software and
graphics acceleration. OpenGL ES includes profiles for
floating-point and fixed-point systems. OpenGL ES 1.X is for
fixed function hardware and offers acceleration, image
quality and performance. OpenGL ES 2.X enables full
programmable 3D graphics. OpenGL SC is tuned for the
safety critical market.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10








Scenario
DirectX and Direct Suite - enhances the multimedia capabilities of your computer and
provides access to the capabilities of your display and audio cards, which enables programs to
provide realistic 3D graphics and immersive music and audio effects. DirectX is a set of lowlevel APIs that provides Windows programs with high-performance hardware-accelerated
multimedia support.
DirectX enables the program to easily determine the hardware capabilities of your computer,
and then sets the program parameters to match. This allows multimedia software programs to
run on any Windows-based computer with DirectX compatible hardware and drivers and
ensures that the multimedia programs take full advantage of high-performance hardware.
These APIs control low-level functions, including 2D graphics acceleration; support for input
devices such as joysticks, keyboards, and mice; and control of sound mixing and sound
output. E.g.
Microsoft DirectDraw - supports standard methods of displaying graphics on all video
adapters, and faster, more direct access when using accelerated drivers.
Microsoft Direct3D - provides an interface to the 3D rendering functions built into most new
video adapters and provides a device-independent way for software programs to
communicate with accelerator hardware efficiently and powerfully.
Microsoft DirectSound - provides a link between programs and an audio adapter's sound
mixing, sound playback, and sound capture capabilities. DirectSound provides multimedia
software programs with low-latency mixing and hardware acceleration.
Microsoft DirectMusic - works with digital audio, as well as message-based musical data that
is converted to digital audio either by your sound card or by its built-in software synthesizer.
and supports input in Musical Instrument Digital Interface (MIDI) devices
There is also Microsoft DirectInput, DirectPlay and DirectShow.
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10


Java/ Java SE API’s – A Java API is a collection of prewritten
packages, classes, and interfaces with their respective methods,
fields and constructors for the Java enabled environment. Similar to
a user interface, which facilitates interaction between humans and
computers, Java API’s serve as a software program interface
facilitating interaction.
In Java, most basic programming tasks are performed by the API’s
classes and packages, which are helpful in minimising the number
of lines written within pieces of code. These come as part of the
Java Development Kit (JDK) and comprise of three basic
components, as follows:
◦ Java compiler
◦ Java Virtual Machine (JVM)
◦ Java Application Programming Interface (API)
The Java API, included with the JDK, describes the function of each
of its components. In Java programming, many of these components
are pre-created and commonly used. Thus, the programmer is able
to apply prewritten code via the Java API. After referring to the
available API classes and packages, the programmer easily invokes
the necessary code classes and packages for implementation.
P3.6 – Task 6 – Research and Describe with shown examples of how
Sound and Graphic API’s are used and how they can have an impact
on game and App creation using appropriate use of subject
terminology.

OpenGL
Scenario
Criteria
Tasks
OpenGL ES
1
2
3
4
5
6
7
DirectX
8
9
10
Java/Java SE





Maya is a high-end 3D computer graphics and 3D modeling
software package that is used in the film and TV industry, as
well as for computer and video games, architectural
visualisation and design. It is one of three external Engine
packages that is used by the industry to create characters
and objects and then animate them.
It features Modeling, Dynamics and simulation and powerful
Scripting and plugins. Maya Unlimited adds even more
functionality such as: Maya Fluid Effects, Maya Classic Cloth,
Maya Fur and Maya Hair.
It cannot be emphasised enough how large and detailed this
package is and specifically how useful it is in creating 3D
characters. For some modeling creators there is no other
package they will use other than Photoshop to make and
create 3D characters and is based on the Autodesk suite,
owners of two of the other programs used in the industry.
Game Engines use the models created in Maya rather than
create them themselves, loaded as a NURB into the program
and then set like Lego wherever the designer needs the
characters or objects to be. Think of the mushrooms in
Skyrim, the Books in COD, the trees in Halo, the debris in
Gears of War, all created in Maya and used as a Nurb.
For Maya click here to view what it does and here to view
what is possible.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10



Modelling is the creation of a basic shape and structure
of objects. These can include game characters, objects,
weapons, vehicles and anything else that needs to be
modelled. Programs like Maya have their uses but
additional programs can be used in conjunction that are
better at specific modelling.
Zbrush and Sculptris use polygon modelling to make 3D
objects and then use a range of tools to bend, shape and
alter the object until it is formed. Then it is added to,
covered, meshed and rendered, taken into Photoshop and
coloured, separated and then re-meshed back in ZBrush.
The quality of output of these programs is immense,
creating 3D characters and objects that are ready for
importing straight into Game engines or into other
packages like Cinema 4D, After Effects or Maya and 3DS
Max. At the end of the day this is basically clay modelling
using a computer, the finished rendered versions are in a
file format compatible with every 3D package, capable of
scaling, reduction, and lowering the Poly count for other
platforms. Click here for ZBrush and here for Sculptris.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10







Animation is the physical manipulation of the models. This can involve motion
capture or manipulation by hand. Computer animation is essentially a digital
successor to the art of stop motion animation of 3D models and frame-by-frame
animation of 2D illustrations.
For 3D animations, objects (models) are built on the computer monitor (modeled) and
3D figures are rigged with a virtual skeleton. For 2D figure animations, separate
objects (illustrations) and separate transparent layers are used, with or without a
virtual skeleton. Then the limbs, eyes, mouth, clothes, etc. of the figure are moved by
the animator on key frames.
The differences in appearance between key frames are automatically calculated by the
computer in a process known as tweening or morphing. Finally, the animation is
rendered.
Programs for the game industry come in 2 forms, bespoke (created by the company
for themselves) or Animation specific packages. We are used to Fireworks and Flash
but the industry uses programs like After Effects, Cinema 4D and Maya to control
large game animations.
After Effects is very specific for non character based animation, titles, intros, effects,
3D objects on a linear plane. The results are industry standard but sticking to menus
and intros.
Cinema 4D – uses the same Nurb systems as Maya and the time framing of Premiere
to create linear pathing animation of objects and characters.
Maya as stated on the previous slides is an all round package for animating and
creation. Uses a Rag Doll tool to create real physics dynamics onto objects including
effect, bounce and rebound.
M3.1 – Task 7 - Discuss the different software technologies for multiple platforms in
terms of object and character creation.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10






Most gaming companies use Engines, simple ones like IOS programming for the
iPhone and iPad to larger engines like Unreal, CryEngine, Unity and Torque. These
engines shortcut much of the tens of thousands of lines of coding necessary for a big
game or produce the effects and animations for the smaller games. There are also
game creation programs like Scratch, GameMaker and RPG Maker that create games in
a specific genre.
CryEngine – one of the bigger and free engines up to a point, makes large commercial
3D games like Far Cry, Crysis games, Evolve etc. Click here for more. It has at its core
a library of tools that makes 3D games, editing, graphics manipulation, control,
landscape generation and Nurb control.
Unreal – Like CryEngine, this is a free to download serious contender for game
making. Again 3D is principle the engines comes with and has access to a world of
examples and components for Nurb control. Games such as Fables, Bioshock,
Borderlands and Batmans. Click here for more.
Unity – is a fully integrated with a complete set of tools and rapid workflows to create
interactive 3D and 2D content; easy multiplatform publishing; thousands of quality,
ready-made assets in the Asset Store and a knowledge-sharing community. Click here
for examples. Mostly games made with unity are for smaller platforms like IOS and
Android.
Torque – Torque 3D is a full source, open source game engine. Torque 3D has been is
flexible and performs across a wide-range of hardware. Torque 3D comes equipped
with a full suite of tools to allow the user to produce high-quality games and
simulations. Torque 3D supports Windows and Browser-based web deployment out of
the box. Click here and here for examples.
M3.2 – Task 8 - Discuss the different software engines for multiple platforms in terms
of ease of use, adaptability, game creation issues, production times and final output.
Ease of use
Scenario
Criteria
Adaptability
Tasks
1
2
3
Game creation issues
4
5
6
7
8
9
10
Production times
Final output
Most gaming platforms decisions take time ands a lot of thought. Games cost a
lot of money to make and the higher the platform and the bigger the game, the
more money will be invested. Gears of War cost £250m to produce, that is a lot
of money to risk losing. COD cost £320m GTA cost £450m. All the companies
expect a better return than their pay-outs but it does not always happen, 4/5
games started never get completed but the money is still spent. Platform
decisions are part of this problem, choosing the right engine, having the ability
to use the engine, understanding technical and software issues like API’s and
scripting etc.
D3.1 – Task 9 – Using the Game Scenario here, justify the choices under each
heading of platform on which to run an identified software technology.
D3.2 – Task 10 – Using the table, compare and contrast issues in game
development in terms of platforms on which to run the produced game.

Hardware
Platform
Creation and
Development
Use of
Accelerators
Game production
Costs
PC or Apple
Xbox
PS
Handheld
Mobile
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10
Compatibility
Issues
Controller Issues
P3.1 – Task 1 – Research and Describe with examples how hardware dependency can have an
impact on software technologies for game platforms using appropriate use of subject
terminology.
P3.2 – Task 2 – Research and Describe with shown examples of how OS dependency can have an
impact on game creation and game compliance using appropriate use of subject terminology.
P3.3 – Task 3 – Research and Describe with shown examples of how Driver Issues can have an
impact on game creation and game installation using appropriate use of subject terminology.
P3.4 – Task 4 – Research and Describe with shown examples of how Programming Languages and
their choices can have an impact on game and App creation using appropriate use of subject
terminology.
P3.5 – Task 5 – Research and Describe with shown examples of how Scripting Languages are used
and how they can have an impact on game and App creation using appropriate use of subject
terminology.
P3.6 – Task 6 – Research and Describe with shown examples of how Sound and Graphic API’s are
used and how they can have an impact on game and App creation using appropriate use of subject
terminology.
M3.1 – Task 7 - Discuss the different software technologies for multiple platforms in terms of
object and character creation.
M3.2 – Task 8 - Discuss the different software engines for multiple platforms in terms of ease of
use, adaptability, game creation issues, production times and final output.
D3.1 – Task 9 – Using the Game Scenario here, justify the choices under each heading of platform
on which to run an identified software technology.
D3.2 – Task 10 – Using the table, compare and contrast issues in game development in terms of
platforms on which to run the produced game.
Scenario
Criteria
Tasks
1
2
3
4
5
6
7
8
9
10