4A Engine

From Wikipedia the free encyclopedia

4A Engine
Developer(s)4A Games
Initial releaseMarch 2010; 14 years ago (2010-03)
MiddlewarePhysX
PlatformMicrosoft Windows, OS X, Linux, PlayStation 3, PlayStation 4, PlayStation 5, Xbox 360, Xbox One, Xbox Series X/S, Nintendo Switch, Luna, Stadia
LicenseProprietary
Websitewww.4a-games.com

The 4A Engine is a graphics middleware engine developed by 4A Games for use in their video game Metro 2033, published by THQ. It supports Direct3D APIs 9 through 12, OpenGL 3.2, Nvidia PhysX,[1] and Nvidia 3D Vision.

Development[edit]

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 Shishkovtsov and Oleksandr Maksimchuk, the programmers who worked on the development of the 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]

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.[2]

The game is multi-threaded such that only PhysX had a dedicated thread[2] 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 percent load". Shishkovtsov also said that the GeForce 6 series architecture of the RSX Reality Synthesizer 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.[3]

The 4A Engine implementation of Metro 2033 features 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.[1] The audio in the engine features 3D sound positioning, spatialisation and attenuation.[3]

Controversy[edit]

There have been accusations that the 4A Engine is a modified version of the X-Ray engine used in the S.T.A.L.K.E.R series, instead of an original development. 4A denied the accusations.[4] Shishkovtsov also noted that porting the original engine to consoles would have proved extremely difficult.[4]

Games using 4A Engine[edit]

References[edit]

  1. ^ a b "Metro 2033: 4A Engine specifications". PhysX. February 20, 2010. Archived from the original on September 7, 2018. Retrieved December 29, 2017.
  2. ^ a b c "Metrospective: 4A Games vs. Digital Foundry". Eurogamer. February 20, 2010. Retrieved December 29, 2017.
  3. ^ a b "Metro 2033: 4A Engine impresses". Eurogamer. February 19, 2010. Retrieved December 29, 2017.
  4. ^ a b "4A Games dismisses Metro 2033 engine rumours". February 18, 2010. Retrieved December 29, 2017.

Further reading[edit]