Introduction
At the current moment, CD Projekt RED is a company respected and beloved by players, who created one of the main games of the decade. However, their first ambitious role-playing game – The Witcher-1 –almost turned out to be of poor quality due to a lot of wrong decisions during its development. The most critical of these decisions was an error in the selection of the engine: the developers picked the Aurora Engine. The staff of the Polish studio CD Projekt Red should have chosen the Unreal Engine 5 engine for the first part of The Witcher (Foxman, 2019). The main reason is that this engine allows you to quickly create beautiful and realistic locations. It is also well adapted for games with a large open world. In this essay, I argue that when choosing another engine – Unreal Engine – the game would come out faster, and would have fewer lags.
The First Erroneous Engine Choice
CD Projekt’s problems started at the early stages of development and eventually led to its complete restart. At that time there were only four people on the team who had previously been engaged in the canceled port of Baldur’s Gate: Dark Alliance on PC (Lui & Au, 2018). In the process, they got used to the combat system in isometry, so they decided to make their own game in a similar style. However, the team could not decide on the genre. An early version of The Witcher was an isometric action game starring an unnamed witcher. In the role-playing game, there was only a simple dialog system, without role-playing game elements and character development. At the same time, the combat system turned out to be slow, it lacked animations, and the engine prevented the situation from being corrected.
The studio was saving the budget, so when it turned out that Sebastian Zelinsky, the only programmer in the team, had a Calaris engine developed by him, it was decided to build the game on its basis. In addition, the developers liked how the technology showed itself in the Mortyr shooter. It quickly became clear that the chosen engine was not suitable for the project. Calaris had its roots in the outdated architecture of Amiga computers, for which Zilinsky also wrote games (Salama & ElSayed, 2018). In addition, it was sharpened specifically for first-person shooters. The developers eventually managed to implement an isometric camera, but they did not add working tools for graphic designers. Problems with the engine attracted the attention of the board of directors: CD Projekt did not want to cancel the project but understood that the current developments were of poor quality. Therefore, in May 2003, the studio decided to completely restart the project.
Problematic Engine
Finding a new engine for The Witcher turned out to be difficult. The developers were discussing all the popular options, from Unreal to CryEngine, but the engines turned out to be either too expensive or designed for shooters. Shortly before the development of The Witcher, project manager Ryszard Hoynowski worked in the Canadian office of BioWare on Neverwinter Nights. In the process, he not only studied the Aurora Engine well but also became friends with its developers Greg Zeshchuk and Ray Muzika (Freedman, 2018). Thus, the choice of the Aurora Engine for the Witcher-1 was based not on its practicality, but on the friendly relations of the project manager with its developers.
BioWare sold the studio, not a full-fledged engine, but a simple set of tools, as the developers themselves, later described it. For an inexperienced team, this became a problem: it was necessary to cut out all the resources of Neverwinter Nights, multiplayer components, and a grid for building an environment that severely limited the artists from the Aurora Engine (Chover et al., 2020). As a result, the developers had to write about 90% of the engine from scratch, which is why it was ineffective in writing this game. The most difficult thing was to implement a realistic location on the engine: villages and cities in which residents would not just stand at some particular places, but would go to work, hide from the rain, or interact with each other. There was no suitable functionality for this task in the Aurora Engine, so the developers had to create their tool and customize it for each non-player character category.
Opportunities for Improvement with the Unreal Engine in the Witcher-1
The Witcher-1 uses a new version of the Bioware Aurora Engine, modified for a single character development system. Several potential changes with the Unreal Engine could improve the game. One of the most important changes is related to the system of graphical representation of the location. In the Unreal Engine, the department of the world looks very realistic, due to the use of a tile-based system based on the superposition of objects on each other. All elements of the environment can be created in 3D Studio Max 6.0 and exported to the game engine (Chover et al., 2020). Changes to light maps and texture mapping, especially water and sky can also result in a better quality of the game.
The Bioware Aurora Engine version supports light maps created in 3DS Max. However, the shadows generated by the Unreal Engine in the direction of view are more realistic and better in performance. The Unreal Engine also has a special tool that is applicable for rendering the environment. It uses random textures, thereby saving a lot of time, and creates the most plausible picture. The Unreal Engine would also allow me to work on graphic design.
Everything in the game and the tools are drawn using DirectX9 (Freedman, 2018). However, with the Unreal Engine, the game would support various shaders such as water effects, roughness mapping, environment mapping, and others).
Advantages of the Unreal Engine Over the Aurora Engine
The graphic design of the game built on the Aurora Engine looks pleasing to the eye. The Witcher-1 was far ahead of other role-playing games in terms of graphics, it worked perfectly on consoles, and the picture quality was the highest in its category. However, the development and support of the Aurora Engine took a huge amount of time. The former CD Projekt programmer recalls that for each game the engine was written from scratch — almost all systems and subsystems were changed. To develop The Witcher-2 on the Aurora Engine from Cyberpunk 2077, the engine would again have to be rewritten or at least rewritten, because it does not have some important systems (Salama & ElSayed, 2018). Rewriting and refining the engine in CD Projekt is constantly associated with crunches. While the programmers are working on the engine, the rest of the team cannot work properly.
Switching to Unreal Engine would make it easier for CD Projekt to hire employees from other companies (the developers themselves talked about this). They would not have to learn to work with the studio’s engine, and the recruits would be able to get to work faster. The fifth version of the Unreal Engine has several very successful technologies (such as Lumen global lighting, and Nanite asset scaling) that provide very high image quality (Foxman, 2019). Moreover, it has Metahuman technology, which allows the creation of very realistic characters.
Graphically, the demo development on the Aurora Engine looks very good, but there are questions about optimization. Demo development of the Aurora Engine worked on new consoles with a frequency of 30 fps, and the Unreal Engine shows 60 frames per second on PS5 and XSE with very good picture quality (Lui & Au, 2018). Moreover, impressive is the Quixel technical demo, which demonstrated a medieval village; it is easier to assemble it on the Unreal Engine than on the Aurora Engine (Salama & ElSayed, 2018). In addition, Unreal Engine 5 created action games with fairly large game locations.
As part of the presentation at the State of Unreal, developers of other games explained the reasons for choosing Unreal Engine 5. Using it helps to quickly create a beautiful and realistic environment. It is a flexible engine with a whole set of different tools that enable developers around the world not only to work in comfort. One of the main advantages of the new engine was its high-quality “open world support”, as well as an “extremely stable environment”(Freedman, 2018). In addition, the thoughtfulness and flexibility of the tools were emphasized.
A considerable impression on the developers was made by last year’s technological demo the Medieval Game Environment, which would apply to the Witcher.
Main Reasons for Changing the Engines
For the first part of The Witcher, CD Projekt RED studio used its engine called the Aurora Engine, gradually upgrading it. However, representatives of CD Projekt RED studio should have changed the game engine in the first part of The Witcher for several main reasons. Firstly, using a third-party engine freed the studio from the need to upgrade the Aurora Engine and makes it possible to focus on the game. Secondly, Unreal Engine, according to game director Jason Slam, is great for creating large open worlds.
Hypothetical Demonstration of the Witcher-1 Based on Unreal Engine
One of the Witcher’s fans decided to demonstrate how The Witcher could look not on the Aurora Engine. The technological level of the latest version of the Unreal Engine will lead the project to the maximum realism of the picture. An enthusiastic mod developer has taken up the transfer of locations and quests from the original 2007 game to the Unreal Engine, and he notes some features of the new game adaptation (Foxman, 2019). The technological level of the latest version of the Unreal Engine will lead the project to the maximum realism of the picture. The enthusiast states that the new engine can surprise with its visual capabilities. If at least part of the game’s world is transferred to the Unreal Engine 5 using new lighting and texture processing technology, players will be able to see the most plausible Slavic game world.
Conclusion
With the Unreal Engine 5 CD Projekt, developers would not have to adapt the engine for games with a full-fledged open world from scratch. They would have been able to avoid numerous problems with mechanics and systems that arose when using the Aurora Engine. Thus, using Unreal Engine 5 instead of the Aurora Engine would allow the release of The Witcher-1 in a shorter time and with fewer lags. UE5 is preferable for the first part of the game because of its flexibility, stability, and numerous possibilities when creating an open game world.
References
Chover, M., Marín, C., Rebollo, C., & Remolar, R. (2020). A game engine designed to simplify 2D video game development. Multimedia Tools and Applications, 79(28), 12307-12328.
Foxman, M. (2019). United we stand: Platforms, tools and innovation with the unity game engine. Platformization of Cultural Production, 2(3), 1-10.
Freedman, E. (2018). Engineering queerness in the game development pipeline. The International Journal of Computer Game Research, 18(3), 1-19.
Lui, R. W., & Au, C. H. (2018). Establishing an educational game development model: From the experience of teaching search engine optimization. International Journal of Game-Based Learning, 8(1), 1-22.
Salama, R., & ElSayed, M. (2018). Basic elements and characteristics of game engine. Global Journal of Computer Sciences: Theory and Research, 8(3), 126-131.