0% found this document useful (0 votes)
2 views

Module 2 - Sprites and animation 2

The document provides an overview of various platforms for game development, including arcade, console, personal computer, mobile, and web, each with its own advantages and challenges. It also discusses different input devices and game genres such as shooters, strategy, platformers, RPGs, MMOs, simulations, rhythm games, and visual novels. Additionally, it introduces the concept of a Game Design Document (GDD), outlining its purpose and potential sections to include, such as project description, characters, and storyline.

Uploaded by

gauravgreat777
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Module 2 - Sprites and animation 2

The document provides an overview of various platforms for game development, including arcade, console, personal computer, mobile, and web, each with its own advantages and challenges. It also discusses different input devices and game genres such as shooters, strategy, platformers, RPGs, MMOs, simulations, rhythm games, and visual novels. Additionally, it introduces the concept of a Game Design Document (GDD), outlining its purpose and potential sections to include, such as project description, characters, and storyline.

Uploaded by

gauravgreat777
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 147

2D and 3D Game

Development
Course Code: CSL 310
By – Ashish Kumar Patel

Module 2
Introduction to Game Design - Platforms
• Platforms
There are several different platforms a game can be developed for, and
each one has its own advantages and drawbacks. Here we will discuss
the most notable ones.
Introduction to Game Design - Arcade
• Arcade
• Arcade cabinets have been around for decades, and have still a huge
part in the heart of gaming aficionados with classic series going on like
“Metal Slug”. The main objective of these machines is to make you
have fun, while forcing you to put quarters in to continue your game.
• These cabinets’ software is known to be very challenging, having some
nice graphics and sound. Arcade games are usually presented in the
form of an “arcade board”, which is the equivalent of a fully-fledged
console, with its own processing chips and read-only memory.
• In the case of arcades, the hardware is usually tailored to support the
software; with some exceptions added later (like the Capcom Play
System, also known as CPS), where the hardware is more stable
between arcades, while the software changes.
Introduction to Game Design - Arcade

Arcade Console
Introduction to Game Design - Arcade
Introduction to Game Design - Arcade
Introduction to Game Design - Arcade
Introduction to Game Design - Console
Consoles are a huge (if not the biggest) part in the video game industry. Their
Hardware is dedicated solely to gaming (and some very marginal “multimedia
functionalities”) and it evolves in “generations”: this means that each
“generation” has a stable hardware programmers can study and exploit.

This hardware stability is a double-edged sword: the hardware can be really


hard to master at the beginning, resulting in some poor-performing games at
the beginning of the generation, but when mastered the results are incredible.
This feeds into a cycle that looks like the following:
1. New Generation is introduced
2. Initial confusion, with poor performance and graphics
3. Hardware is mastered and games have great performance/graphics
4. The games become “too big” for the current generation and a new generation must be
introduced.
Introduction to Game Design - Console
Introduction to Game Design - Console
Introduction to Game Design - Console
Introduction to Game Design - Console
Introduction to Game Design - Console
Introduction to Game Design – Personal
Computer
1. Personal Computers are another huge part of the video game
industry. They are extremely flexible (being general-purpose
machines) but have a huge drawback: their hardware is not the
same from one unit to the other. This means that the programmer
needs to use “abstraction layers” to be able to communicate with
all the different hardware.
Introduction to Game Design – Personal
Computer
2. This can have performance costs, as well as forcing the
programmer to add options to lower graphic settings,
resolution and more.
3. All of this just to be able to run on as many computers as
possible. The upside is that when the computer is really
powerful, you can get great performance and amazing quality,
but that’s a rare occasion.
Introduction to Game Design – Personal
Computer
Introduction to Game Design – Personal
Computer
Introduction to Game Design – Personal
Computer
Introduction to Game Design – Personal
Computer
Introduction to Game Design – Mobile
• One of the most recent platforms game developers work on is
right in your pocket: your smartphone.
• Today’s smartphones have enough power to run fully-fledged
videogames, on the go. Sadly the touch screen can prove to be
really uncomfortable to use, unless the game is specially
tailored for it.
Introduction to Game Design – Web
• Another platform that has seen a massive rise in recent times is
the Web: with WebGL and WebAssembly, fullyfledged games
(including 3D games) can run on our browser, allowing for
massively-multiplayer experiences (like Agar.io) without the
hassle of manual installation or making sure the game is
compatible with your platform.
• A drawback of the “web approach” is the limited performance
that web browsers, WebGL and WebAssembly can give, as well
as the need to download the game before being able to play
(and sometimes you may need to re-download the game if you
cleared your browser’s cache).
Introduction to Game Design – Web
Introduction to Game Design – Input
Devices
A game needs a way to be interacted with:
this “way” is given by input devices. In this
section we will take a brief look at the input
devices available in a game.
Introduction to Game Design – Mouse
and Keyboard
One of the most common input devices, most of the currently
available frameworks and engine have support for input via
mouse and keyboard. These input methods are great for visual
novels, point and click adventures, FPS/TPS games and anything
that is considered to be “made for PCs”.
Introduction to Game Design – Gamepad
• One of the classics of input devices, works well with the majority
of games: FPS/TPS games may need some aim assist
mechanic in your game. Point and click adventures feel clunky
with this input method.
• As with Mouse and Keyboard, most of the currently available
engines and frameworks support gamepads.
Introduction to Game Design – Touch
Screen
• With the coming of smartphones, touch screen is a new input
device that we have to account for. Touch screens emulate
computer mice well enough, although they lack precision.
• The nature of being a mix between an input device and a
screen brings a lot of new ways to experience a game if well
done. Many times touch screens are used to simulate game
pads: the lack of the tactile feedbackgiven by buttons makes
this simulation clunky and uncomfortable.
Introduction to Game Design – Dedicated
Hardware
• Some games require dedicated hardware to work at their best,
if at all. Guitars (guitar hero), wheels for racing games, joysticks
for flying simulators, arcade sticks for arcade ports. . .
• Dedicated hardware requires precise programming, and is
usually an advanced topic. On PCs many “dedicated input
devices” are recognized as “game pads” and use an “axis” and
“buttons” abstraction that makes coding easier.
Introduction to Game Design - Other
Input Devices
• A special mention is deserved for all the input devices that are
“general purpose” (as in not “dedicated”) but are still in a group
outside what we saw so far.
• In this group we see gyroscopes, accelerometers (like the
Nintendo Wii/Switch JoyCons), sensors, IR as well as other
exhotic hardware that can still be exploited in a videogame.
Introduction to Game Design - Game
Genres
• Let’s analyze some game genres to understand them better and
introduce some technical language that may be useful in writing
a Game Design Document.
• These genres are quite broad, so a videogame is usually a mix
of these “classes” (like a strategy + simulation game).
Introduction to Game Design - Shooters
• Shooters are games that involve. . . shooting. They can include
any kind of projectile (bullets, magic from a fairy, arrows from a
hunter) and can be crossed with any other genre (creating sub-
genres in a way), like 2D platformers.
Introduction to Game Design - Shooters
• Some of the most known shooter genres are:
• FPS (first person shooters), 3D games where the game is
shown from the point of view of the protagonist. This involves
only seeing a HUD and the weapon, instead of the whole
character;
• TPS (third person shooters), 3D games where the game
is shown from a behind-the-character perspective. Some show
the whole protagonist, while others adopt an over-the-shoulder
perspective;
Introduction to Game Design - Shooters
• Top Down Shooters, usually 2D games where you may be
piloting a vehicle (space ship, plane, etc. . . ) and shoot down
waves of enemies, in this category we fit arena shooters (like
Crimsonland) and space shooters (like Galaga);

• Side scroller shooters, usually 2D games and platformers,


where you control the protagonist and shoot enemies on a 2D
plane, in this category we find games like Metal Slug.
Introduction to Game Design - Shooters
Introduction to Game Design - Shooters
Introduction to Game Design - Shooters
Introduction to Game Design - Strategy
Strategy games involve long-term planning and resource
control, they are slower games, but can be really intense when
played in competition with other players.

Some of the most popular strategy genres are:


• RTS (real time strategy), where units are controlled in real
time;
• Turn-based strategy, where units and resources are
managed in turns;
Introduction to Game Design - Strategy
Introduction to Game Design - Strategy
Introduction to Game Design - Platformer

• Platformer games involve difficult jumps and precise movement,


they can both be 2D and 3D games. A prime example of
platformer games is the Mario series: Mario 1,2,3 for 2D games
and Mario 64 for 3D.
Introduction to Game Design - Platformer
Introduction to Game Design - Platformer
Introduction to Game Design - Platformer
Introduction to Game Design - Platformer
Introduction to Game Design - RPG

• RPGs or “Role Playing Games” are games where you assume


the role of a character in a fictional setting. In RPGs the world is
well-defined and usually have some level or class system and
quite advanced item management.
• RPGs can be either action/adventure, with real-time actions,
turn-based or hybrid, where the movement is done in real time
but battles happen in turns. Some prime examples of RPG
games are the Legend of Zelda series, as well as the Final
Fantasy series.
Introduction to Game Design - RPG
Introduction to Game Design - RPG
Introduction to Game Design - RPG
Introduction to Game Design - RPG
Introduction to Game Design - MMO

• MMO (Massively Multiplayer Online) is a term used for games


that have a heavy multiplayer component via the internet. The
most known MMO genre is MMORPGs (Massively Multiplayer
Online Role-Playing Games).
Introduction to Game Design - MMO
Introduction to Game Design - MMO
Introduction to Game Design - MMO
Introduction to Game Design - Simulation

• Simulation games cover a huge variety of games that are create to


“simulate reality”, in more or less precise ways. Among simulation
games we can find:
• Racing Games: sometimes more simulative others more arcade-like, racing
games simulate the experience of driving a vehicle, more or less realistic (from
modern cars to futuristic nitro-fueled bikes);
• Social Simulation: simulating the interaction between characters, a pioneer
on the genre is surely “The Sims”;
• Farming simulation: simulating the quietude and work in the fields;
• Business simulation: like “game dev tycoon” or “rollercoaster tycoon”;

But there are also other kinds of simulations, like Sim City, where you manage
an entire city.
Introduction to Game Design - Simulation

• Simulation games cover a huge variety of games that are create to


“simulate reality”, in more or less precise ways. Among simulation
games we can find:
• Racing Games: sometimes more simulative others more arcade-like, racing
games simulate the experience of driving a vehicle, more or less realistic (from
modern cars to futuristic nitro-fueled bikes);
• Social Simulation: simulating the interaction between characters, a pioneer
on the genre is surely “The Sims”;
• Farming simulation: simulating the quietude and work in the fields;
• Business simulation: like “game dev tycoon” or “rollercoaster tycoon”;

But there are also other kinds of simulations, like Sim City, where you manage
an entire city.
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Simulation
Introduction to Game Design - Rhythm
Games
• Rhythm games are based on the concept of following a music
beat as precisely as possible, this can be also used as a
“mechanic” in other types of games.
• Some examples of Rhythm games are “Dance-Dance
Revolution” (also known as DDR), as well as more innovative
games like “Crypt of the Necrodancer” (a mix between rhythm
game and dungeon crawler).
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Rhythm
Games
Introduction to Game Design - Visual
novels
• Visual novels are graphical adventures whose primary objective
is “telling a story”, they can be linear or have a “choose your
own path” component. They usually feature multiple endings
and hand-crafted still images as artwork.
Writing a Game Design Document
• One of the most discussed things in the world of Game
Development is the so-called “GDD” or “Game Design
Document”. Some say it’s a thing of the past, others swear by it,
others are not really swayed by its existence.
• Being an important piece of any software development process,
in this book we will talk about the GDD in a more flexible way.
What is a Game Design Document
• The Game Design Document is a Body Of Knowledge that contains
everything that is your game, and it can take many forms, such as:
• A formal design document;
• A Wiki;
• A Kanboard.
• The most important thing about the GDD is that it contains all the
details about your game in a centralized and possibly easy-to-
access place.
• It is not a technical document, but mostly a design document,
technical matters should be moved to a dedicated “Technical
Design Document”.
Possible sections of a Game Design
Document
• Each game can have its own attributes, so each Game Design
Document can be different, here we will present some of the
most common sections you can include in your own Game
Design Document.
Project Description
• This section is used to give the reader a quick description of the
game, its genre (RPG, FPS, Puzzle,. . . ), the type of
demographic it covers (casual, hardcore, . . . ). Additional
information that is believed to be important to have a basic
understanding of the game can be put here.
• This section should not be longer than a couple paragraphs.
Project Description
• A possible excerpt of a description could be the
following:
• This game design document describes the details for a 2D
side scrolling platformer game where the player makes use
of mechanics based on using arrows as platforms to get to
the end of the level.
• The game will feature a story based on the central America
ancient culture (Mayan, Aztec, . . . ).
Characters
• If your game involves a story, you need to introduce your
characters first, so that everything that follows will be clear.
• A possible excerpt of a characters list can be the following:
• Ohm is the main character, part of the group called “The Resistance”
and fights for restoring the electrical order in the circuit world.
• Fad is the main side character, last survivor and heir of the whole
knowledge of “The Capacitance” group. Its main job is giving technical
assistance to Ohm.
• Gen. E. Rator is the main antagonist, general of “The Reactance”
movement, which wants to conquer the circuit world.
Storyline
• After introducing the characters, it’s time to talk about the
events that will happen in the game.
• An example of story excerpt can be the one below:
• It has been 500 mega-ticks that the evil Rator and the
reactance has come to power, bringing a new era of
darkness into the circuit world.
• After countless antics by the evil reactance members, part of
the circuit world’s population united into what is called “The
Resistance”.
Storyline
• Strong of thousands of members and the collaboration of the
Capacitance, the resistance launched an attack against the evil
reactance empire, but the empire stroke back with a carpet surcharge
attack, decimating the resistance and leaving only few survivors that
will be tasked to rebuild the resistance and free the world from the
reactance’s evil influence.
• This is when a small child, and their parents were found. The child’s
name, Ohm, sounded prophetic of a better future of the resistance.
• And this is where our story begins
• As with the Characters section, if your game does not include a
story, you can just skip this section.
The Theme
• When people read the design document, it is fundamental that
the game’s theme is quickly understood: it can be a comedy-
based story, or a game about hardships and fighting for a better
future, or maybe it is a purely fantastic game based on ancient
history. . .
The Theme
• Here is a quick example:
• This is a game about fighting for a better future, dealing with hardships
and the deep sadness you face when you are living in a world on the
brink of ruin.
• This game should still underline the happiness of small victories, and
give a sense of “coziness” in such small things, even though the world
can feel cold.
Progression
• After defining the story, you should take care of describing how
the story progresses as the player furthers their experience in a
high-level fashion.
• An example:
• The game starts with an intro where the ruined city is shown to the
player and the protagonist receives their magic staff that will
accompany them through the game.
• The first levels are a basic tutorial on movement, where the shaman
teaches the player the basic movement patterns as well as the first
mechanic: staff boosting. Combat mechanics are taught as well.
Progression
• After the tutorial has been completed, the player advances to the first
real game area: The stone jungle.
Levels and Environments
• In this section we will define how levels are constructed and
what mechanics the will entail, in detail.
• We can see a possible example here:
• The First Level (Tutorial) is based in a medieval-like (but adapted to the
center-America theme) training camp, outside, where the player needs
to learn jumping, movement and fight straw puppets. At the end of the
basic fighting and movement training, the player is introduced to staff
boosting which is used to first jump to a ledge that is too high for a
normal jump, and then the mechanic is used to boost towards an area
too far forward to reach without boosting.
Gameplay
• This section will be used to describe your gameplay. This
section can become really long, but do not fear, as you can split
it in meaningful sections to help with organization and
searching.
• Goals
• Game Mechanics
• Skills
• Items/Powerups
• Difficulty Management and Progression
• Losing Conditions
Graphic Style and Art
• Here we describe the ideas on how the game will look like. Describing
the graphic style and medium.
• Here is a possible example of the game:
• This is a 2D side scroller with a dark theme, the graphics should look gloomy
and very reminiscing of a circuit board.
• The graphical medium should be medium-resolution pixel art, allowing
the player’s imagination to “fill in”
• the graphics and allowing to maintain a “classic” and “arcade” feeling.
• The graphical medium should be medium-resolution pixel art, allowing the
player’s imagination to “fill in” the graphics and allowing to maintain a “classic”
and “arcade” feeling.
Sound and Music
• Sadly, in way too many games, music and sound is an
afterthought. A good soundtrack and sound effect can really
improve the immersion, even in the simplest of games.
• In this section we can describe in detail everything about Music
and Sound Effects, and if the section becomes hard to manage,
splitting it in different sub-sections could help organization.
• Music should be based on the glitch-hop style, to complement the
electronic theme. 8 or 16-bit style sounds inside the score are
preferable to modern high-quality samples.
• Sound effects should appeal to the 8 or 16-bit era.
Sound and Music
• Lots of sound effects should be used to give the user positive feedback
when using a lever to open a new part of the level, and Extra
Lives/1UP should have a jingle that overrides the main music.
User Interface
• In this section we will describe everything that concerns the
User Interface: menus, HUD, inventories and everything that
will contribute to build the user experience that is not strictly tied
to the gameplay.
• This is especially important in games that make heavy use of
menus, like turn-based strategy games or survival games where
inventory management can be fundamental.
Game Controls
• In this section you insert everything that concerns the way the
game controls, eventually including special peripherals that may
be used.
• This will help you focusing on better implementing the input
system and limit your choices to what is feasible and useful for
your project, instead of just going by instinct.
Accessibility Options
• Here you can add all the options that are used to allow more
people to access your game, in more ways than you think.
• Below, we can see an example of many accessibility options in
a possible game.
• The game will include a “colorblind mode”, allowing the colours to be
colorblind-friendly: such mode will include 3 options: Deuteranopia,
Tritanopia and Monochromacy.
• Additionally, the game will include an option to disable flashing lights,
making the game a bit more friendly for people with photosensitivity.
Accessibility Options
• The game will support “aim assistance”, making the crosshair snap
onto the enemy found within a certain distance from the crosshair.
• Tools
• In order to assist people who have issues with the tough platforming
and reaction times involved, we will include the possibility to play the
game at 75%, 50% and 25% speed.
Tools
• This section is very useful for team coordination, as having the
same toolkit prevents most of the “works for me” situations,
where the game works well for a tester/developer while it either
crashes or doesn’t work correctly for others.
• This section is very useful in case we want to include new
people in our team and quickly integrate them into the project.
Tools
• In this section we should describe our toolkit, possibly with version
numbers included (which help reducing incompatibilities), as well as
libraries and frameworks. The section should follow the trace below:
• The tools and frameworks used to develop the game are the
following:
• Pixel Art Drawing: Aseprite 1.2.13
• IDE: Eclipse 2019-09
• Music Composition: Linux MultiMedia Studio (LMMS) 1.2.1
• Map and level design: Tiled 1.3.1
• Framework: SFML 2.5.1
• Version Control: Git 2.24.0 and GitLab
Marketing
• This section allows you to decide how to market the game and
have a better long-term plan on how to market your game to
your players.
• Carefully selecting and writing down your target platforms and
audience allows you to avoid going off topic when it comes to
your game.
Marketing - Target Audience
• Knowing who is your target audience helps you better suit the
game towards the audience that you are actually targeting.
• Here is an example of this section:
• The target audience is the following:
• Age: 15 years and older
• Gender: Everyone
• Target players: Hardcore 2D platformer fans
Marketing - Available Platforms
• Here you describe the launch platforms, as well as the platforms that will
come into the picture after the game launched. This will help long term
organization.
• Here is an example of how this section could look:
• Initially the game will be released on the following platforms:
• PC
• Playstation 4
• After launch, we will work on the following ports:
• Nintendo Switch
• XBox 360
• After working on all the ports, we may consider porting the game to mobile
platforms like:
• Android 9.0 +
• iOS 11.0 +
Marketing - Monetization
• In this optional section you can define your plans for the ways
you will approach releasing the game as well as additional
monetization strategies for your game.
• For example:
• The game will not feature in-game purchases.
• Monetization efforts will be focused on selling the game itself at a full
“indie price” and further monetization will take place via substantial
Downloadable Content Expansions (DLC)
• The eventual mobile versions will be given away for free, with
advertisements integrated between levels. It is possible for the user to
buy a low-price paid version to avoid seeing the advertisements.
Marketing - Internationalization and
Localization
• Internationalization Making something accessible across
different countries without major changes to its content
• Localization Making something accessible across different
countries, considering the target country’s culture. We can see a
possible example of this section below:
• The game will initially be distributed in the following languages:
• English
• Italian
• After the first release, there will be an update to include:
• Spanish
• German
• French
Different Image Formats (Pixel-Based)
• Raster Image Formats (Pixel-Based)
• JPEG (JPG) – Lossy compression, widely used for photos.
• PNG – Lossless compression, supports transparency.
• GIF – Supports animation, limited to 256 colors.
• BMP – Uncompressed, large file size, high quality.
• TIFF – Used for high-quality printing and professional
photography.
• WEBP – Compressed format by Google, supports transparency
and animations.
• HEIF (HEIC) – High efficiency, used by Apple devices.
• AVIF – Next-gen format with superior compression and quality.
Different Image Formats (Pixel-Based)
• Vector Image Formats (Scalable)
• SVG – XML-based, scalable without loss of quality, used for
web graphics.
• EPS – Used in professional printing and vector graphics.
• AI – Adobe Illustrator format for vector graphics.
• PDF – Can store both vector and raster images.
Different Image Formats (Pixel-Based)
• 3D and Special Image Formats
• RAW – Unprocessed image data from cameras.
• PSD – Adobe Photoshop format with layers.
• XCF – GIMP image format with layers.
• ICO – Windows icon file format.
• TGA (TARGA) – Used in gaming and video editing.
1. JPEG (JPG - Joint Photographic Experts
Group)
• Use Cases: Digital photography, web images, social media
• ✅ Advantages:
• High compression reduces file size
• Widely supported across devices and software
• Good for photos and complex images
• ❌ Disadvantages:
• Lossy compression reduces quality over multiple saves
• Does not support transparency
• 📌 When to Use: Best for sharing photos online, email
attachments, and digital artwork where transparency is not
needed.
2. PNG (Portable Network Graphics)
• 🔹 Use Cases: Web graphics, logos, images with
transparency
• ✅ Advantages:
• Lossless compression (retains image quality)
• Supports transparency (alpha channel)
• Good for detailed images with text and sharp edges
• ❌ Disadvantages:
• Larger file sizes compared to JPEG
• Not ideal for complex photographs due to large file size
• 📌 When to Use: Ideal for web design, transparent images,
UI elements, and images requiring sharp edges.
3. GIF (Graphics Interchange Format)
• 🔹 Use Cases: Animated images, memes, simple
graphics
• ✅ Advantages:
• Supports animation
• Small file size for simple images
• ❌ Disadvantages:
• Limited to 256 colors (low quality for detailed images)
• Not suitable for high-quality photos
• 📌 When to Use: Best for short animations, web icons,
and memes.
4. BMP (Bitmap)
• 🔹 Use Cases: Raw image storage, image editing
• ✅ Advantages:
• High-quality, uncompressed format
• Preserves detail and color depth
• ❌ Disadvantages:
• Large file size
• Not efficient for web use
• 📌 When to Use: Suitable for high-quality image
processing and lossless editing.
5. TIFF (Tagged Image File Format)
• 🔹 Use Cases: Professional photography, high-quality
printing
• ✅ Advantages:
• Supports both lossless and lossy compression
• High-quality storage for images
• Multiple layers and metadata support
• ❌ Disadvantages:
• Very large file size
• Not widely supported for web use
• 📌 When to Use: Ideal for professional photographers,
graphic designers, and printing.
6. WEBP (Web Picture Format)
• 🔹 Use Cases: Web graphics, websites, online images
• ✅ Advantages:
• Better compression than JPEG and PNG
• Supports transparency like PNG
• Supports animation like GIF
• ❌ Disadvantages:
• Not supported in older browsers
• Slightly longer processing time
• 📌 When to Use: Best for websites where loading speed
is crucial.
7. HEIF/HEIC (High-Efficiency Image
Format)
• 🔹 Use Cases: Apple devices, high-quality image storage
• ✅ Advantages:
• Better compression than JPEG (smaller file size, better quality)
• Supports transparency and animations
• Stores multiple images (like Live Photos)
• ❌ Disadvantages:
• Limited compatibility outside Apple ecosystem
• Needs conversion for use in many applications
• 📌 When to Use: Great for iPhone users and high-quality
storage.
8. AVIF (AV1 Image File Format)
• 🔹 Use Cases: Next-gen web images, high-quality
compression
• ✅ Advantages:
• Superior compression and quality compared to JPEG and WEBP
• Supports HDR, transparency, and animation
• Open-source and royalty-free
• ❌ Disadvantages:
• Limited software support (though improving)
• Higher processing power required
• 📌 When to Use: Best for web developers looking for high
efficiency and quality.
10. SVG (Scalable Vector Graphics)
• Use Cases: Web icons, illustrations, UI elements
• ✅ Advantages:
• Scalable without loss of quality
• Editable with text-based tools
• Small file size for simple images
• ❌ Disadvantages:
• Not suitable for complex images like photos
• Requires knowledge of XML for advanced use
• 📌 When to Use: Best for logos, icons, and web
graphics.
10. EPS (Encapsulated PostScript)
• Use Cases: Web icons, illustrations, UI elements
• ✅ Advantages:
• Scalable without loss of quality
• Editable with text-based tools
• Small file size for simple images
• ❌ Disadvantages:
• Not suitable for complex images like photos
• Requires knowledge of XML for advanced use
• 📌 When to Use: Best for logos, icons, and web
graphics.
11. AI (Adobe Illustrator)
• 🔹 Use Cases: Vector graphics, illustrations, logos
• ✅ Advantages:
• Editable, scalable, and layered format
• Used for professional design and branding
• ❌ Disadvantages:
• Requires Adobe Illustrator to edit
• Not suitable for raster images
• 📌 When to Use: Best for designers working with Adobe
tools.
12. PDF (Portable Document Format)
• 🔹 Use Cases: Document sharing, printable images
• ✅ Advantages:
• Preserves formatting across devices
• Supports both vector and raster graphics
• Can include interactive elements
• ❌ Disadvantages:
• Not ideal for editing images
• Requires specific software for advanced editing
• 📌 When to Use: Best for documents with images,
printable designs.
13. RAW (Unprocessed Image File)
• 🔹 Use Cases: Professional photography, high-quality
image editing
• ✅ Advantages:
• Stores all image data from the camera sensor
• High-quality adjustments possible
• ❌ Disadvantages:
• Large file size
• Requires processing to be usable
• 📌 When to Use: Best for photographers who edit
images in detail.
14. PSD (Photoshop Document)
• 🔹 Use Cases: Professional photography, high-quality
image editing
• ✅ Advantages:
• Stores all image data from the camera sensor
• High-quality adjustments possible
• ❌ Disadvantages:
• Large file size
• Requires processing to be usable
• 📌 When to Use: Best for photographers who edit
images in detail.
15. XCF (GIMP Image Format)
• 🔹 Use Cases: GIMP image editing, layered images
• ✅ Advantages:
• Supports layers and transparency
• Free alternative to PSD
• ❌ Disadvantages:
• Limited compatibility outside GIMP
• 📌 When to Use: Best for GIMP users working on
layered images.
16. ICO (Icon Format)
• 🔹 Use Cases: Video game textures, CGI
• ✅ Advantages:
• High-quality format for rendering
• Supports transparency
• ❌ Disadvantages:
• Large file size
• 📌 When to Use: Best for game development and CGI
work.
Conclusion: which Format Should You
Use?
• For web graphics → PNG, WEBP, SVG
• For photography → JPEG, RAW, HEIF, TIFF
• For animations → GIF, WEBP
• For vector graphics → SVG, AI, EPS
• For professional printing → TIFF, EPS, PDF
• For editing → PSD, XCF
• For gaming → TGA
Polygon file formats?
• Polygon file formats are used to store and represent
polygonal geometric data, typically for 3D modeling,
GIS, and computational geometry applications. Here are
some common polygon file formats
1. OBJ (Wavefront Object)

• Extension: .obj
• Description: A simple, widely used text-
based format for 3D models.
• Features:
• Stores vertices, edges, faces, and texture
coordinates.
• Can include material files (.mtl).
• Does not store animation data.
2. STL (Stereolithography)
• Extension: .stl
• Description: Commonly used in 3D printing and CAD
applications.
• Features:Supports only triangular facets.
• Can be binary or ASCII format.
• No support for color, texture, or material properties.
3. PLY (Polygon File Format)
• Extension: .ply
• Description: Designed for storing 3D geometric data,
especially from 3D scanning.
• Features:
• Supports both ASCII and binary formats.
• Can store color, normals, and other per-vertex attributes.
• Commonly used in research and scientific applications.
4. OFF (Object File Format)
• Extension: .off
• Description: Simple format for storing 3D polygonal
geometry.
• Features:
• Contains vertex and face information.
• No support for color, texture, or additional metadata.
5. FBX (Filmbox)
• Extension: .fbx
• Description: Proprietary format developed by
Autodesk for 3D modeling and animation.
• Features:
• Stores complex scene data, including polygons, textures,
animations, and materials.
• Supports both binary and ASCII formats.
• Widely used in game engines and animation.
6. 3DS (3D Studio)
• Extension: .3ds
• Description: Legacy binary format for 3D modeling.
• Features:
• Stores mesh data, materials, and limited animation.
• Limited to 65536 vertices per mesh.
• Used in older Autodesk software.
7. GLTF/GLB (GL Transmission Format)
• Extension: .gltf, .glb
• Description: Modern format optimized for web
applications and real-time rendering.
• Features:
• .gltf (JSON-based) and .glb (binary).
• Stores geometry, materials, animations, and textures.
• Efficient and widely supported in game engines.
8. DXF (Drawing Exchange Format)
• Extension: .dxf
• Description: Format developed by Autodesk for 2D and
3D CAD data.
• Features:
• ASCII and binary variants.
• Can store polygonal meshes and wireframe models.
• Often used in CAD and GIS applications.
9. VRML/X3D (Virtual Reality Modeling
Language)
• Extensions: .wrl, .x3d
• Description: Used for interactive 3D models in web
applications.
• Features:
• VRML is older, X3D is XML-based.
• Supports animations, textures, and interactivity.
• Used in virtual reality and simulations.
Definition of Rigging in Unity
• 1. What is Rigging?
Rigging is the process of creating a skeletal framework for a 3D
character or object to facilitate animation. It involves defining a
bone structure (also called an armature) that allows
movement and deformation of a 3D model. Without rigging,
animating a 3D model would be extremely difficult because
there would be no underlying structure to control movement.
Unity itself does not provide a rigging tool but allows
importing rigged models from external 3D modeling
software like Blender, Maya, 3ds Max, or Cinema 4D.
Unity's Animator and Humanoid Rigging System enable
smooth animation once the model is rigged.
Definition of Rigging in Unity
• 1. What is Rigging?
Rigging is the process of creating a skeletal framework for a 3D
character or object to facilitate animation. It involves defining a
bone structure (also called an armature) that allows
movement and deformation of a 3D model. Without rigging,
animating a 3D model would be extremely difficult because
there would be no underlying structure to control movement.
Unity itself does not provide a rigging tool but allows
importing rigged models from external 3D modeling
software like Blender, Maya, 3ds Max, or Cinema 4D.
Unity's Animator and Humanoid Rigging System enable
smooth animation once the model is rigged.
Definition of Rigging in Unity
• 2. Components of Rigging
a) Bones and Joints
• The skeleton of a 3D model is made up of bones and joints.
• Each bone acts as a pivot for movement.
• Joints define how bones connect and move relative to each
other.
For example:
• A human character rig consists of bones for the spine, arms,
legs, hands, and head.
• A mechanical rig (e.g., a robot) consists of joints for rotating
and translating parts.
Definition of Rigging in Unity
b) Skinning (Binding the Mesh to the Rig)
• After setting up the skeleton, the 3D mesh is
attached to the bones.
• This process is called skinning.
• Each bone influences specific parts of the mesh.
• The influence is defined using weight painting
(determines how much a bone affects a part of the
mesh).
Definition of Rigging in Unity
c) Forward and Inverse Kinematics (FK & IK)
• Forward Kinematics (FK): Movement propagates from the
parent bone to the child bone.
• Example: Moving the shoulder affects the elbow and wrist.
• Inverse Kinematics (IK): Movement propagates from the
child bone to the parent bone.
• Example: Moving the hand automatically adjusts the elbow and
shoulder.

Unity supports IK constraints to simplify character


movement in animation.
Definition of Rigging in Unity
d) Constraints and Controllers
• Rigging can include constraints to control bone
movement.
• Example: Limiting a knee joint to only bend forward.
• Controllers (like custom handles or control rigs) help
in animating complex movements efficiently.
Creating Sprites;
Creating Sprites;
Creating Sprites;
Animations using sprite-sheets?
• 1. What is a Sprite Sheet?
• A sprite sheet is a single image that contains multiple frames
of an animation. By changing which part of the image is
displayed over time, you can create smooth animations.
Animations using sprite-sheets?
• Unity (C# + Animator)
• Using Unity's Animator
• Import the sprite sheet into Unity.
• Slice the sheet using the Sprite Editor.
• Create an Animation and add the frames to the timeline.
• Attach the Animator to the GameObject.
Animations using keyframes;
• Animations Using Keyframes
• Keyframes define stages of an animation,
specifying how an element should change at
different points in time. Here’s how keyframes
are used for animations in different
environments.
Animations using keyframes;
• Using Unity’s Animator:
1.Add an Animator Component to the
GameObject.
2.Open the Animation Window and create
keyframes manually.
3.Use C# to control animations dynamically.
Animation Controllers in Unity

• Animation Controllers in Unity manage and


control animations using the Animator
component. They help transition between
different animation states and control
movement based on logic.
Animation Controllers in Unity

Step 1: Create an Animator Controller


1.Go to Assets > Create > Animator Controller.
2.Name it (e.g., CharacterController).
3.Select your GameObject and add an Animator component.
4.Assign the CharacterController to the Animator component.
Animation Controllers in Unity
• 3. Using Animation Parameters
• Animation parameters allow animations to change based on
conditions.
• Adding Parameters
1.Open the Animator window.
2.Click the Parameters tab.
3.Add parameters:
1.Float (e.g., Speed)
2.Bool (e.g., isJumping)
3.Trigger (e.g., JumpTrigger)
• Example Usage: Transition from Idle to Run
Animation Controllers in Unity
• 3. Using Animation Parameters
• Animation parameters allow animations to change based on conditions.
• Adding Parameters
1. Open the Animator window.
2. Click the Parameters tab.
3. Add parameters:
1. Float (e.g., Speed)
2. Bool (e.g., isJumping)
3. Trigger (e.g., JumpTrigger)
• Example Usage: Transition from Idle to Run
1. Add a Speed (Float) parameter.
2. Select the transition arrow between Idle → Run.
3. In the Inspector, add a condition:
1. If Speed > 0.1, switch to Run.
4. Do the same for Run → Idle (Speed < 0.1).

You might also like