Sunday, October 14, 2012

Assassin's Creed



 

Reading between the lines


Assassin's Creed is a beautifully crafted action/adventure title developed by Ubisoft Montreal. The game's most standout feature is the stealth mechanic implemented to blend seamlessly with the rest of the game world which is set during the Third Crusade in the Holy Land. The characters, environments and animation simply gel together to form a fast-paced stealth combat game centering around deception and a skillful protagonist who is more than he seems. This article will cover the manner in which interpolation plays a role in the crucial animation of this smooth and natural flowing stealth title. Even though it has been years since it's release, Ubisoft certainly hit a benchmark with the creation of such a smooth flowing sandbox-style gaming dynamic, one which continues to impress players all around the gaming world.



A Creed to Live By

Assassin's Creed is centers around Desmond Miles, a bartender who is extracted from his normal life and made to relive the memories of one of his ancestors through the use of a machine known as 'The Animus.' Desmond slowly begins to realize that his ancestor is an assassin known as Altair who found himself in the midst of a battle between two ancient sects: the Knights Templar and the Assassins. Both sects are after a rare and powerful artifact simply referred to as a 'Piece of Eden.' Now it is Desmond's job to accurately relive his ancestor's memory and to travel from city to city in search of powerful enemies who must be eliminated before they cause further damage in history.

For the full story on Assassin's Creed as well as more information on all other games in the series, click here




Interpolation...an overview

Throughout the vast cosmos of Assassin's Creed, interpolation is used as a creative tool to immerse the player in a world of fantasy and a living, breathing, environment considered to be Altair's playground. Cut scenes, Enemy AI, Combat and even simple title animations all make use of interpolation as a primary animation mechanic to create an astounding game world with a striking protagonist at its forefront. 

So now let's begin with AI (Artificial Intelligence). 




In Assassin's Creed, enemy AI plays an important role in core gameplay mechanics as well as character progression through combat. In order to progress, you must assassinate and once a target is assassinated, it is inevitable that you must be chased down by guards. Now, whether Altair runs away and hides, or faces a steady stream of guards all at the same time, is entirely up to the player, but guards will be around nevertheless. In order to create an atmosphere of anxiety for the player at all times, guards prowl the streets and are just around every corner. Furthermore, they block crucial passageways and harass citizens exploiting behavior that tends to tease the player's conscience. When left alone, enemies walk a pre-determined path getting from one place to another through the use of splines, more specifically, Catmull-Rom splines. This is most notable as they weave in an out of crowds and turn around to follow the same basic path (possibly outlined by specific points behind the scenes) as they pace back and forth in search of trouble. 

Crowds work similarly as do most townsfolk. Every character imbued with Artificial Intelligence has a pre-determined path within the gameplay environment. Simply walk into a marketplace and watch the fantastic A.I. at work as every NPC navigates through the city with ease, managing to accurately represent the hustle and bustle of everyday life in the Holy Land. Certain NPCs have different characteristics such as the monks who flock together and have people (including guards) move out of their way as they pass through the city. Such groups also retain a pre-determined path, rarely veering off unless harmed by Altair. If a citizen is harmed in any way, they die on the spot, stand still complaining of their misfortune, or continue to interpolate along the path they had been on.




Altair manages to skillfully steer through crowds without knocking them over when in stealth mode. Since the point is to remain off the radar, Altair will walk slowly and carefully interpolating to the path determined by the player as he moves the joystick and new points are formed for Altair to interpolate between. If characters cross interpolating paths, what commonly happens is that Altair will squeeze between them or softly nudge them aside as he steps through the throng of citizens. Very noticeably, Altair's clothing matches that of the flock of monks walking through the streets of the city. As such, the assassin may blend in with the group to stealthily get passed guards to simply avoid confrontation and unnecessary combat. 




The Holy Land

Throughout the game world, Altair can interact with certain objects just by walking into them or knocking them over. He is excellent at walking right into certain objects such as baskets, oil lamps, houses and people. As such, upon interacting with these objects they interpolate from one position to another in the game world. I'm not talking about a drastic interpolation like kicking a barrel across the city, rather it's the small motion that is a lot more noticeable and adds to the splendor of the well-designed game world. A good example would be the manner in which a hanging lamp simply swings from place to place when Altair happens to knock an enemy over into it. It is quite clear to see that such objects have been programmed to interpolate in small increments to replicate real-life reactions to object interaction. 




Another thing to notice is the way pots drop from the arms of women balancing them on their heads. When Altair nudges a woman with a pot, the pot simply seem to linearly interpolate right to the ground with minimal rotation and smashes almost immediately so all the player notices is a smashed pot and a woman complaining about you ruining her livelihood.  

Trees and bushes in the environment sway with the wind. As such, it is each to see how they might be created using nodes which interpolate between points on a pre-determined path when an element such as wind is introduced. This can also be the case when Altair happens to walk through these objects in the environment. The points of interpolation change when these environmental objects are interacted with. Flags, tapestry and carpets all interact in a similar manner when wind is brought into the picture. It is quite amazing how to see how interpolation along a Bezier curve can cause objects like tapestry to ruffle in the wind or due to player interaction. 




Cut scenes

The cut scenes and trailers from Assassin's Creed are littered with camera interpolation here and there. The basic camera in most cut scenes follows a spline path which pans around a centrally focused area that is staged for the player to see. When ever Altair climbs up a landmark, there is a short cut scene where the camera pans around the city in order to reveal new areas on the map. It seems as though the camera is following a spline path to get the view of the entire city as Altair scans up to the horizon. 

A great example of camera interpolation can be found in the trailer of the game where the camera performs linear interpolation moving quickly from one area to another in a short amount of time. It zooms in and out on the same scene making it seem as though it may be interpolating between several area in one scene to portray the most significant moments in the trailer and to stress the stealth and speed elements within the game. There are also moments when the camera interpolates after Altair as he navigates the environment in escape from the guards attempting to arrest the assassin. 




The Assassin

Altair's movements are easy to be perceived as interpolation from one area to another. This is especially noticeable when the assassin is navigating the environment and assassinating certain targets.




Altair can scale walls and buildings by grabbing on to certain 'sweet spots' as he makes his way up. He pulls himself up on to beams and ledges slowly navigating the length of the construction (usually a tower or building). It is plain to see locomotion in his movement, however, interpolation is even more clear in Altair's steps from one ledge to another. It simply seems too linear. Although the motion is genuine and accurate, it is easy to notice that the assassin is simply interpolating from one spot to another as he is animated in different positions. 

Another neat manner of interpolation is Altair's ability to execute a jumping kill. When close enough to an enemy, Altair will leap forward and interpolate right on top of the enemy who will immediately drop to the floor as he is impaled with a hidden blade. This tends to replicate Catmull-Rom quite a bit as the player can tell that Altair is simply interpolating along a cubic spline curve from one specific point to another in 3D space. 

Free-running by holding down a certain combination of buttons (depending on the console) helps Altair to run in one specific direction along a path that is being drawn out as he goes. Once in sprint mode, he begins to run straight and then quickly interpolates to a different path depending on the direction of joystick movement determined by the player. In a free-run it is easy to see that the player does not have complete and accurate control of Altair which is accurate to real life where moving at such a fast speed reduced the accuracy at which someone can control the intricacies of their maneuvering movement. At these points, the player may notice the varied spline paths Altair may veer towards to continue forward while remaining in a sprint. 




Even combat takes a clear stab at interpolation as Altair's subtle movement from one position to another while intricately aiming his sword and planning out his attacks are a clear indication as such. Every time Altair is knocked back he interpolates backwards linearly while each strike interpolates him forward to a new position. The enemy A.I. works the same way until they are killed. 


Last Words

A lot of movement in the game can be seen as interpolation from one point to another. This is especially true in the superbly animated faces of the protagonist and all NPCs scattered throughout the Holy Land. It is most noticeable when Altair is engrossed in conversation with another character or when someone (such Al Mualim) is giving him instructions. 




Furthermore, smaller animations such as activating/deactivating the Animus or even the DNA's swirling movement in the HUD can be considered as spline interpolation. There are many instances of such interpolation all over the game, some noticeable, others not-so-prominent.


Conclusion

All in all, Assassin's Creed is a beautifully crafted game with stunning visuals and tremendous graphical prowess. It is as nice to look at as it is fun to play and as such things it is one in a rough handful of games to keep things interesting in successfully maintaining the player's attention through benchmark animation which is not only well designed but also put together in a unique manner that'll have the player wanting more after his/her first playthrough. There are tons of examples of interpolation scattered all over Assassin's Creed, but you'll just have to play the game to find out what exactly they are.
















No comments:

Post a Comment