Alexey Vlasov, technical art director of 1C Entertainment, shared the details of the development of King’s Bounty II. In a fairly short time, the team had to create a number of tools to speed up development and optimization — including procedurally generated vegetation and a special approach to creating hundreds of characters.

King’s Bounty II

Vlasov’s material was published on the 80 Level portal.

Key Details

  • Unlike the first part, 1C Entertainment had to develop console versions (as well as optimize for them). At the same time, initially the team had only a PC prototype, which greatly complicated the process.
  • All textures and geometry of vegetation in King’s Bounty II are generated procedurally. This makes up 95-98% of the entire game environment. For example, to create a Christmas tree, developers needed to model several different needles. Then it allowed them to change their sizes and “bake” into ready-made textures. A similar approach was used in No Man’s Sky.
  • 1C Entertainment used three main tools to work with the environment: SpeedTree, Substance Painter and Substance Designer. This greatly simplified the work and optimization for different platforms. According to Vlasov, only in 2-3% of cases the team had to manually adapt models for the Nintendo Switch.

  • All the grass in King’s Bounty II, including flowers and some petals, is animated and reacts to the wind. To do this, the studio has modified Pivot Painter 2, a tool for Unreal Engine 4, so that it can be used effectively with the resources available on Xbox One and PS4.
  • To animate individual leaves on trees, the team developed the UVW Pivot Animation tool. According to Vlasov, a similar technique was first used in Ultimate Spider-Man. In fact, this is a pixel-by-pixel transformation of UVW coordinates. The texture defines the coordinates of the base of the leaves, which can be rotated relative to these coordinates. With the help of several more masks, the degree of rotation, the time offset difference and the depth offset are set. This makes the animation more realistic..

  • Due to the tight deadlines, the studio was unable to animate all the leaves in the game like this, but the project team promises to fix this in subsequent addons for King’s Bounty II.
  • To optimize the studio, we had to improve the hair and skin shaders, since stock shaders work well only on high PC settings. On consoles, there are problems with shadows, glare, transparency and other small details. Vlasov notes that optimization took a lot of time and nerves from the team.
  • There are over 1300 characters in the game, including the main characters and ordinary citizens. All of them had to be created in just a year and a half. Therefore, the studio had to make various compromises and tricks in order to meet the deadlines and release King’s Bounty II on all target platforms.
  • For example, one skeleton was used for all the characters. Using the size of the bones, the team changed the proportions, which significantly accelerated the modeling process. Also, the developers did not have to adapt clothes for heroes with different complexions — it was automatically adjusted to a ready-made skeleton.

  • The studio also didn’t have the resources and time to create different hairstyles. To work with the hair, the team used Houdini tools. Thus, instead of modeling individual hairstyles, the developers used a generation system, changing the number of triangles when creating hair on the heads of characters.
  • During the development of the project, 1C Entertainment adhered to the following rule: “One content for all platforms.” This saved a lot of resources and simplified the work of programmers and artists.

King’s Bounty II was released on August 24. The average score of the PC version on Metacritic was 65/100. Also, the project was initially negatively perceived by fans of the Katauri Interactive project, criticizing the game on Steam. However, since then, the rating of King’s Bounty II has improved a little — now it has 60% positive reviews in the Valve store.

Tags: