Anvil Game Engine written in C++

Anvil Game Engine is a proprietary game engine developed by Ubisoft for creating and powering video games. It has been notably used in the development of several Ubisoft titles, including the Assassin’s Creed series. Anvil is designed to support open-world game environments and provides tools and features to handle large and detailed game worlds. There have been many updates and changes to the Anvil Game Engine since it was first developed.

Table of Contents

Anvil Game Engine (Scimitar)

Anvil is a 3D game engine developed in 2007 by Ubisoft Montreal game developers. It was known as Scimitar until 2009.

For Anvil Game Engine (Scimitar), modeling for characters is done in ZBrush which is a  digital sculpting tool that combines 3D/2.5D modeling, texturing and painting. The environment of the game is designed 3D Max which is 3D modeling and rendering software for design visualization, games, and animation.

The game engine uses HumanIK Autodesk middleware for the correct placement of the character’s body parts like hands and feet while pushing and climbing animations at run-time.

AnvilNext

Updated version of the Anvil (Scimitar) was released in 2012. It was specifically released for Assassin’s Creed III and IV games. It introduced number of new enhancements to the game engine.

For example it introduced weather system in the game and provided weather settings as well as automatic cycling mode. Game renderer was completely re-written for higher efficiency and support for additional post-processing techniques. It also added new water technology and dynamic sandbox environment.

Most of the engine & tools used for Assassin’s Creed were built from scratch. We have reused some internal common libraries (sound, menus, etc.) and some external middlewares (physics, IK), but the entire pipeline was built from the ground up with next-gen architectures and reusability in mind

Claude Langlais, a technical director at Ubisoft

AnvilNext 2.0

AnvilNext 2.0 engine was released in 2014 for Assassin’s Creed Unity game. The game was quite popular for its stunning visuals, improved game and mission design, and options to customize the game. In addition, it improved game’s multiplayer format drastically.

Game development started shortly after the completion of 2010’s Assassin’s Creed: Brotherhood.

The game is written in a combination of C++ Programming Language and C#, totaling an estimated 15.5 million lines of code of the former, and five million of the latter.

CppCon 2014: Nicolas Fleury “C++ in Huge AAA Games”

Features and Specifications

  • Enhanced draw distance i.e. maximum distance of objects in a three-dimensional scene.
  • A full day and night cycle in the Game.
  • Vegetation technology i.e. virtual experience of nature.
  • Improved lighting.
  • Better reflection and special effects.
  • New clothing system.
  • Enhanced Artificial Intelligence (AI).
  • Non-playable Character (NPC) navigation system i.e. character in game controlled by algorithms.
  • Platform Support: Windows, PS 3, PS Vita,  PS 4,  Xbox 360, Wii U, Xbox One.

Games Developed using Anvil

Assassin’s Creed Origins – Official HomepageBuy on Amazon
Assassin’s Creed Unity  – Official HomepageBuy on Amazon
Prince of Persia: The Forgotten Sands – Official HomepageBuy on Amazon
Assassin’s Creed – Revelations – Official Homepage Buy on Amazon
Assassin’s Creed II – Official Homepage Buy on Amazon
Assassin’s Creed – Brotherhood – Official Homepage Buy on Amazon

Useful Resources

Categories: Blog
M. Saqib: Saqib is Master-level Senior Software Engineer with over 14 years of experience in designing and developing large-scale software and web applications. He has more than eight years experience of leading software development teams. Saqib provides consultancy to develop software systems and web services for Fortune 500 companies. He has hands-on experience in C/C++ Java, JavaScript, PHP and .NET Technologies. Saqib owns and write contents on mycplus.com since 2004.
Related Post