4A Engine
The 4A Engine is a graphics middle-ware engine developed by 4A Games for use in their video game Metro 2033, published by THQ. It supports Direct3D APIs 9, 10, and 11, along with NVidia's PhysX[1], and also NVidia's 3D Vision.
Development
The engine was developed in Ukraine by a set of people who split off from GSC Game World a year before the release of S.T.A.L.K.E.R.: Shadow of Chernobyl, notably Oles Shiskovtsov and Aleksandr Maksimchuk, the programmers who worked on the development of X-Ray engine used in the S.T.A.L.K.E.R. video game series. The engine itself is capable of running on PC, the Xbox 360, and the Playstation 3[2]. However, in Metro 2033, an SKU was not released for the Playstation 3.
Shishkovtsov and his colleagues split from the development of S.T.A.L.K.E.R because that "its inherent inability to be multi-threaded, the weak and error-prone networking model, and simply awful resource and memory management which prohibited any kind of streaming or simply keeping the working set small enough for 'next-gen' consoles" along with its "terrible text-based scripting", which he explained led to the delays in the original game.
The game is multi-threaded in such that only PhysX had a dedicated thread[3], and uses a task-model without any pre-conditioning or pre/post-synchronising, allowing tasks to be done in parallel. . When the Xbox 360 iteration had been measured during development, they were running it at "approximately 3,000 tasks per 30ms frame on Xbox 360 on CPU-intensive scenes with all hardware threads at 100 per cent load". Shishkovtsov also said that the NV40 architecture of the RSX in the Playstation 3 proved to be very useful during development noted that there were many "wasted cycles". The engine can utilise a deferred shading pipeline, and uses tesselation for greater performance, and also has HDR (complete with blue shift), real-time reflections, colour correction, film grain and noise, and the engine also supports multi-core rendering.[4]
Metro 2033 featured superior volumetric fog, double PhysX precision, object blur, sub-surface scattering for skin shaders, parallax mapping on all surfaces and greater geometric detail with a less aggressive LOD(s).
Using PhysX, the engine uses many features such as destructible environments, and cloth and water simulations, and particles that can be fully affected by environmental factors.[5] The audio in the engine features 3D sound positioning, spatialisation and attenuation.
Controversy
There were accusations that the engine was an off-shoot of the XRay engine used in the S.T.A.L.K.E.R series, instead of an original development. The rumors were later quelled [6]. Shiskovtsov also noted that porting the original engine would have proved extremely difficult to consoles.
Used in games
Metro 2033, released March 16, 2010.
- ^ http://physxinfo.com/news/2017/metro-2033-4a-engine-specifications/
- ^ http://www.eurogamer.net/articles/digitalfoundry-metro2033-article
- ^ http://www.eurogamer.net/articles/digitalfoundry-metro2033-article
- ^ http://www.eurogamer.net/articles/metro-2033-4a-engine-impresses-blog-entry
- ^ http://physxinfo.com/news/2017/metro-2033-4a-engine-specifications/
- ^ http://www.gamesindustry.biz/articles/4a-games-dismisses-metro-2033-engine-rumours