Friday, November 5, 2010

Research Tutorial



The purpose of this tutorial is to explain and help familarize a new user to flowgraphs, to create basic actions that an AI character is able to perform using a key press.

Crysis Files

http://www.filefront.com/17479534/3292443_crysisfiles.rar

Latest version used : 3292443_exp02console.cry

C/O = makes certain characters perform an action.

Monday, October 11, 2010

Final Porosity Lens Video

Porosity Lens Brief

The concept behind my Porosity lens machinima is to demonstrate and observe people's movements through spaces which form an interaction between their surroundings and actions. Using the original train station model I have modified it by removing most of the train tracks platforms and simply mirrored a section of the railings to form a continuous structure. Half the structure railings have been stretched down and attached to a solid platform which will serve as the basis for the people's movement.

This was then mirrored and attached to create an identical structure forming a symmetrical space. The spaces shown highlighted in my sketch installation serve as the multiple different sections that the structure is divided into, using simple panels created in sketchup, the gaps in each section hanging overhead were covered using these panels and would appear using the ProximityTriggerOpacity flowgraph for my AI characters moving through it. The proximity triggers were each individually placed in the spaces of each section so when an AI character was present within that area, the panels would appear overhead.

The proximity triggers were tweaked to only recieve AI presence by ticking 'OnlyAI' to be true and 'OnlyPlayer' property to be false. This was done in order to only allow the AI movements to interact with the space and not be inteferred by the player. The structure itself was given a 4.8 value of glow in order to highlight the panels which had a dark material.

This effectively allows us to observe which sections of the structure are currently inhabitated by an AI character moving around the space. ALl movements and actions of the AI characters have been individually customize so that they continuously move around the structure in a looped pattern at different speeds and different positions.

When observing overhead or simply by viewing which panels appear, one can get a sense of the patterns and amount of time people spend in each space. The final result I believe portrayed this quite clearly, as the viewer is able to see the AI characters move around within the space and when entering different sections of the structure, trigger the opacity panel relative to that section.

Since this was quite clear and an easy to understand concept, I purposely did not add in text explaining my hypothesis because this would only distract the viewer from observing the actual interactions and movements shown in the video. Furthermore, with the added glow to the structure and dark panels I used a time lapse to display the movements of people and what interactions they had with the building as time passed by. Along with an overhead view of the structure, I believe this was an effective way to present how people move through space and how they interact.

Sketch Installation

The purpose of my sketch installation is to use the 3 rows highlighted, each square section inbetween the railings as a interactive space for people moving through. Each space will feature a panel hanging overhead in each section which will alter in appearance when AI characters are within that space. When looking overhead, one will get a sense of when there are people present within a space and can observe the patterns in which those people move in and out of those spaces.

File link: http://www.filefront.com/17479587/3292443_sketchinstallation.skp

Flowgraph Node Mastery

Flowgraph Node 1 - AIFollowSpeedStance
With some help from our tutor Jules, I was able to create a simple AI movement flowgraph for AI characters in Crysis by setting AI path points then linking them to the AI and a AISpeedStance node. Further research into the node allowed me to figure out what different numbers and stances used in the dialogue caused the AI character to perform.

Using the list of numbers found in the dialogue, I found they did the following:

0=Slow Walk
1=Walk
2=Jog
3=Sprint

Stances:
CombatAlerted
Combat
Relaxed
Prone
Stealth



I added in an AIIgnore node to the flowgraph and linked it to LocalPlayer so it was possible to use on characters that were naturally hostile to the player. Once I had mastered this node, I was able to create a multitude of characters in my level moving and reacting in different ways.

Using multiple AI paths, I have laid them out all throughout my structure in loops for each AI character present within the structure. All paths have been strategically laid out so that every section of the structure is passed through by the AI characters, triggering the panels overhead to appear. Each moving speed and stance of AI characters have been individually modified so that each characters movements are unique and all walk/run at different speeds.




Flowgraph Node 2 - ProximityTriggerOpacityChange

Further research into flowgraph nodes that affect the opacity of certain objects, I was able to use features taken from Jule's flowgraph on changing opacity of an object shown on http://benv2423-2010jc.blogspot.com/ along with the help of nodes taken from changing material glow using the ProximityTriggerChangeGlow flowgraph also shown on Jule's blog and alter it using changing values within opacity instead of glow.

With the use of proximity triggers, I was able to setup sections of my sketch installation in which the AI characters would enter and trigger the opacity of overhead panels. Using values ranging from 0-20 in the panel's opacity, I was able to link the panels to the flowgraph and proximity trigger causing them to appear whenever an AI character was present within the proximity triggers place below their section.

By using the values found within the proximity trigger properties, I have the options 'OnlyAI' ticked true while 'OnlyPlayer' ticked false. This made it so that only AI controlled characters present within the trigger area would cause the panels to appear in that section. As long as an AI character is present within that section, the panel would be visible.



Flowgraph Node 3 - AIExecute
I initially created an AIExecute flowgraph taken from http://wiki.crymod.com/index.php/Entity_Always_Facing_Player and tweaked it so, when attached to an AI character they would follow me like a squad mate. Then with the help of Jules, I was able to create my own flowgraph using the same properties but instead, added a AIExecute node which allowed me to customize the certain actions the AI characters would perform with a key press.

Adding an AIIgnore function linked to LocalPlayer entity was used for the flowgraph because it allowed me to attach the script to different models such as hostiles instead of friendlies to prevent them from attacking my player. Using the actions field within the AI:Execute node, this allowed me to customize many different actions for the AI character using a key press.



Video demonstration shows multiple actions being performed by AI using multiple sets of the same flowgraph nodes taken from my AI:Execute script. With the different sets, only key input and action within the ActionExecute node were modified which allowed different key presses to perform different actions.

In this case the keys listed did the following:

O = Yawn
L = Sitdown & Rest
K = Smoke

Flowgraph Research

Researching a simple action impulse node, I have managed to master the flowgraph successfully by mapping my own keys and further movements. In the experiment, I attached a flowgraph taken from http://wiki.crymod.com/index.php/Action_Impulse_Demonstration

This was attached to the model 'asian_truck' in sandbox 2. This added the function of making the truck move upwards in the world using a vector3 script whenever the 'h' key was pressed in game. I was able to further expand this using my own understanding of the flowgraph and mapped out my own directions for the truck to move in, adding in multiple nodes with the same properties, I altered the direction of the output for which the truck would be moved.


In addition to having the truck move upwards using the key input 'H', here is a list of key inputs I have added to the flowgraph:

H = UP
B = LEFT
L = FORWARD
J = RIGHT
N = DOWN

Since there only fwdDir, rightDir and upDir values found in the entityPOS node determining the direction of the entity, I used negative values within the vector3 scaling to make the truck move in the opposite direction of the list already given to me movements such as left, backwards etc. are possible.

Sunday, August 29, 2010

File Links

3D Google Warehouse Sketchup Model Link: http://sketchup.google.com/3dwarehouse/details?mid=3756dd84c14631e014e1ee13bf28c3ea

Crysis Files + Sketchup Model Link: http://www.filefront.com/17245458/3292443_crysis+sketchupmodel.zip

Porosity Film (Final Submission)



The final version of my machinima film documenting the physical effects of explosions on porosity. Edited and rendered in Sony Vegas Pro 9, Danny Huynh - 3292443.

Machinima Filming Mode

The mode I have chosen to create my machinima documentary on porosity is an observational mode. Reason why I have chosen this mode is because I think it best fits my concept of the effect velocity has on colliding objects in relation to the force of an explosion within the built environment. By including captions and subtitles while the video is playing, the viewer can read my hypothesis while viewing the film in order to help them understand the meaning behind it. Long takes are chosen for my clips along with different angles in order to allow an examination of the entire process that is happening within the documentary.

Ramps and Platform







The design I chose to model my ramps and platform for my experiment were to provide a high vantage point over the structure to provide a clear view of the stacked cubes surrounding the explosive barrels for when they go hurling into the sky. The ramps provide ground access on both sides of the structure and the platform is situated at the very top. The low cut railings allow the player to view what is happening below when the cars are traveling along the tracks and is also able to view the surrounding environment.



Video of my developed ramps and platform within my Crysis enviroment.

Developed Landscape



A video capturing my developed landscape of my Crysis enviroment for 'The physical effect of explosions on Porosity' experiment. Edited using Sony Vegas Pro 9 with the use of transitions and titles.

Sandbox Experiments









An interesting idea I have discovered in Sandbox Editor, using the rope constraint tied to a moving entity, I was able to create a 'slingshot' of sorts where if I grabbed hold of a barrel tied to the moving pickup truck, the rope would stretch out and once the truck had exploded, the rope would always pull back the truck to it's place of origin. The resulting explosion would propel the truck in the direction of it's rope placeholder.

Thursday, August 26, 2010

Concept and Hypothesis

Concept
The concept for my filming documentary on the effects of explosions and porosity, is factoring in moving objects that travel at different velocities colliding in order to generate a forceful impact to trigger an explosion.

Hypothesis
If a moving object such as a car or train were to collide into explosive objects, the effect of the explosion would vary depending on which speed the moving object was traveling at. In general, the faster moving object, the more force is generated within the explosion.



A set of 40 stacked barrels, set out along 5 barrels across 4 rows high and 2 barrels deep. Each set out to be hit by a moving car entity travelling at different speeds. The exact same set of barrels will be collided with the 2 differentiating objects.


A set of stacked cubes, set up around the vicinity of the explosive barrels in order the measure the force of the explosion. By judging the distance of when the cubes are sent hurling outward by the explosion, we are able to tell the amount of force and exposure that each explosion produces in the experiment.

Sony Vegas Experiment


Edited in Sony Vegas using a set of crossfade transitions between clips.

Testing applied physics to Objects



Testing physics in Crysis using basic entities with applied physics flowgraphs. Edited in Sony Vegas Pro 9.

Monday, August 9, 2010

Crysis Explosion Experiment







Explosions Hypothesis
When a grenade is thrown into the architecture, the impact from the exploding grenade breaks apart the walls and rooftop causing it to collapse losing it's structural stability. The resulting explosion causes parts of the walls and roof to fly off in different directions or simply collapses in based on it's mass and scale of the explosive.

Monday, July 26, 2010

Crysis Level Experiment


Testing level experiment landscape in Crysis Wars.


Cave experiment
Created using the voxel object tool and following week 01 tutorial.


Swimming through cave.
Created using the voxel object tool and following week 01 tutorial.