| Source Engine |
Article Index for Source |
Website Links For Source |
Information AboutSource Engine |
| CATEGORIES ABOUT SOURCE ENGINE | |
| game engines | |
| half-life 2 | |
|
The Source engine (officially the '''Valve Source Engine''') is a 3D Game Engine developed largely by Valve Software for their First-person Shooter Computer Game '' Half-Life 2 '' and for licensing to other developers. It provides rendering, sound, animation, Lip Syncing , UI (specifically VGUI ), Networking , Artificial Intelligence , and physics. Source supports both 32-bit and 64-bit environments and currently runs under Microsoft Windows and on the Xbox . Source requires modern Hardware to run with all visual and audio effects enabled, but is extremely scalable and can run smoothly on an array of older systems. The engine debuted on ''Half-Life 2''. Valve has also ''. '', a MMORPG ). Ritual Entertainment announced on July 4, 2005 that they had licensed both Source and Steam for their new Episodic sequel to '' Sin '', '' SiN Episodes ''. Warren Spector 's and Art Min 's Junction Point Studios has announced that it has licensed both Source and Steam for an as yet unannounced title. TECHNOLOGY .]] The most obvious improvements of Source over the old '' Half-Life '' GoldSrc engine are in the areas of rendering and physics. Rendering now takes a Shader -based approach that allows greater control over the graphics to create interesting visual effects. Source uses Direct3D exclusively for its rendering. The physics, based on a heavily-modified version of the Havok Physics Engine , allows for an extra dimension of interactivity in both single player and online environments. Character death can now be handled by Ragdoll Physics and many physically simulated objects can exist in a map without a notable performance hit. Source also provides sophisticated vehicle physics including torque, power, gears, tire material, suspension and mode. Multiple players can be in the same vehicle, but this feature has yet to be used. Source features 3D Skyboxes , which allow for an area outside (or even inside) the accessible map to be displayed as a skybox at an exponentially increased scale with full 3D Parallax . This adds a greater sense of depth to the surrounding environment, and allows for the illusion of far larger maps than the engine actually supports. and Alyx Vance from ''Half-Life 2''.]] ' is over two times as detailed than other Half-Life 2 Characters]] Source also has the ability to simulate characters' facial expressions in Real-time . Valve says that forty-two digital "facial muscles" are used for facial simulation. Lip Sync ing is also a major feature, and is auto-generated by SDK tools. Lip sync data is stored with audio files, allowing for easy localization of dialogue. Source also includes and expands on Valve's existing animation blending technology, allowing any animation to merge with any other animation - including facial animation, lip syncing, and gestures. Similarly, Source supports Inverse Kinematics , or IK, to ensure character's limbs react to environments. For instance, feet will angle themselves to the surface they are on and legs will bend higher when climbing stairs. Both technologies work in real-time. The game also aimed to improve audio design. The sounds in the game are separated into two distinct Frequencies which are then played at an accurate Volume depending on distance of the sound source, giving the sound effect realistic properties. An explosion at great distances sounds like a low pitched bellow, but up close, a sharp, loud crack. The player can also observe this effect by going near one of the talking terminals in the game, and walking to and from the machine while listening to the pitch shift. MODULARITY Source is designed from the ground up to be highly modular. This allows for the easy upgrade and modification of certain features without breaking other facets of the engine and, when coupled with Steam , these updates can be distributed retroactively to Steam-enabled Source games. For instance, if Source is upgraded to support Hardware Physics , every Source title on Steam will instantly benefit. ''. These effects were detailed in depth on Bit-tech in December 2005. Valve's motion blur implementation is currently not real time and will likely not become part of Source for some time. CRITICISM Stutter The Source Engine uses a Caching system, whereby the loading of certain resources is handled and managed on the fly, rather than in a single operation behind a traditional loading screen. Texture and sound data are the primary areas in which this occurs. Textures are loaded to Memory but only moved to the system's Video Card when needed; audio files are loaded with an unusual "soundcache" system, whereby only the first 0.125 seconds of each file are Precached , the short clip used to cover the Asynchronous buffering of the full sound file in the background when the file is first requested. Both systems keep data in the Heap until there is no more room and older resources are flushed out, and when either is held up or otherwise slowed down the engine will either freeze or go into a temporary loop until the data arrives. 'Stuttering', or 'hitching' as it is sometimes known, is the result of these pauses. While stutter can be caused by poor system performance, it has also been noted on hardware setups that should be more than powerful enough to cope with the data rate, and despite many theories, the precise cause remains unknown even over a year after the engine's debut. Most solutions that have been found involve bypassing the caching system, as it cannot be directly disabled, or system-specific optimisations (e.g. Driver updates). As of January 8th 2006 , Valve programmers are "looking at problem actively". When Half-Life 2 was first released and stuttering became a widely-known problem, community member Mark McWilliams set up a page covering the issue and Valve's communication and work on resolving it {Link without Title} . Several updates were released by Valve, the effects of which varied from complete fixes by some users to previously smooth systems becoming "infected" with the problem.
Most recently ( February 7 2006 ), changes to the Source engine were introduced alongside a Beta Test of Steam's Friends chat service, with the aim of 'narrowing down' the problem {Link without Title} . Looping Audio The Source Engine suffers from an error whereby the asynchronous loading (see Stutter, above) of a new sound file will cause the engine to lock up with looping audio. Because of the nature of DirectX , once the engine enters such a state it will remain on the screen unless the user can blindly terminate the program, or reboots their computer. The error occurs in a standard Windows Library associated with on-board Sound Card s, and can be resolved by decreasing DirectSound Acceleration {Link without Title} . Control There appear to be a few aspects of the Source engine which make player control problematic. One such aspect is the tendency of the game to unexpectedly supply a "push", thus unexpectedly propelling the character forwards or sideways. Two particular situations exist where this occurs; when disconnecting from a ladder and when falling from a platform. In both cases, the player character receives a significant "push", from nowhere. For example, if the player character is on a very narrow ledge over a high fall and is attempting to connect to a ladder, it is quite easy to connect without knowing that connection has occurred, since there is no indication of connection - no noise, no status indicator, etc. At that point, any movement away from the ladder leads to disconnection (since the player character is at the base of the ladder, where the game engine treats movement away from the ladder as a wish to disconnect). This causes the "push" which abruptly and uncontrollably propels the player off of the ledge. Likewise, if the player character edges extremely slowly off of a ledge into a fall, the moment the player character departs from the ledge, a sideways push is spontaneously applied. Another issue is that the engine doesn't necessarily respond well to simultaneous use of forward and jump; rather than a running jump, which is the player's intention, what occurs is a jump followed by very slow in-air forward movement. This tends to make rapid movements problematic, since when under pressure (combat, ceiling collapsing, incoming artillery, etc) there is a natural tendency on the part of the human player to operate quickly, which is antagonistic to the way in which the game engine requires the player to behave to achieve running jumps. Finally, control of movement up and down ladders is non-intuitive. When the player is on a ladder, his movement up or down is dictated by whether or not he is looking up or down - regardless of whether he pushes the backwards or forwards movement key. This is entirely opposite with the control of the player at all other times, where forwards and backwards control movement and the direction of view, up or down, has absolutely no effect whatsoever. In general it is well understood that forwards and backwards become up and down when on a ladder; unfortunately, HL2 does not adhere to this convention (whereas for example HL1 does). This leads to problems in situations where, for example, the player has stealthily inched up a ladder and noticed hostiles and explosive barrels nearby; the players view is angled up, so that his body can remain out of sight while his gun can fire at the top of a barrel. Having fired, the barrel begins to burn and the player dives down the ladder into cover - except, of course, in that precise moment where the player now needs to operate rapidly due to time constraints and the possibility of incoming fire and so has far less mental capability left over to manage the game engine, the instinctive pressing of the down key ("I want to move ''down'' the ladder") actually causes the player to rise ''up'' the ladder, since his view is angled up, and this leads to dismount from the top - in full view of all hostiles and probably close to a barrel which is about to explode. THE VALVE DEVELOPER COMMUNITY On the 28th June 2005, Valve opened the Valve Developer Community Wiki. The VDC replaced the previously available Source SDK documentation with a full MediaWiki-powered community site. Within a matter of days Valve reported that "the number of useful articles... nearly doubled". These new articles covered the previously undocumented '''' bot (added by the bot's author, Mike Booth ) and ''Half-Life 2'' AI, Source Control for Source engine mods, and more. LICENSED SOURCE GAMES Valve
From other developers
EXTERNAL LINKS
|
|
|