5/16/2023 0 Comments Quake engineQuake also incorporated the use of lightmaps and 3D light sources, as opposed to the sector-based static lighting used in games of the past. The open cloudy sky in Quake maps is in fact not open, but is covered over and enclosed with large brushes, and textured with a special skybox texture which is programmed to use sphere mapping and thus always looks the same from any viewing position, giving the illusion of a distant sky. To prevent leaks, the brushes should overlap and slightly interpenetrate each other attempting to perfectly align along the edges of unusually shaped brushes on a grid can result in very small gaps that are difficult to locate. This preprocessing step cannot work if there are any small holes or "leaks" that interconnect the interior game space with the exterior empty space, and it was common for complex map-building projects to be abandoned because the map designer could not locate the leaks in their map. On the 50-75 MHz PCs of the time, it was common for this pruning step to take many hours to complete on a map, often running overnight if the map design was extremely complex. Though difficult, this technique was occasionally used by cheaters to create windows in walls, to see normally hidden enemies approaching from behind doors and walls, and resulted in an anti-cheat mechanism used in recent 3D games that calculates a checksum for each file used in the game, to detect players using potentially hacked map files.Ī processed map file can have a much lower polygon count than the original unprocessed map, often by 50 to 80 percent. But it is possible to edit a processed map by opening it in a special vertex editor and editing the raw vertex data, or to add or remove individual triangle faces. Instead the original map editor data with the brushes is retained and used to create new versions of the map. Generally once a map has been preprocessed it cannot be re-edited in a normal fashion because the original brushes have been cut into small pieces. The preprocessor then strips away the back-faces of the individual brushes which are outside the game-space, leaving only the few polygons that define the outer perimeter of the enclosed game space. The preprocessor is used to locate two types of empty space in the map, the empty space enclosed by brushes where the game will be played, and the other empty space outside the brushes that the player will never see. The brushes are placed and oriented to create an enclosed, empty, volumetric space, and when the design is complete the map is run through the rendering preprocessor. The map editor program uses a number of simple convex 3D geometric objects known as brushes that are sized and rotated to build the environment. The 3D environment in which the game takes place is referred to as a map, even though it is three-dimensional in nature rather than a flat 2D space. Quake was the first true-3D game to use a special map design system that preprocessed and pre-rendered the 3D environment, so as to reduce the processing required when playing the game on the 50-75 MHz CPUs of the time. It was later upgraded to id Tech 2 ( Quake II engine).Įngine design and milestones Reducing 3D complexity to increase speed John Carmack did most of the programming of the engine, with help from Michael Abrash in algorithms and Assembly optimization. The Quake engine was developed from 1995 for the video-game Quake, released in June 1996. 2.4 Speeding up the rendering, and rendering order. ![]() 2.3 Sectioning the map to increase speed.2.2 Precalculating lighting and shadows.2.1 Reducing 3D complexity to increase speed.
0 Comments
Leave a Reply. |