Channels ▼
RSS

Parallel

Assassin's Creed: Making the Game


Joining us today is Claude Langlais, Technical Director on Assassin's Creed, the new video game just released by Ubisoft. In Assassin's Creed, says Ubisoft, you are a warrior shrouded in secrecy and feared for your ruthlessness. Your actions can throw your immediate environment into chaos, and your existence will shape events during this pivotal moment in history.

DDJ: Claude, can you briefly tell us about the software development process that goes into creating a game like Assassin's Creed? What tools do you use? What programming languages?

CL: With Assassin's Creed, we had a great opportunity of creating a new production pipeline from scratch. Building on our previous experiences, we built a engine and a tool suite that could be used not only for this game but for others games within Ubisoft as well. Starting from the ground up allowed us to take full advantage of the new architectures that came with the Xbox 360 and Playstation 3. The engine is coded in C++, our tools suite written in C# and some of the build process is written in Perl with some Python.

DDJ: Did Assassin's Creed require any new or unique technology/algorithms?

CL: Access to multiple processors was "relatively" new with the architectures we were targeting. We had to find creative ways of processing as many things in parallel as possible while still being compatible across all platforms. Even though we had more memory than before, we still had to find ways of using it as efficiently as possible, e.g. we have many animations in AC and managed to compress them a lot while still maintaining acceptable quality.

Right from the start, we knew we wanted to give players a sense a freedom and being able to go anywhere they wanted. To reach that goal, we had to play around with behaviors to allow climbing on anything that sticks out of the walls (with IK), develop detection algorithms to allow efficient interaction with the environment and build AI so that non player characters can also interact with the environment.

And of course, dealing with crowd simulation was something quite challenging. Combining simulation and usefulness to the player was interesting :) .

DDJ: What was the most difficult aspect of developing this game?

CL: I think that getting everything together and managing to have a crowd simulation that works in a meaningful way to the player while being able to render a full city to immerse the player in a rich environment was quite a challenge.

DDJ: Is there a web site that readers can visit to find out more about the game?

CL: Sure, www.assassinscreed.com.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video