Engine Programmer
To be one a person needs to be aware that they have to serve various aspects of the game. From how things get processed and works together or jury-rigging a developer an engine with a bunch of things to make things work with an encroaching deadline. Depending on the company this role varies, but always encompasses a main role in making the game, tools, and assets work together.
This includes understanding the technologies powering the game, the current engine in use or plan to use, along with researching new technologies and how that would get implemented into the current/in-development game engines.
This position can be development or implementations of new technologies. The Metro exodus releases is an example of different technologies in the same game. It's first release had first generation NVIDIA DLSS 1.0 and NVIDIA Ray-Tracing technologies powering it's graphics pipeline during the early days of ray-tracing. Then the game was later re-released as an enhanced version with required Ray-tracing and DLSS 2.0. YouTuber 2kliksphilip makes a great comparison video of technology implementations of these different technologies.
These two different implementations need the work of an engine programmer to coordinate with the art developers where the changes to the graphics pipeline of the engine needs the art to be reworked to do what they do in the newer implementation of the technology.
Digital foundry also interviewed Lead Engine Programmer of ID Software and their development of Doom Eternal after their ray-racing implementation release.
Their interview covered how things went about planning ID Tech's engine for ray-tracing. Their objectives different based from how Metro Exodus changed as their aim was low latency and high performance on their optimization of the engine.The tech powering each is advance and need a Engine Programmer to achieve whatever the developers goal is whether the experience is a moody atmospheric story game, or a fast pace high performance PC-centric shooter. Their roles help keep the development of games smooth and to maintain buzz with new technologies. Another way is to remake games as a good example Bluepoint games remastering games while still using their original code base that they released in like the PS2 Shadow of Colossus remaster on PS3and the remake on PS4 where they hooked modern tech onto the old game logic like physics logic while improving the Inverse Kinimatics tech used on the characters and using all new art assets. Thier remaking efforts improved also with their remake of Demon Souls using the same techique of still having the game runing it's old code base with updated graphics and quality of life tweaks utilizing the new technology offered on the PS5.
The career path of a Engine Programmer seems daunting but its role contributes to the heart of the games you play making sure that their experiences you feel is great when done right. There will be tough struggles like how Bioware and their attempts to modify EA's proprietary Frostbite Engine that is made primarily a FPS game engine, to make a third person rpg game with their own issues encountered specific to their situation when making games on Frostbite. They had to figure out ways to make the modern engine work with their tools used on their previous games that used to be on Unreal engine.
To accomplish such feat's cooperation between the various departments and their respective tools along with other studios and developers who develop and use the same tools to share information and determine the needed changes to that it all works in everyone's favor. Hard coding core optimization into a game will ensure that later down the line if used properly a game will run and look great.
No comments:
Post a Comment