+ All Categories
Home > Documents > Universitat Jaume I - Video game Design and Development...

Universitat Jaume I - Video game Design and Development...

Date post: 29-May-2018
Category:
Upload: buithuan
View: 226 times
Download: 2 times
Share this document with a friend
80
Universitat Jaume I - Video game Design and Development Degree Design and development of an editor for customizing a character for fantasy video games in Unity Author: Oxana Vorobieva, [email protected] Tutor: Raúl Montoliu Colás Academic course : 2015/2016
Transcript
Page 1: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

Universitat Jaume I - Video game Design

and Development Degree

Design and development of an editor for customizing a

character for fantasy video games in Unity

Author: Oxana Vorobieva, [email protected]

Tutor: Raúl Montoliu Colás

Academic course : 2015/2016

Page 2: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

2

Abstract This document represents the results of the subject with the code VJ1241, Final Project. In

this document includes the description, development and design of an application in Unity 5

which its purpose is to customize characters.

A game with a good character creator has a significant edge over other games in its genre.

While it’s not the only element that makes a good game by a long shot, a great character

creator lets players who like customization really get into their characters, allowing them to

micromanage even the smallest aspects of their appearance. A character implies an

humanoid as the term refers to creation of a character in the classic role playing games, it

doesn’t refers to beasts nor fantastic animals, as they’re referred as creatures, and not

characters. In this project a character creator is going to be developed, this includes the

application and the art content. In particular its planned to be mainly a human male and

female It is going to be on 3D graphics and the characters are going to be stylized, this means

that the models are not realistic, and goes with a personal style.

Key words

3D modelling, concept art, animation, character design, creation, game engine

Page 3: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

3

Thank-you-note

First I’d like to thank all my classmates and friends that have been with me through the years:

Pablo Rincón, Adrian Hernandez, Adrian Sanchez, Laura Chordá, Jaime Breva Isabel

Lacambra, Linda García, Carmen Pachón, Mario Juliá, Borja Villarino, Javier Serrano, Daniel

Benzal, Fran Sánchez, Luis Moyano, José Luis Recatalá, Yolanda Mojena, Álvaro Delgado,

Sergi Escartí… and everyone else with all your opinions, support and advices. All of you are

the best people I’ve met in my life and I’m glad we helped out each other all this time.

To my family that encourage me to study this degree helped me in all I needed and told me to

follow my dreams.

I also thank to all the game artists that inspired me with their work.

I’d like to thank my tutor, Raul Montoliu Colás for all the support to going on this project and

the advices that helped me out to improve and write this project.

Page 4: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

4

Design and development of an editor for customizing a character for fantasy video games in Unity

0

Abstract 1

Thank-you-note 2

Chapter 1: Technical Proposal 6

1.1.Introduction 6

1.2.Motivation & context 6

1.2.1 Fantasy Context 7

1.2.2 Video game and Artists Inspirations 8

1.3. Preview of the project 10

1.4. Objectives 12

1.5. Justification 14

1.5.1 VJ1204 - Expressión Artística 14

1.5.2 VJ1212 - Expressión Gráfica 15

1.5.3 VJ1216 - Disseño 3D 15

1.5.4 VJ1221 - Informàtica Gràfica 16

1.5.5 VJ1226 - Diseño de Personajes y Animación 17

1.5.6 VJ1223 - Arte del Videojuego 17

1.5.7 VJ1224 - Ingeniería del Software 18

1.5.8 VJ1227 - Motores de Juegos 18

1.6. Recommended previous knowledge 19

Page 5: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

5

1.7.Planification and task division 19

1.7.1 Block 1: Documentation 20

1.7.2 Block 2: Software development 20

1.7.3 Block 3: Game Art 21

1.8. Methodology 22

1.8.1 Risks 23

1.9. Tools 24

Chapter 2: Development of the project 26

2.0 Planification 27

2.1 Concept art 27

2.2 Creating 3D models 30

2.2.1 Body 31

2.2.2 Hair and clothes 47

48

2.3 Development of the application in Unity 55

2.3.1 Analysis 55

2.3.2 General vision of the application 55

2.3.3 How does the application work. Functionality 55

2.3.4 Programming: Scripting 63

2.3.5 Programming: Shaders 64

2.3.6 Lightning and environment 66

Chapter 3: Results 67

Page 6: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

6

Chapter 4: Conclusions 68

4.1Game Engines and Unity 69

4.2. Modelling 3D game assets 69

4. 3. Shaders 70

4.4 Changes from the technical proposal 71

4.5 General conclusion of the application 71

Chapter 5: Annex and bibliography 72

Page 7: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

7

Chapter 1: Technical Proposal

1.1.Introduction

Everyone loves to have its own character, and live it’s own adventure, nowadays video games

rely on character editors so the players can feel its own unique experience. Developing a

character needs lots of hours for the game development, so the character editor is the fastest

and easiest way to create one for users. Role playing games are the most games which have

its own character editor and it's needed in the video game industry. The purpose of these is to

give players the option of creating unique characters, i.e.: hair color, skin color, eye color,

clothes etc. Many RPGs have this as an option, others have a default character that the player

controls.

The project is about creating a developing a successful character editor in Unity 5, with two

main genders to choose: male and female humanoids with animations and textures made in a

3D application and then imported and scripted in Unity for customization and creating the

interface. Stylization it will be a pillar for the character editor, with simple shapes and vibrant

colors.

1.2.Motivation & context

Everyone likes to design characters, but designing one is a long and tedious process and

needs lots of technical and artistic knowledge, so we need an easy way for the user where no

big knowledge is needed to create lots of characters variations and creating stories.

The creation of game character content will be made with a game engine for importing the 3D

assets containing the features of a human character: hair, eyes, body features, clothes... The

player, can manage and edit lots of aspects of the editor, creating lots of possibilities. The

character creation system will use a simple interface for mesh modification, included in

modern game engines.

Page 8: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

8

1.2.1 Fantasy Context

Why fantasy theme? Most games with character creation tool are role playing games, also

there are simulation games (The Sims) or sci fi games (Mass Effect), personally I am more

attracted mostly to medieval fantasy theme because the games I have played and I have more

experience with: Final Fantasy Saga, Golden Sun, Fire Emblem, Elder Scrolls, Warcraft, The

Witcher ... and books I have read: Name of the Wind, Lord Of The Rings, Idhún Memories,

Eragon, Dragonlance Chronicles... which complement my knowledge and is more suitable for

me.

The main theme of the character creator is fantasy and fiction, as appears in many MMORPG

games as we can see at the Figure 1. Character customization gives the player the sensation

of creating their own story with their own characters with different attributes, similar to

classic table role playing games, for example Dungeons and Dragons or Pathfinder.

Figure 1: Character creation in Final Fantasy XIV [6]

Character design is a personal challenge for me every day, there are lots of studies about it:

colour, forms, style and originality are some of the traits that a good character might have.

That is why I would like to focus my final project in this type, character based work.

Page 9: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

9

1.2.2 Video game and Artists Inspirations

The main character style design inspirations for the character editor are:

Tetsuya Nomura: He is the main character artist at Square Enix in Japan. Sora, Cloud as seen

in Figure 3[4], Squall, Lightning as seen in Figure 2[8]. These are famous video game

characters in the Final Fantasy Saga and they have name of meteorological events, names in

characters are important because of the meaning that can be contributed to the story or to

the saga.

Figure 2: Official Render of Lightning Figure 3: Official Render of Cloud

Page 10: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

10

League of Legends: This free to play video game has a lot of character design and has a lot of

different types of artists. There are a lot characters [3], but the most notable examples are:

Ekko as seen in Figure 4 [5], Ahri, Lux as seen in Figure 5 [11], Katarina, Garen and more. There

are more than one hundred of different character designs, which is common in this game

genre: the MOBA.

Figure 4: Ekko Figure 5: Lux Star Guardian

Blizzard Universe: Samwise Didier [2], art director of Blizzard Entertainment, created most of

the Blizzard universe and characters. Over the past two decades, Blizzard Entertainment has

had a tremendous impact on the world of games and global pop culture. From its humble

beginnings as a three-person console-game development studio in 1991 to the creation of the

blockbuster Warcraft®, StarCraft®, and Diablo® series, Blizzard has a history of crafting

stunning worlds of science fiction and fantasy. The company’s distinctive gameplay and

Page 11: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

11

storytelling styles have captivated an international audience numbering in the tens of

millions whose passion cannot be quelled.

In the past year Blizzard announced a new video game called Overwatch [10]. Overwatch is an

upcoming multiplayer first-person shooter in development by Blizzard Entertainment. Unveiled

at BlizzCon 2014, the game emphasizes cooperative gameplay using a cast of various

"heroes", each with their own abilities and roles within a team. The cast of playable characters

in Overwatch was stated as being intended to portray diverse representations of genders and

ethnicities (including males, females, and non-human characters such as robots and a

gorilla). With this, the game is a reference to great character design and interesting cell

shading shader made for the game, making the game to be visually balanced and interesting.

Figure 6: Overwatch®, the new Blizzard Entertainment game, featuring a lot of new

characters.

1.3. Preview of the project

Page 12: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

12

In this project for character customization in Unity, the application will be executed on a

PC with different resolution options (maximum 1920x1080 pixels) for the OS Windows 7 or

superior versions. The editor will be composed by The character, the background and the UI.

Figure 8.1: Concept of the interface

The project will be a 3D model character editor which includes the edition of body, (thin, fit

and athletic) the face, clothes, genre, environment and lightning. These options makes the

character editor with variability and different lighting modes to make screenshots.

The application must be user friendly so it won’t be needed any knowledge about 3D modeling

pipeline.

Page 13: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

13

The model will be rotatable with a click and drag system and a zoom moving the middle

mouse button, two box interface with options, as see in Figure 8.1.

The left box will provide the information of genre, lightning modes background and a small

description of each feature, the box dialogue on the right, will be a changing dialogue box,

which depends on what feature we want to edit (body, clothes…) it will show different bars

which allow the editing of the different parts. Also in the right dialogue box there will be a

color choice for, which mentioned above, the body, clothes, hairstyle… etc

The UI will be made with Unity , with the canvas feature it can be created easily UI elements

like buttons,sliders, texts, images, scrollbars in minutes (It’s merely a drag and drop thing).

There will be also a Toggle UI option which allows to hide and show the UI for visualization,

and a Take screenshot which will save a .jpeg image, for later editing, use it as wallpaper…

etc.

The intention of the creation of 3D models of this application it will be a minimum of three

different assets parts for the character. These parts are hairstyle, top cloth, bottom cloth and

shoes. This will be a minimum of twelve assets to combine and choose in the application. If

there is time and reusability of 3D models there is a chance to make more than twelve.

1.4. Objectives

To fulfil this project, two objectives types are established: software engineering and art, in

addition a section as objective 0 where includes the subject VJ1241 ‐ Treball de Final de Grau

and its competencies.

1. Objective 0

a. Capacity to develop, display and defend individually in front of a University

court, a project in accord to videogame design and development and with a

Page 14: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

14

professional nature in which the competences gained during study are

integrated.

b. Writing a report in English, displaying and supporting orally in front of a

University court an original project of a professional nature in the field of video

games and in which the competences gained during study are integrated.

Therefore, the goal is learning to develop a professional project proposal with

the skills obtained during the degree.

c. Elaborating a project proposal which represents the framework of the project

with a set of objectives, tasks, planification and risks with a justification of the

skills obtained during the degree.

2. Objective 1: Produce an application

a. Making a successful and optimized software program: this project is obviously

a software development, so the realization of a smooth running program and

the establishment and use of software engineering principles in order to obtain

software that is reliable and works efficiently on real machines. This includes

the three main phases of software development: analysis, design and

implementation.

i. Analysis: the analysis of the application for determining the needs and

conditions for the project, like the polycount, texture resolutions, .

ii. Design: the main design of the project is to be user friendly, to achieve

this, a concept is needed with the location of the UI and how is going to

be visualized.

iii. Implementation: this is the core of the functionality of the project, this

objective includes scripting and testing the software.

b. Create exportable 3D models for game engines: There are some game engines

that have character examples for using and testing for the game. With this, it’s

Page 15: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

15

very useful to preview the model created when it comes to a game demo or

preview. Obviously it comes handy to fantasy genre demos but it can really

be used to any game where a character is needed. The application will export

into .fbx, .obj and .dae extension files, with Unity's Create Asset.

3. Objective 2: Making professional game art

a. Creating good looking models for the genre is intended: Making good

concept arts art is very important to visualize good looking 3D models because

it gathers all the forms, combinations, color palettes and expressions.

b. Game modeling for animation purposes: When a modeler finishes building a

character, it's a static 3D mesh, almost like a marble sculpture. A character rig

is essentially a digital skeleton bound to the 3D mesh. Like a real skeleton, a rig

is made up of joints and bones, each of which act as a "handle" that animators

can use to bend the character into a desired pose. Character rigging is a tough

task and things like posing, animation and facial expressions are very

important for character. The skeleton will be adjusted to the model that the

editor, with this, an animator can make his own animations without entering on

the 3D modeling and rigging.

1.5. Justification

Extracted from LLEU [7]

http://e-ujier.uji.es/pls/www/!gri_ass.lleu_asignaturas_ob_g?p_titulacion=231

1.5.1 VJ1204 - Expressión Artística

E01 - Capacidad para manejar técnicas y herramientas de expresión y representación

artística.

● E01 - Controlar las leyes de la proporción y composición.

Page 16: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

16

● E01 - Dominar las distintas herramientas gráficas y sus recursos expresivos.

● E01 - Producir bocetos a mano alzada de los elementos de los videojuegos.

● E01 - Representar correctamente las proporciones y posturas de la figura humana y

otros elementos susceptibles de ser incluidos en videojuegos (animales, objetos).

Creating concept arts for the editor. Even it not strictly necessary domaining proportions,

expressions and understanding human figure gestures are very important for a good

character design. Block 3 on planification.

1.5.2 VJ1212 - Expressión Gráfica

E02 - Capacidad de visión espacial y conocimiento de las técnicas de representación gráfica,

tanto por métodos tradicionales de geometría métrica y geometría descriptiva, como

mediante las aplicaciones de diseño asistido por ordenador.

● E02 - Comprender los distintos métodos de representación tridimensional sobre una

superficie plana.

● E02 - Desarrollar representaciones espaciales tanto con herramientas gráficas como

informáticas.

● E02 - Producir escenarios de videojuegos basados en distintas perspectivas

espaciales.

The editor must be represented within an environment (the background), lightning (day

modes), ground with a base mesh texture camera and compositing for better visualization of

the game assets. Block 3 on planification.

1.5.3 VJ1216 - Disseño 3D

Page 17: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

17

E04 - Capacidad para el diseño y la creación de elementos gráficos.

● E04 - Analizar las características técnicas de las herramientas de diseño 3D.

● E04 - Usar aplicaciones de modelado tridimensional para videojuegos.

Most of the game character assets will be modeled and textured in 3D. Optimization and

topology are very important for a good character rig for movement and expressions. If this

stage is made incorrectly, all the following stages of the character editor would fail and it

would be a begin over again. This is the most important subject and the most related to this

project.Block 3 on planification.

1.5.4 VJ1221 - Informàtica Gràfica

E07 - Conocimiento y aplicación de los métodos para la creación y preservación de imágenes

sintéticas.

IR17 - Capacidad para diseñar y evaluar interfaces persona computador que garanticen la

accesibilidad y usabilidad a los sistemas, servicios y aplicaciones informáticas.

● E07- Analizar las características técnicas de las librerías gráficas para la creación de

imágenes sintéticas.

● E07, IR06 - Explicar los principios básicos de la creación de imágenes sintéticas.

● E07, IR08 - Usar librerías gráficas para la creación de gráficos en 2D y 3D.

● IR17 - Usar librerías para la creación de interfaces de usuario.

With the stylized look, the editor needs shaders programming, shaders are small scripts that

contain the mathematical calculations and algorithms for calculating the colour of each pixel

rendered, based on the lighting input and the Material configuration. Textures are bitmap

images. Block 2 on planification.

Page 18: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

18

1.5.5 VJ1226 - Diseño de Personajes y Animación

E06 - Capacidad para el diseño y la creación de personajes animados.

IR07 - Conocimiento, diseño y utilización de forma eficiente los tipos y estructuras de datos

más adecuados a la resolución de un problema.

● E06 - Explicar los fundamentos de la animación por ordenador.

● E06 - Explicar los principios de la creación de personajes.

● E06, IR07 - Analizar las características técnicas de las herramientas de modelado de

personajes y animación 3D.

● E06, IR07 - Usar aplicaciones de modelado de personajes y animación en el contexto

de los videojuegos.

Characters must not be static, this subject goes with the subject “Modelado 3D” the models

need to be rigged and animated so they can suit each other when animated, facial rigging is

an extensive part which also is included here. Block 3 on planification.

1.5.6 VJ1223 - Arte del Videojuego

E09 - Capacidad para realizar el arte de los videojuegos, crear personajes y ambientes.

● E09, G09 - Controlar las herramientas gráficas para crear representaciones con alto

nivel de acabados.

● E09, G10 - Crear ambientes con definición de luces, sombras, texturas y efectos

ambientales.

● E09, G10 - Crear personajes caracterizados y texturizados.

This subject enters on the stylization of the characters which appear in the editor. The

lightning, effects, atmosphere are very important for good and finished character

representation. Block 3 on planification.

Page 19: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

19

1.5.7 VJ1224 - Ingeniería del Software

IR16 - Conocimiento y aplicación de los principios, metodologías y ciclos de vida de la

ingeniería de software en el ámbito de los videojuegos.

IR01 - Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas

informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a

la legislación y normativa vigente.

IR02 - Capacidad para planificar, concebir, desplegar y dirigir proyectos, servicios y sistemas

informáticos en el ámbito de los videojuegos,liderando su puesta en marcha y su mejora

continua y valorando su impacto económico y social.

Software engineering is the study and an application of engineering to the design,

development, implementation and maintenance of software in a systematic method. Making

a character editor requires evaluating and control the software creation cycle, like any other

program or video game. Block 1, 2 and 3 on planification are related.

1.5.8 VJ1227 - Motores de Juegos

E08 - Capacidad para diseñar y construir modelos que representen la información necesaria

para la creación y visualización de imágenes interactivas.

E12 - Capacidad para evaluar, usar y extender motores de juegos.

The editor will be made in Unity 5. The game engine will make some process more faster than

made by code: instancing objects, creating an UI quickly. This obviously doesn’t avoid

programming: scripting in the engine respective language is important to make things work

properly. Block 2 on planification.

Page 20: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

20

1.6. Recommended previous knowledge

Knowing how to work with modern 3D workflow pipeline and production:

○ Low Poly 3D modelling

○ Sculpting details

○ Retopology

○ UV coordinates and texturing

○ Rigging

○ Animation

It is a project made with a game engine, so it’s strictly necessary knowledge about Unity 5 for

the realization of the project.

Also having programming skills for shaders, which are used to do shading: the production of

appropriate levels of color within an image, to produce special effects or do video

post-processing.

Is not mandatory but anatomy knowledge is recommended, for the production of model

sheets. Model Sheets are precisely drawn groups of pictures that show all of the possible

expressions that a character can make, and all of the many different poses that they could

adopt. These sheets are created in order to both accurately maintain character detail and to

keep the designs of the characters.

Page 21: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

21

1.7.Planification and task division

In this table it’s summarized the tasks, the hours and the dependencies, at the parts of

methodology and justification is specified how this tasks are going to be executed. The tasks

are divided in three main blocks which are considered the cores of the project:

Documentation, software development and game art.

1.7.1 Block 1: Documentation

This tasks are associated with the objective 0 mentioned in this project proposal and includes

all the documentation to present and defend the project, with a small analysis of the

application.

Task Hours Dependencies

1.Technical Proposal Elaboration 10h

1.1 Analysis of the application 2h

1.2Memory and presentation redaction 40h Block3, Block2

1.7.2 Block 2: Software development

This block is associated to the specification of the coding and the software design

engineering process of the application.

Task Hours Dependencies

1. Composition of the application 70h

1.1 Design of the application 10 Block 1

Page 22: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

22

1.2 Implementation of the editor 15 Block 3

1.3 Creating and scripting the interface 15

1.4 Scripting a mesh editor 30 1.1

2. Illumination, Shaders and Post process effects

25h

2.1 Setting up the lightning 10 1

2.2 Programming the shaders 10 2.1

2.3 Additional effects: water, particles.. 5

1.7.3 Block 3: Game Art

This block is associated to the creation of models with a 3D software tool, following the

production pipeline used in video games.

Tasks Hours Dependencies

1.Concept art and style definition 13h

1.1 Male and female body type shapes 3

1.2 Male and female face type shapes 5

1.3 Cloth Designing 5 1.1 , 1.2

2.Creation of assets 80h

2.1 Modelling Base body low poly meshes 20 1

2.2 Modelling low poly hair 10 1

2.3 Modeling clothes 20 1

2.4 UV mapping 10 2.1

2.5 Texturing 20 2.4

Page 23: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

23

3. Rigging and animation 60h

3.1 Setting the bones 10 2

3.2 Setting Inverse kinematics and bone limitations

20 3.1

3.3 Facial Rig 10 3.1

3.4 Creating animations 20 3.2

Total: 300 hours

1.8. Methodology

GitHub platform has been chosen to create the remote repository to store and control

versions of the project on the Internet. Git allows and encourages you to have multiple local

branches that can be entirely independent of each other. The creation, merging, and deletion

of those lines of development takes seconds and it’s ideal for the application.

The methodology for software development will be follow the waterfall model, it is a

sequential design process with the phases of conception (concept art), initiation (generating

models), design (polishing models and finalizing textures), construction ( importing in a game

engine) and testing (looking for errors), as the name indicates the process is made from top

to down.

Why a waterfall model? Principally because it's necessary to create the game assets before

creating the application, without meshes it can’t be imported to Unity to be scripted for later

editions.

Also, every two weeks, make a small report with all the progress made and which task are

completed or not. This will be helpful for the development of the final memory, the report will

include WIP (work in progress) shots, renders, and progress of the character editor. Within the

reports it will be added an evaluation, when the application is setup, it will be made an inquiry

Page 24: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

24

with computer science technology and video game students for improving the software

design, this will be benefit because evaluates the program for getting the better results.

The Hair

The hair is going to be low-poly based, this means it won't have fiber simulation and use a

joint-based animation physique. Why choose low poly hair? In first place it’s way more optimal

meshes for a real time render applications than fiber meshes, which are particle systems. To

cover the head it will be needed a lot of hair particles and then calculate all further collisions

so it won’t clip the model. In second place, fiber meshes are suitable for realistic models, as

mentioned before, this project seeks stylized characters.

How it is going to be simulated? As referred before it will use a joint simulation bone within a

spring physique, this features are implemented in unity

The cloth

The cloth it will use the same methodology as the hair, the main difference that it will be

simulated in Unity as it will be real time rendered. Unity includes a Cloth feature which is

suitable for the project.

Why not simulating with a third party 3D application, like Blender, Maya or 3dsMax? The main

reason is that each program has own systems and algorithms for simulations, it can be

exported, but the results are not always as expected. Also, Maya 3dsMax and Blender

simulations are closer to film animations which uses a long process to render and calculate

the simulations and take a lot of time. The second reason is that cloth simulations always can

be slightly modified with scripts in Unity so the simulation acts always as expected for the

application.

Facial Rig

Page 25: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

25

In the 3d software application Blender, there can be placed bones to the important points

of the human face: eyelids, lips, teeth, brows and nostrils. With this and controllers for

animators there can be made easy facial expressions to make the character believable. The

animation will be keyframed type animations.

1.8.1 Risks

The risks are variable in this project, the models have to be optimized, the textures have to be

reused for better loading of the application, materials, custom shaders. This is also a lot of

work for one single person and maybe there will be a lot of work to do the application.

1. Triangle polycount of the models, this means lower performance game engines are

real time rendered programs and the polycount limitations is something taking

account for great performance. Also depends on the computer specifications,

specially on the computer graphics card, which task is to render all the polygons and

textures of the application. The recommended triangle count of a desktop application

is 50k-100k in a scene, keep in mind that this is a orientative and not a strict number.

2. Complex meshes, if the mesh is very complex it will be more difficult to edit with

scripts, this applies mostly to face edition and hair edition, although the hair edition

can be solved with physics, it takes a good graphic video card to simulate physics for

the hair.

3. Creating few 3D models so there is less variability: if a task takes more time than

another, not enough assets can be created, so the versatility of the editor can be lost

and furthermore, less character possibilities can be made. It’s not the same creating

three different hairstyles than seven, for example.

4. Risk of realizing more work that is expected: This is a challenging project so there is

a great amount to work to be done, hopefully with the skills achieved in this degree the

project should be completed.

1.9. Tools

Page 26: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

26

Tools for software engineering, scripting and documentation:

● Unity 5 It’s with the 3D modeling program, the main tool for the realization of the

application, it’s a free game engine with all the features to make the application very

fast: importing the complete information of a 3D model with mesh, animations and

textures, PBR materials, physics simulations, shaders programming, easy UI

implementation and quick export in different resolutions. This is why Unity is chosen,

because is user friendly and powerful for artists. The programming language that will

be used is C#.

● Monodevelop: Mono is the default scripter editor for Unity 5. The alternative is using

Visual Studio 2015 Community.

● GitHub Repositories: Managing remote repositories includes knowing how to add

remote repositories, remove remotes that are no longer valid, manage various remote

branches and define them as being tracked or not, and more.

● Google Docs: Google docs include excels and forms which will be used to create test

reports, write the memory and make graphics. The alternative would be Microsoft

Office.

Tools for making game art:

● Blender Blender is a fully free/open source 3D tool creation pipeline, Blender's

features include 3D modeling, UV unwrapping, texturing, raster graphics editing,

rigging and skinning, fluid and smoke simulation, particle simulation, soft body

simulation, sculpting, animating, match moving, camera tracking, rendering, video

editing and compositing. This program will be the main tool for making the game

assets, as described in the tasks, it fulfils all the 3D pipeline workflow, with its features

described before. Blender is the alternative to program 3DS Max [13]

● 3ds Max Autodesk 3ds Max, is a commercial and professional 3D computer graphics

program for making 3D animations it has a student version also, it has the same

features as mentioned on Blender.[1]

Page 27: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

27

● Substance Painter professional program for baking maps, texturing and exporting

maps. Artists using Substance are empowered by its fully non-destructive and

interactive workflow, allowing to make beautiful art faster than ever. This program will

be used for the part of texturing pipeline, Substance Painter can automatically export

the necessary maps for Unity. [12]

● MakeHuman Makehuman is an open source 3D computer graphics software

middleware designed for the prototyping of photo realistic humanoids. It is developed

by a community of programmers, artists, and academics interested in 3D modeling of

characters. [9]

● Photoshop CS6 it's a commercial program so the alternative it would be the free open

source program Krita.

● Krita: Krita is a free raster graphics editor. Krita is designed to be a digital painting

application. It has been influenced to some extent by software like Corel Painter and

SAI. Krita packs with some key features different than most of its kind, including the

ability to work with both bitmap and vector illustration.

Page 28: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

28

Chapter 2: Development of the project In this chapter it will be described all the tasks that has been realized to get the project

working. This chapter is the core of the project were all the important steps on how was made

this project and the difficulties, changes and additional features that the project has.

2.0 Planification

As mentioned in the technical proposal the project will follow a waterfall method project, first

the game assets would be made for the development of the application and the the scripting,

programming and tweaking details are done.

Even there is a waterfall method that follow the project, when a first version of each asset

was generated it was imported to Unity for import-export testing, so internally there was a

prototyping of each game asset, and then iterated to make new changes.

Page 29: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

29

2.1 Concept art

Concept art is very important in video games industry and also to visual development.

Concept art must be made in several iterations to achieve the final result that is used to get

character sheets.

Face and style exploration was the first thing that need to conceptualize, the character’s face

is a key feature for our application, in Figure 9 and Figure 10 there are some early concepts

and styles for our models. Finally version 1 and 2 from Figure 9 are chosen.

Figure 9

Page 30: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

30

Figure 10

Next step is to establish the cloth design, here are some early concepts that the project wants

to follow, simple cloths with an oriental style is the main inspiration to get into a fantasy.

Heavy armor was not considered for this editor because it would be very bulky so light armor,

makes a nice look to the style chosen. Figure 11 shows some early concepts of female

clothes and hairstyles but they weren’t implemented (there aren’t any colors) Bob cut hairstyle

was made and imported to the application as it’s explained in 3d modelling hair and clothes.

Figure 12 shows male cloth concepts that finally were used on female

Page 31: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

31

Figure 11

Page 32: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

32

Figure 12

All the concepts were made with Krita open source program. Concepting took 15 hours to

complete.

2.2 Creating 3D models

The creation of the 3D models are all made with Blender free software. All the 3d modelling

follows the 3d pipeline creation content that follows the game industry. This steps can be

made in Blender.

1. Pre production, and concept which was described in the previous section,

2. Modelling low poly with a 3D application.

Page 33: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

33

3. Sculpting Details with high resolution subdivided model using brushes

4. Painting and Texturing to give the model colors, textures for the shader to use

them to give results like lightning, reflection and ambient.

5. Rigging creating rigs for the characters and objects that move, and control the

movement to create life-like or stylized animations.

6. Animation this adds motion for the characters, 3D animators create poses on a series

of still images that are referred to as frames. By creating a series of poses and playing

it over a certain amount of frames to can create the illusion of movement. The

animation makes the character believable.

2.2.1 Body

To make the body it’s used a base male model made with the software MakeHuman as seen

in Figure 13 and Figure14. Make human makes semi realistic base models. Then the model is

exported and reimported to blender for editing and make it stylized.

Page 34: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

34

Figure 13: MakeHuman base model Figure 14: MakeHuman base model

wireframe

Sculpting high poly

Figure 15: Highpoly end details result

With the base mesh imported, the model is subdivided and ready to be sculpted, the matcap

option is toggled on for the clay sensation and better visualization of the sculpt. Then the

model is subdivided with the multiresolution modifier of Blender and then with the sculpt

mode in blender and begin to add details until the final result is achieved as seen in Figure 15.

The model doesn’t have the T-Pose, because breaks both topology and anatomy rules,

considering humans don't walk around with their arms held out to the side. So the model was

Page 35: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

35

modeled that is as close as possible to their most common action, for most people is

walking and standing with the arms near at the torso, only occasionally bringing the arms

up, in this project's case the standing or Idle animation is planned to be made for both of the

models.

Figure 16

For the modelling, it was used anatomic references as guidelines: female head is often oval

shaped and male more square shaped, females as see in Figure 16 have greater hips and less

waist, unlike males. To make this stylized, the hand, the eyes and the feet and other features

were exaggerated.

Why do we need the high poly model, if the application needs models with sparse density of

geometry, this part will be explained at the texturing section.

Page 36: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

36

Retopology

The high poly assets aren’t suitable for the application so a retopology is need, the base

model has been changed a lot from the MakeHuman model, so it can be used to get the detail

textures. The highpoly models were duplicated and one of them is switched to the lowest

subdivision level in the multiresolution modifier that we used to sculpt the high poly. This

results to a low polygon model with around 5.000 quads then it's modified to have a correct

topology animation.

UV mapping and Texturing

When the low poly is ready the UV textures are need to be placed. Selecting a ring of vertices

with the operation Mark Seam, tells the UV unwrapper to cut the mesh along these edges.

Then the model is unwrapped and “unfold” in a 2d texture plane with a power of two size

texture, in this case 2048x2048 pixels of size, as seen in Figure 17

Page 37: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

37

Figure 17

The power of two size is very important because the texture is processed directly to the

graphics card.When the UV are layered the model is ready to be painted over. This process

algo can be made in Blender because it has also a painting feature but instead the program

Substance Painter will be used, this is only a matter of choice for the easy way to paint.

Before painting, baking textures are needed. Texture baking is the process of transferring

details from one model to another.

The baking tool starts a certain distance out from the model (usually a low-resolution model

for game use), and casts rays inwards towards another model (usually a high-resolution

sculpt). When a ray intersects the 2nd model, it records the surface detail and saves that into

a texture map, using the first model's Texture Coordinates.

Baking tools support multiple map types. High-resolution normals go into a Normal map,

occlusion goes into an Ambient occlusion map, etc.

Substance Painter has integrated bakers as seen in Figure 18 so multiple maps for the

painting process can be made usually the normal map and the occlusion map are used in the

standard shaders of Unity so is important to have good results at baking the textures. When

the textures are baked the model can be painted, when the painting is finished, the set of

maps must be exported for Unity. These maps can be seen at the Figures 19: from top to

bottom and left to right:

Normal Map: Normal maps are 3D bump maps that modify Vertex normals to give the

appearance of higher detailed geometry.

Ambient Occlusion Map: are pre-computed calculations of ambient light bounce on a surface.

Page 38: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

38

Metallic Smoothness Map: this is a type of specular map which controls how reflective

the surface is, and can adjust the shape of the reflection. Specular usually simulates only the

reflections of the brightest light sources in a scene. This type is often used in Unity.

Albedo/Diffuse Map: Diffuse and Albedo Maps represent only the base colors of a surface, as

plain texture without any source of light.

Figure 18: Substance Painter Baker with default parameters

Page 39: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

39

Figures 19

Page 40: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

40

Figure 20: Male base with all the textures applied

Page 41: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

41

Figures 21 and 22

Figures 20, 21 and 22 Final result with all the textures applied rendered with Substance

Painter

As seen in the Figure 21, the model is a low poly version with all the maps, with the Figure 22

the wireframe is shown in red lines representing the edges of the model.

Page 42: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

42

Figure 23 Figure 24

The painting method is using the default round brush and the spray brush, for more believable

skin the areas of the face where the blood is near to the skin are painted with a soft red color

like the nose, the eyelids and the cheeks, as seen in Figure 23. The roughness map goes from

white (no reflection) to black(reflective as a metal)color In the Figure 24 we can see the

metallic smoothness, the darker areas means that the map is going to reflect more light the

eyelids where are usually wet because of the eye are in darker color, also the lips have more

shininess in the face.

With the fast pipeline of painting texture with substance painter, the albedo base texture can

be modified without modifying the metallic smoothness map or the normal map, with this,

different set of texture colors are made to make different skin colors [14]

The final application has two more selectable colors for the skin.

With all the textures baked and painted, the next step is to make the rigging.

Page 43: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

43

Rigging the model

The textures are not needed in when rigging and animating so this can be made starting at

the point of the UV Mapping.

There is a Blender addon that adds a generated skeleton human rig, this is the equivalent to

the biped in 3ds max. This addon is called Rigify and creates a meta rig. The meta rig

operates on the principle that once a rig is created, that rig should no longer need Rigify. This

means you can always distribute rigs created with Rigify to people who do not have it and the

rigs will still function completely.

The first step is to add the meta rig and move the bones to be aligned to the mesh as seen in

the Figure 25 the bones are parented with a correct hierarchy also in the metar rig can be

added more bones that are child of the head bone. This is to use to make facial expressions

as seen in the Figure 26 and 27

Figure 25 Figure 26 Figure 27

When the rig is placed, there is a button that generates widgets which are mostly circles and

lines that cannot be seen in Unity. These widgets makes the animation easy to visualize and

without relying with the bones and options to quickly pose the mesh. But with this only the

skeleton is made, we need to apply weight to the mesh to be animated properly, painting the

Page 44: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

44

model with the weight paint mode in blender as see in Figure 28 the influence of the spine

represented with a cube around the model dark blue is for no influence and red is most

influence (in this case yellow is the color that represents most of the influence in the mesh).

Figure 28

Page 45: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

45

Weight paint mode works the same as a texture painting, but instead colors the painting is

on the influence for the bones. The influence must be painted and work for all the bones or

the animation would display incorrectly.

In Figure 29 we can see a quick pose before animations for testing purposes

Figure 29

Page 46: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

46

The facial rig

The facial rig was one of the most difficult and challenging task that was made for this

project.

There are many ways to make facial rigging in blender but the most common are:

1. Using BlendShapes, Shapekeys and drivers: these options in blender stores a group of

vertices, the objective is to move manually the expressions for the six basic emotions-

anger, happiness, surprise, sadness, fear, and disgust to illustrate this emotions

humans move the eyelids, mouth and eyebrows. Then they can be stored in a driver

animation that interpolates the movement of the expression. This method was tested

but difficulties came up for when importing into unity and some animations were not

shown up.

2. Using bones: with the metarig described previously we use the widgets to create

facial expressions keyframed manually as seen in the Figure 30

Figure 30

Page 47: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

47

The controls are organized with rig layers of the face are:

1. The Head bone which its parent of all the facial features.

2. The JawLine Bone which controls the mouth http://i.imgur.com/JBk1jtm.gifv

3. The primary facial controls that controls the lips, nose, lower cheeks eyelids and

forehead http://i.imgur.com/YyVp3dx.gifv

4. The secondary facial controls that controls the brows, the upper cheeks and the

double chin and slightly nose and lip features http://i.imgur.com/hmLowB7.gifv

Combining all the layers, facial expressions and deformations can be made as seen in Figure

31.

Figure 31

Page 48: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

48

The facial expressions are covered but what about the eyes and the teeth? The eyes are

spheres that are separated from the model and act independently from the face but still is

child of the face to controll traslations and raotations of the head the pivot of the bone has to

be aligned with the center of the sphere so the movement is correctly, additionally the eye

movement creates the efect of fleshy eyes, where the lid and the lashes move along the eyes:

http://imgur.com/gMSn9yJ

The big widget highlighted with blue in the previous gif, controls the two eyes simultaneously,

the two circles inside is to move the eyes independently.

The teeth and the tongue works similar as the eyes, there are two separate meshes but the

difference is that the teeth translates at the same time as the jaw and doesn’t rotate as the

eyes. A solid version can be seen in Figure 32 and wireframe version in Figure 33

Figure 32 Figure 33

Page 49: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

49

Animation

Now that the rig is complete with all the custom bones and movement the animation has to

be completed, since we don't have a mocap or cameras to get animations, keyframed

animation is used.

As mentioned before, animation is only a collection of poses that are interpolated, this gives

the illusion of movement. Since the animations of this project are not too much complicated

it was created for each model 4 animations making a total of 8 animations, that are: Idle, Idle

2, LookItself and Pose, the animations are stored as actions in blender, and Unity separates

the actions as takes for the animator controller.

● The idle animation is the default animation that is going to be shown

● The idle 2 animation is going to be shown when time to time mixed with the idle

animation

● The LookItself animation is going to be shown when the model changes. The next gif,

shows the male model Look Itself animation: http://i.imgur.com/M4L2tz0.gifv

● The Pose animation is going to be selected by the user to show the character unique

pose. This makes the character more believable.

With this the asset creation pipeline described at the beginning of this section has been

made. The models are ready to be imported to a game engine like Unity. The models are

exported with the .fbx extension files.

For the project some pose animations were made so the characters don’t feel like they are

dull or stiff, for this, curves on the animation are used keeping in mind the flow and the rhythm

of the figure like in Figures 33.1 and 33.2, keeping these to concepts adds life and dynamism

into the figures, and are used to lead the eyes towards specific lines, contrasts shapes and

Page 50: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

50

forms, making easy to follow and way more interesting. The red lines shows the Flow of

the figure and the blue ones the rhythm.

Figure 33.1 and Figure 33.2

2.2.2 Hair and clothes

Hair and clothes are way less complicated than an organic human body. The pipeline used is

similar as described the previous part. Persevere the steps of assets production pipeline is

Page 51: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

51

very important, because 3d modelling is a very destructive method that only works

overwriting existing work. This matter is dealt in depth in the conclusion section.

The Figure 34 shows the process of

making the hair:

In blender a base sphere is added

and its scaled where we want the

hair to be placed.

In sculpt mode in the 3D view toolbar

it's enabled the Dynamic Topology.

With the dynamic topology, most of

the sculpting brushes subdivide the

mesh where more details are

needed. Figures 34, 35 ,36 and 37

show the process.

Page 52: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

52

Figure 34 and Figure 35

Figure 36 and Figure 37

Of course a low resolution model is needed for Unity to draw it frame by frame so a

retopology is performed by hand with the snap tool to the closest face. The snap tool as the

name indicates, “sticks” the vertex to the highpoly surface. Why this is needed and not any

other mesh? This is for baking details purposes. The rays that hit the baking tool must be

precise to get good looking details. Most common problems of baking is incorrect baking of

the meshes because the rays hits the wrong direction or not targeting correctly the mesh

resulting in a bad visualization texture errors.But before baking normal maps, Uv seams must

be placed before. The Figure 38 describes the process of retopology from top to bottom and

left to right.

Page 53: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

53

Figure 38

Figure 39

Page 54: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

54

For the texturing, there was no need for color textures since a shader was going to be

used, instead a grayscale value, similar when baking a ambient occlusion map is painted.

Then in the shader the grayscale texture is blended with the color. Figure 39 and Figure 40

shows the long hair map

Figure 40

Texturing hair and clothes is planned to have lots of textures, but this would result a problem:

given the case of for example 15 hairstyle, and each hairstyle has its own texture then in Unity

is necessary to create 15 Material and load them in the application. This has high

computational cost and is less effective, but there is a method that is often used for texturing

environment which is used in this project: Texture Atlas.

A texture atlas is a large image containing a collection of textures, this method is way more

efficient. Loading one material with a 2048x2048 texture size stored, is more efficient than 15

materials with 512x512, because the graphic hardware treats the texture atlas as a single unit.

For this project, there are four texture atlas: one for each gender collection of hair, and two

atlas maps for the cloth, chest and pants. Texture atlas must be unwrapped most uniformly

possible.

Page 55: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

55

Creating texture atlas

Blender has a free official addon named Texture

Atlas, this addon as it’s name indicates is for creating

and baking texture atlas. The steps for creating the

texture atlas are:

1. First we import in a file our models each one

with different materials assigned and each

model has its own texture

2. Then, a texture atlas is added as seen in

Figure 41. In this case we have the models

shirt_01 and shirt_02 in the outliner and in the

properties panel we have created the

male_shirt_atlas

3. Specify the size of the texture atlas

4. Start Manual unwrap

5. Unwrap the two models into one UV texture.

As shown in Figure 42.

6. Finish Manual unwrap

7. Bake the textures in the Bake tab (Figure 41)

8. Delete the unused material and assign a

unique one material for shirt_01 and shirt_02

9. Export to unity the material and textures

Figure 41

Page 56: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

56

Figure 42

Besides the albedo and the normal map, there is also a anisotropic highlight map, usually

known as comb map. This map y hand painted where the highlight flow with this method:

1. First a cone map with normal map is needed, like shown in Figure 43

2. With the clone stamp in Krita, the normal cone map is sampled and painted over the

area we want to be highlighted.

3. Final result of the map is shown in Figure 44

Page 57: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

57

Figure 43 Figure 44

The figures shown previously shown basically the same pipeline for clothes and male hair so

this can be considered a repetitive task in a way, but the thing is in this project the variety and

modularity is key so this process is compulsory.

The work done for 3d modelling has covered roughly near 200 hours and covers most of the

project work, this is a very important step before working on the application.

Page 58: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

58

2.3 Development of the application in Unity

2.3.1 Analysis

In this section it will be shown the analysis for the development of the project. Here it will be

explained the methodology and the functionality.

2.3.2 General vision of the application

Unity 5 game engine was the preference to take this project. The language used is C# for the

scripting, the reason is only a matter of preference, because javascript and C# API in Unity

works the same way.

Before getting on the application, what does the user can change from the character?

In the technical proposal is established that the body, the face, clothes and genre,

environment and lightning. In this project it can be changed the eyes, clothes genre

environment and lightning. In the project we haven’t included the body and face changing

because of the different meshes that would contain, resulting into store lots of complex mesh

faces, and a time consuming task.

2.3.3 How does the application work. Functionality

The functionality will be described with use cases and represents all the functions that the

system does. Mostly is how the UI interacts with the user.

Page 59: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

59

UC01- Select female

Description Switches to female model

Related UC02

Steps 1.Open the application 2. Press female sign button

Precondition Male model is active

UC02- Select male

Description Switches to male model

Related UC01

Steps 1. Open the application 2. Press male sign button

Precondition Female model is active

UC03- Select daylight environment

Description Switches to daylight environment

Related UC04

Steps 1. Open the application 2. Select daylight button 3. Disables daybreak button

Precondition Daybreak is disabled

Page 60: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

60

UC04- Select daybreak environment

Description Switches to daybreak environment

Related UC03

Steps 1. Open the application 2. Press daybreak environment button 3. Disable daybreak environment button

Precondition Daylight is disabled

UC05- Selecting skin tone

Description Selects skin tones for the character

Related UC01, UC02

Steps 1.Open the application 2.Select skin tone

Precondition None

Comments There are various skin tone colors

UC06- Show Head Panel Details

Description The button shows the right panel details

Related UC07, UC08

Steps 1. Open the application 2. Click the head button

Precondition None

Comments This is part of the centered buttons

Page 61: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

61

UC07- Show Chest Panel Details

Description The button shows the right panel

Related UC06, UC08

Steps Open the application Click chest button

Precondition None

UC08- Show Leg Panel Details

Description The button shows the right panel

Related UC06,UC07

Steps Open the application Click leg button

Precondition None

UC09- Change Eye hue value

Description A slider which changes the color of the eye

Related UC06, UC10, UC11

Steps Open the application Select head button

Page 62: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

62

Hide leg button Hide arm button Change slider

Precondition Select head button

Comments User must click and drag

UC10- Change Pupil size

Description A slider which changes the pupil size

Related UC06, UC09, UC11

Steps Open the application Select head button Hide leg button Hide arm button Change slider

Precondition Select head button

UC11- Change Cat Eyes

Description A slider which changes catlike eyes

Related UC06, UC09,UC010

Steps 1. Open the application 2. Select head button 3. Hide leg button 4. Hide arm button 5. Change slider

Precondition Select head button

Page 63: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

63

UC110- Change Face Slider

Description A slider which changes a feature of the face

Related UC06, UC09, UC11

Steps 1. Open the application 2. Select head button 3. Hide leg button 4. Hide arm button 5. Change slider

Precondition Select head button

Comments There are various sliders that can change the nose, the bridge and the lips.

UC12- Change Hairstyle

Description Switches hairstyles with two buttons

Related UC06, UC13

Steps 1. Open the application 2. Select head button 3. Hide Leg button 4. Hide arm button 5. Select Left or Right button

Precondition Select head button

Comments There are two buttons, left and right button

UC13- Change hairstyle color

Description Switches tones of hairstyles

Related UC06, UC12

Page 64: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

64

Steps 1. Open the application 2. Select head button 3. Hide Leg button 4. Hide arm button 5. Select Tones

Precondition Select head button

Comments There are multiple colors to change

UC14- Change Leg Cloth

Description There are two buttons that switches cloth panels

Related UC06, UC08

Steps 1. Open the application 2. Click leg button 3. Select left and right panel

Precondition Select leg button

Comments There are two buttons, left and right button

UC15- Change Chest cloth

Description The button Shows the right panel to change the clothes regarding to the chest

Related UC06,UC07

Steps 1. Open the application 2. Click chest button 3. Select left and right panel

Precondition Select chest button

Comments There are two buttons, left and right button

Page 65: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

65

UC16- Take screenshot

Description Takes screenshot of the scene and stores it in a folder

Related UC17

Steps 1. Open application 2. Select camera button 3. Takes a shot 4. Saves it in a local folder

Precondition None

Comments Shots are 1920x1080 pixels size, The UI doesn't show in the final shot

UC17- Hide UI

Description Hides the UI

Related UC 16

Steps 1. Open the application 2. Select Eye button 3. Hides UI

Precondition UI is showing and active

The application shows the main scene a female model with pale skin and a daybreak

environment by default.

At first there is shown one left UI panel, at the top with four buttons and a palette of colors, at

the bottom a brief description of how the editor is used.

In addition there are four floating buttons which are near to certain parts of the human body

which have further interaction with the user.

Page 66: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

66

The main buttons that are seen on the left panel are the male and female symbols, which

are represented with Mars and Venus symbols from Greek and Roman mythology. These

buttons switch between female and male models.

The reason why the skin tones are shown in the left panel and not in the right one because it

is considered as the skin tone a general feature and not a specific feature like the hair, the

eyes or the clothes.

The skin tones are represented by squares with a color, the model changes it’s skin tone

coinciding with the color [15].

Finally the other two buttons that are represented with a daybreak and daylight changes the

environment lightning and mood to make the character more believable existing in a scenery

and not in a plain and dull background context.

A floating button is considered as the ones that aren't on the right or the left panel, there are

represented as a rounded button and they are the nearest to the model character. There are

four buttons for the character: Head, Arm, Chest and Leg. When one of these buttons are

clicked by the user a right panel appears with details. The right panel is divided in two with a

top panel and a bottom panel by 50%

● Head button: In the top panel, three sliders appear which changes the Eye Hue, Iris

Size and make Catlike eyes. In addition there are two buttons that change the hair. In

the bottom panel there a color samples.

● Arm Button, Chest Button, Leg Button: when one of them are clicked the application

shows at the top panel two buttons the same as used in the hair, to switch clothes.

As the name indicates, the chest changes the shirt, the leg changes the pants and the

arm changes the bracelets.

Page 67: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

67

2.3.4 Programming: Scripting

The main programming of the application is the interaction user and the interface, and the

shader programming.

There is a main script named CharacterManagerthat manages the meshes and the textures

stored in arrays. It is assigned in an empty gameobject in Unity hierarchy and is called by the

buttons, which are child of the canvas. This script manages shirt, hair and pants meshes and

it’s called by the central buttons.

There are several important scripts than are called by the sliders. These scripts are:

● EyeManager Changes the sliders Iris Hue, Iris Size, Catlike Eyes

● BlendShapeManager Changes the rest of the face sliders

● BodyChanger Changes the body parts of the sliders (Hips, Hands, Thighs…)

Finally the other scripts are ToneSelectionwhere is used on the hair and the skin, and it  

can be reusable for other colored pieces. With the skin there are textures swapping and the

hair is a shader color material swapping, using the function mat.color =    

hexColor(R,G,B,A).The function hexColor converts RGBA numbers to values that go  

from 0 to 1. TakeScreeenshot takes a screenshot of the scene, without the UI.

The rest of the scripts controls animations (PanelAnimation) and UI(ChangeButtonState).

2.3.5 Programming: Shaders

The shaders in unity are scripts written with cg/HLSL that is written in a variant of HLSL. Since

the project pursues a stylized look a custom Toon Shader is used. The shader receives

mathematical algorithms that changes the visualization of the model.

For the toon shader uses

● Base texture color which is assigned with UV coordinates,

Page 68: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

68

● Normal map for showing the details of the model, sharing the UV coordinates with

the base texture

● Ramp Texture: The ramp texture is a custom hand painted gradient where the lightning

follows the illumination.

● Rim Light: with Rim Color and Rim Intensity. Rim light highlights the edges of a

surface based with the normal maps

● Anisotropic texture map, usually known as comb map. Shading that stretches

reflections and highlights in a direction that runs perpendicular to the grain or grooves

in a surface. Contrast anisotropic shading with the more common isotropic shading,

which scatter light evenly in all directions. Figure 45 and Figure 46 shows how the

light works.

Figure 45 Figure 46

Page 69: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

69

Eye shader

The eye shader is procedural shader that is included in Substance Painter. When texturing the

model, the eye texture setting where established and exported in a .sbar format, also known

as a Substance Material ™

Later is imported to unity and assigned it to the eye meshes where the UV maps have been

placed precisely to get a correct visualization. Then via script, access to the Substance

Material™ and assign it to the correspondent sliders. In Figure 47 shows the base texture that

is modified.

Figure 47

The rest of the shaders that are shown in Unity are Standard materials that are in Unity by

default.

2.3.6 Lightning and environment

The environment is Unity’s Terrain and painted with tiling ground textures that were made with

Krita. In unity’s terrain there can be placed vegetation as painting over it. The trees are made

with Unity’s Tree that can make procedural trees adding the leaves and the bark material. and

the grass was hand-painted in Krita. The grass image that works the same as an alpha

texture. Then is imported to unity as seen in Figure 48 and wind factor is applied and the

illusion of grass in movement is done. Leaves as seen in Figure 48.1 were hand-painted in

Krita.[16]

Page 70: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

70

Figure 48

Figure 48.1

Page 71: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

71

Skybox is also an asset store free, the reason that Farland Skies was chosen it’s because

the stylized nature that fitted so well into the project. Figure 49 shows a part of the Daybreak

skybox.

Figure 49

Nearly 80 hours were spent on this block of programming and developing the application in

Unity. The rest of the hours were occupied on the production of this report.

Page 72: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

72

Chapter 3: Results In this chapter it will be shown screenshots and scenes that are in the editor. Additionally at

the end of the chapter, a video showing most of the results is provided. Figure 50 shows the

start scene, the first thing the user can see.

Figure 50

Page 73: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

73

Figure 51

Page 74: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

74

Figure 52

The application runs smoothly and as shown in figure in Figure 52 a variety of characters are

made. All the changes are made in real time and the characters change expressions and

poses. In Figure 51 there are the sliders that change the facial features.

Video download with the results of the project:

https://mega.nz/#!pBACXIYb!H2qfNfWT6fPFB1esV87k5nThk2GoaIVD-QZdnkYAkyw

Page 75: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

75

Chapter 4: Conclusions In this chapter of conclusions there will be discussed different points of the project and how

these have been affected over the time.

4.1Game Engines and Unity

Lots of times I read opinions that Unity is not a game engine with the graphic level of Unreal

Engine 4 or CryEngine, even Unity follows a different PBR system that other game engines

have, Unity doesn't fall short related to graphics.

Some investigations were made at the beginning of the proposal, Unreal has far more

possibilities on graphics that Unity hasn’t. For example a visual shader editor and more

possibilities, otherwise Unreal has a high learning curve and it would surpass the hours of the

project.

Nevertheless that doesn’t mean that Unity can’t create shaders, in their documentation Unity

offers a initial guide for shader programming. This documentation was very important for a

great part of the project: shader programing is a very important point for the aesthetics of a

videogame, the possibility to change calculate mathematically how the light is going to react

a surface and derive from well known models like Phong and Blinn shading.

In our case a Toon shader was needed for the stylized look. In the documentation there was a

startup very simple shader and then modifications were made. With this Unity has left me a

great experience about shader programming, since UNity’s last beta version (5.4) has a great

graphic performance.

4.2. Modelling 3D game assets

Our tool of preference is Blender, mainly because is a free open source program, the

alternative 3D software modelling programs would be a rather expensive license. The only

Page 76: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

76

licensed program we dispose is Substance Painter, we considered that is was time saving

for texturing and focus more on the application.

3D modelling is often considered an easy or repetitive task, but 3D modelling focused on

video games is something far more complex than simply adding polygons and apply

materials. Technical knowledge is needed for the models to be optimal displayed at the

screen. Lots of doubts appeared when I started modelling: How many polygons should my

model have? How do I organize textures? How many details should my model have?

In this case there is no steady answer that can be applied to most of the cases different from

a pathfinding algorithm, for example.

For this project my work was based on other video game artists of the industry that post they

work online and generate a breakthrough process, like how the model's topology is distributed

or how are organized texture sets.

In any case, the real challenge for making 3D game assets was the rigging and the animation

part. As it was mentioned before, the 3D assets pipeline is a very destructive process. All the

values and keyframes of the animation are lost if the mesh’s origin, scale or topology are bad,

and causes to the artist to make all over again. So, planning how the 3D pipeline is going to

work through the model is very important or it will cause great loss of work, and time.

4. 3. Shaders

A shader’s job is to take the model and render it to the screen with properties and it will be

affect what's is displayed when the mesh is rendered. There are different types of shaders:

there are Surface Shaders which can be great in performance and Fragment Shaders the

main difference is that Surface Shaders don't need a Vertex function to render, which need to

do more work on the information of the pixel part.

Page 77: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

77

So the surface shader was the shader that best fit in the project, with a surface shader

there can be made multiple subshader passes where we can actually combine a Toon Shader

and Anisotropic highlight shader.

4.4 Changes from the technical proposal

This project has suffered some changes and in this section will be explained the motives.

4.4.1 OBJ/.DAE/.FBX exporter

One of the objectives of the projects was that it can be exported the models for 3d artist make

further animations. Investigations on this aspects were made and this wasn’t a light task. This

faced some problems like:

● Exporting assets in general from Unity requires mostly to do it from Unity editor, and

not from the application.

● .FBX format is free since 2005, but the library is written in C++

● .FBX format files are Autodesk’s proprietary and it’s needed a third party library. Only

Unity Editor has a FBX importer, Unity can’t create .FBX files since Unity isn’t a

modelling tool.

● The same applies to the other formats .OBJ and .DAE. It’s not possible to create thing

for usage outside of Unity, unless we code explicitly the exporter which would add

excessive hours on our project.

With this points pointed out, it is concluded that Unity Editor is a Tool for making games and

it's not meant to actually create assets,

4.4.2Number of assets

This it was expected as this is a risk, most of the time was put on animations and facial rig.

Only for clothing assets were made, and four more for hairstyles.

Page 78: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

78

4.5 General conclusion of the application

The hours spent on the project are more or less the same as described at the technical

proposal. More hours were spent on animation and rigging as it is a complex task specially

facial rig was a new feature that has to be learnt. The less time consuming task was the post

process effects for the camera. Anti Aliasing, Bloom, Color correction, Tone Mapping and

particles, in this aspect Unity has some predefined script for post processing being able to be

customized and get the effects and results we want.

In general I’m satisfied with the project and all the hard work I have spent in it. I would like it to

push it further in a future, creating more meshes and getting more effects and environments.

I’ve learnt so much on modelling and general good looking visualization to be pleasent with

the eye. This project was in my mind from a long time and I’m glad I could finish this.

Chapter 5: Annex and bibliography

[1]"3d Modeling & Rendering Software | 3ds Max 2016 | Autodesk." 3d Modeling & Rendering

Software | 3ds Max 2016 | Autodesk.

[2]"Art of Samwise — Art of Samwise." Art of Samwise — Art of Samwise. Web.

[3]"Champions." Champions.

[4]"Cloud Strife/Dissidia." Final Fantasy Wiki. Web.

[5]"Ekko, the Boy Who Shattered Time - 3D Model DL." By LoL3DModels on DeviantArt. Web.

Page 79: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

79

[6]"FINAL FANTASY XIV Promotional Site." FINAL FANTASY XIV. Web.

[7]"LLEU." LLEU. Web.

[8]"Lightning (Final Fantasy XIII)." Final Fantasy Wiki.

[9]"MakeHuman | Open Source Tool for Making 3d Characters." MakeHuman | Open Source

Tool for Making 3d Characters.

[10]"Overwatch." Overwatch. Web.

[11]"Star Guardian Lux - 3D Model DL." By LoL3DModels on DeviantArt. Web.

[12]"Substance Painter." Allegorithmic.

[13]"Blender.org - Home of the Blender Project - Free and Open 3D Creation Software."

Blender.org. Web.

[14] http://i.imgur.com/hYvDdPk.gifv

[15] http://i.imgur.com/pCUE0l5.gifv

[16] https://www.youtube.com/watch?v=u79ECvR6J8E&feature=youtu.be

"ArtStation." ArtStation. Web.

"Asset Store." Asset Store. Web.

"Cg Programming/Unity." - Wikibooks, Open Books for an Open World. Web

"Gamasutra: David Leon's Blog - Next-Gen Cel Shading in Unity 5." Gamasutra Article.

"The Polycount Newsfeed." Polycount. Web

"Shader Part 1." UnityGems. 16 July 2015.

Page 80: Universitat Jaume I - Video game Design and Development Degreegiant.uji.es/montoliu/docs/pfc/MEMORIA_OxanaVorobiev… ·  · 2017-01-17Universitat Jaume I - Video game Design ...

80

Sketchfab. "Sketchfab - Your 3D on the Web." Sketchfab. Web

Williams, Richard. The Animator's Survival Kit. London: Faber, 2001. Print.

"Writing Shaders." Unity. Web

“Rigify and Blender” Unity. Web


Recommended