Study Journal Lei Yu
ITGM 755 - Interactive Design and Game Development
Studio I
Fall 2012
Professor Josephine Leong
Week 1(September 10 -16)
Project proposal
This week I need to find out three interesting topics for doing my thesis. Lighting and Texture are my favorite part. I
also start some Unreal game project these days. By doing Unreal project, I realized the lighting system in Unreal is
quite different with Maya. I want to go further in game engines., so I think start dig the lighting system or the lighting
methods is a good direction.
Three ideas:
1. The Unreal Engine does not calculate bounced or ambient light, and so you need to use tools to simulate these
effects. Consider my background; I have lots of experience and tricks to do good render for animation films. I think
for dig more about Unreal Engine, I might be find something that already done in animation or visual effect but not
have been done in game. A combination of the two will be a good topic.
For doing this research I need to get involve in Unreal first. So I am planning to start from the Unreal lightings, then
the way of simulation bounced or ambient light in Unreal. After doing this, I hope I can figure out some branch they
are not done in Unreal. At last I will create an environment for this project.
2. Unreal Engine is a very power tools to use, but the working process is quite different with animation films. For
learning and working with Unreal Engine, I think maybe there are many people like me, who is not familiar with
game process. Working through the process, I will get better work flow with the game process. To research and
compare with others work flow, make the summary and analysis, might be get a good work flow process.
3. Unreal generates light maps and shadow maps for all objects and lights that do not move during gameplay. It also
has dynamic shadows for moving things. I am interesting for these shadow maps and want to explore more about
these shadows in the game. These topics seem need to start with basic technique of engine.
Week 2(September 17 -23) Proposal
This week I need to start research different ways to simulate bounced or ambient light in Unreal. Like ambient
occlusion. I also need to get in to Unreal Materials. After doing research, hope I can narrow done my first topic and
get some specific points.
Check point 2
Week 3(September 24 -30)
It seems a lot of work already done in the area and they got very good effect. I got some new ideas from the
professor, such as object reflect, and sky light, bounced with the object. Also the light in different weather condition.
I will keep on dig my first ideas then from lightmass, then post process this week. Hope there’s some new things.
Then create a new simple level to experiment these techniques.
This weekend I finished a small level and start to explore the lighting system in Unreal. The light and fog is very
powerful. Just easy to place then you can get a good result. The light shows good behavior for general things.
However, when get into details it has big issue. When I add new light for center area, it seems this light also
illuminate other area. So the lighting area becomes an issue. Unreal light has the radius to control the illuminate area,
but only for the point and spot light. (Can I change the radius shapes, it will gives more control about the light)
For different lights, the functions are different. The sky light and directional light is different with spot and point light .
Sky light and directional light seems like ambient light, it will fade everything in the scene. ( Lighting scenario for use
sky light and directional to illumined both indoor and outdoor)
For doing this small levels, I think the lighting in unreal is very powerful but the controls is a little weak. There are
few light options, and the point light is the most important light in unreal. Right now each game, seem place many
point lights and use the radius to control the light area. I think there ’s better way to balance ambient light as global
illumination to lit the game not just place many point light.
Statement and Abstract
Human characters are often represent how stylized and realistic the games look. With the good materials, textures
and modeling help, the lighting plays the largest role of all. There ’s several ways to tweak things to make character a
better look.
Implementations of a Rim Lighting for characters can vary dramatically enhance the character performance in the
game.
Create an Optimization lighting scenario
Week 4(October 1-7)
This week I start to do shadow testing and different shadow map calculate method. Each light that strike a static
mesh, a separate shadow map must be generated, and the final result is to combine all this shadows. The potentially
decrease game performance by relying too heavily on this method.
The shadows from different lightings
The shadow cast by the light is only visible when the camera is within a certain distance from the object itself.
Directional light, the shadow is stored as imagine. Like trace shadows have blur edge. It seems calculate alpha
channel for the shadows.
Sky light, the default setting for cast shadows is unchecked. Compare with checked this and unchecked, the shadow
result is the same but when cast shadows checked, the scene is dark than unchecked. It seems the sky light does not
cast shadows.
Check Point 3
Week 5(October 8-14)
This week I work on my thesis statement and abstract. List below is my statement variation.
Statement
Human characters are often represent how stylized and realistic the games look. With the good materials, textures
and modeling help, the lighting plays the largest role of all. There ’s several ways to tweak things to make a better
look.
Implementations of a Rim Lighting for characters can vary dramatically enhance the character performance in the
game.
Abstract
Rim lighting is a technique most frequently used on dynamic objects and characters in order to better define the
object(s) silhouette and separate it visually from the surrounding environment. It represents the back angle lights
that typically use in a standard 3 point light setup (Key, Fill, Back-light). Create a Color Rim Lighting for characters
allows to change the character’s color values based on the reference of how light reacts to color values. Darker values
absorb the light and higher value colors bounce the light creating more rim lighting which allowed the bloom factor of the
PostProcess to be more settle.
Week 6(October 15-21)
I talk with professor about my proposal of the way to enhance the character lighting in real-time. I might have
several possibilities to do this.
1. Build a character pipeline
2. Goes to the art direction, I can use different lighting or ways to create the same effect. Discuss them and
compare them and give the result of advantage or disadvantage.
3. Build own custom light, to change the character lighting or texture properties to give the character interactive
with the different environment.
The way to do this is to write the lighting information in to shader. So this week my research will be focus on the
technique. Such as how does the lighting and texture work in Unreal? Then I will move on the shader and
texture.
Check Point 4 This weekend the professor recommends the game Team Fortress 2 to me. In this game the designer play with the
shader and built out a Non-photo realistic rendering techniques. They use material editor and use the custom
lighting channel to bake the lighting and color information on the material. It’s kind of pre-set the lighting
information in the characters. There are several potentials to dig this method. Use the blend mold to blend several
textures together. Then use a way to control which texture to show in the final render result.
Final thesis proposal
For my final thesis direction, I want play with the lighting and material in unreal. So I choose the third way to doing
my thesis. I can use the material editor and the kismet (UScript) to create a changeable texture system for the game.
It’s a dynamic shader system for the real time, such as when the player interactive with the environment, the texture
can be changed depend on the situations. (Fire, water, combat damage)
My focus is character’s cloth effect. My purpose is trying to manually setup expressions and parameters for materials
with UScript or Kistmet in real-time, outside of the materials editor. My goal is to find the possible way to create new
expressions which can define material’s values, and texture information. These expressions need to be considering
several parameters such as time, distance and the persistent character damage. When the player interacts with the
environment, these expressions will control to show which texture will be render in the final result. It has a dynamic
visual result for the player.
Week 7(October 22-28) Feedback about the visual component
Need more information to support why doing this thesis. Add more information for case research. Like in real games
the current situation for this and the ways to do deal with this. Give the proposal for my way.
Make the example simple so it easy to see the effect.
Add more variations for materials, to show different material has different result.
Thesis paper outline process
For writing my thesis paper, first I need to find out the purpose and importance for doing this thesis. Why dynamic
shader system in real game is important? The first part of my paper is to discuss the reason and meaning for doing
this paper. Firstly I need some theory or real game case with dynamic shader system in games. List the advantage of
dynamic shader system and how they enhanced the game experience.
The second part of my thesis paper will be the general research for dynamic shader system in games. This can be
separate into two parts. The first part is the types of dynamic shader in games. The second part is the way how they
make the dynamic shader system in their games. The last part of my thesis paper is my way to create dynamic
shader system. The first part is the general modes of my shader system. The second part is the detail case for how to
create my shader system. Then the third part is to discuss my shader system. (Is this workable in the real game?)
Visual Component
This week I start to do my visual component. I use a download game model to do the testing. I created two versions
of clothes. One is new the other have some dirt on the shoes and weapons. I use maya to assigned the shader
network, then made the FBX file to bring it in to UDK. Here is the look of my character.
Week 8(Oct. 29-Nov.4)
Dynamic shader system in game
Currently we have to place all the material expressions in the material editor. The texture information is preinstall in
the material editor.
The common way used in current game:
Material Instances
Using Scripted Textures (render anything to a texture using the Canvas functions, which can then be used in a
material)
Scripted textures allow arbitrary drawing to a texture during runtime from UnrealScript. This drawing is done through
the use of a Canvas and the functionality it contains. This means text, materials, other textures, etc. can all be drawn
to the scripted texture.
Visual Component
This week I use Maya created a simple cloth plane. I am play with the texture map such as normal map, specular
map, diffuse map, displacement map and transparent map in Maya. I increased the dirt level to demonstrate the
appearance different level of damage of the cloth whiles the character in game. I use the transparent map and the
displacement map to demonstrate the damage of the cloth.
Check Point 5
Week 9 (Nov5-8)
The dynamic shader in the game is not new. It is very common to see in the particle system. This week I start to
research some math mode for create dynamic materials.
Thesis variations
A changeable appearance for the character will add interesting and dynamic experience for player.
Persistent character change can be used as a narrative or gameplay in game. A character dynamic shader system
allows changing the character’s appearance during the game run.
A character dynamic shader system allows to change the character’s appearance while the player interactive with
different environment. It will add interesting and dynamic experience for player.
Outline
Introduction
An Introduction to dynamic shader system
What is the dynamic shader system in game
How does dynamic shader system enhance the game experience
What’s missing in today’s dynamic shader system, especially for the character
The importance and benefits of character dynamic shader system
My thesis goal of create a new dynamic shader system for character
The dynamic shader system in today’s game
A brief history of dynamic shader in game
The common way for doing dynamic shader in game
The problem and missing in game character by using today’s methods
The existing solutions and evaluation (a review of existing solutions about the strengths and weakness)
The design goal of my character dynamic shader system (describe how my shader system can overcome the
strengths and weakness in today’s methods)
The new character dynamic shader system
The concept of the new character dynamic shader system
Methodology
Methods
Design process (prototype, break down for built the shader system)
Final result and test ( Analysis and evaluate for the final result)
The potential of using this character dynamic shader system in game
Conclusion
Summary the character dynamic shader system and it contribution
The future plans about improving and accomplish the shader system
Visual Component
In the game the player will be interactive with different elements such as fire, water, sand, dirt. Considering
character’s clothing will have different level of damage of change. The procedure texture can be used to create the
noise for the material. For example, it can be used for bloodstain, dirt. It also can use as the transparence map to
control the materials opaque. This week I play with different materials. I photo several objects as my reference. I
want to use simple texture or procedure texture to recreate them in Maya. My goal is to use simple procedure
texture to simulate the real word material.
Procedure water noise test
Procedure Patten and color control test
Use simple noise procedure to simulate the brick. Mix the color and add the noise on the brick. Also test the patten
control for the procedure texture.
Procedure Patten and Color control test
Use different procedure textures to create two different materials in one shader. Then use the other procedure
texture to control the color and add noise. Blend those two material in one shader and use another procedure to
control the opaque.
Week 10
Final Statement, Abstract, Outline update
I. Introduction
1. An Introduction of dynamic materials and shader in game
2. What is the dynamic shader system in game
3. How does dynamic shader system enhance the game experience
4. What’s missing in today’s dynamic shader system, especially for the character
5. The importance and benefits of character dynamic shader system
6. The thesis goal for creating a new dynamic shader system for character
7. The benefit of the new shader system and how they enhance the game experience
II. The dynamic shader system in today’s game
1. A brief history of dynamic shader in game
2. The common way for doing dynamic shader in game
A. Material Instances
B. Scripted texture
3. The problem and missing in game character by using today’s methods
4. The existing solutions and evaluation (a review of existing solutions about the strengths and weakness)
5. The design goal of my character dynamic shader system (describe how my shader system can overcome
the strengths and weakness in today’s methods)
III. The new character dynamic shader system
1. The concept of the new character dynamic shader system
2. Methodology
A. Methods
B. Design goal (Using multiple textures per material and make it changeable during the play)
C. Design process
D. Prototype and Flow chart of the shader system
E. Break down for built the shader system
3. Final result and test
A. Analysis
B. Evaluate (Compare with other methods and list the advantage)
4. The potential of using this character dynamic shader system in game
IV. Conclusion
1. Summary the character dynamic shader system and it contribution
2. The drawback of this system
3. The future plans about improving and accomplish the shader system
Statement
A character dynamic shader system allows to change the character’s appearance while the player
interactive with different environment. It will add interesting and dynamic experience for player.
Abstract
The character signified by their clothing, appearance and weapons. However, when the game starts
these features is stable. Persistent character change can be used as a narrative or gameplay in game. In some games, characters gain different look as the game progresses. Other times, character
interactive with the environment or combat, these will cause the change of character health. The
characters may show visible wounds or appearance change during the game.
Currently we have to place all the material expressions in the material editor. The texture information
is preinstall in the material editor. My thesis will be working on the way to control the preinstalled
texture during playtime. The purpose is trying to manually setup expressions and parameters for
materials with UScript or Kistmet in real-time, outside of the materials editor. The goal is to find the
possible way to create new expressions which can define material’s values, and texture information.
These expressions need to be considering several parameters such as time, distance and the
persistent character damage. When the player interacts with the environment, these expressions will
control to show which texture will be render in the final result. It has a dynamic visual result for the
player.