Source

From Source Entities
Jump to navigation Jump to search
GoldSrcSourceSource 2
A complex scene from Half-Life 2. One human NPC operates a crane while one shoots another NPC with a mounted gun. The dune buggy is lifted by the crane before being dropped on the bumpy, uneven terrain below. There is also a glowing sun and water that seems to stretch forever, thanks to fog and a 3D skybox.
Another screenshot, from Counter-Strike: Global Offensive.
Portal 2 supports splitscreen, and can render convincing 3D blob particles that can morph together.

Source is a 3D video game engine developed by Valve Corporation. It debuted as the successor to GoldSrc with Counter-Strike: Source in June 2004, followed shortly by Half-Life 2 in November. Source implemented many new features and optimizations that GoldSrc did not have.

Rendering[edit | edit source]

  • Bumpmapping.
  • Phong shading.
  • Moving lights.
  • Water with refractions, realtime reflections, and flow maps.
  • Advanced particle system that can emit sprites or models.
  • Deformable terrain.
  • 3D skyboxes extend the horizon and add parallax on distant objects.
  • Static reflections.
  • Cascaded shadow mapping.
  • Cheap render-to-texture shadows make objects look like they occupy a real space.
  • Effects such as smoke, fog and rain

Characters[edit | edit source]

  • Characters that run, fly, jump, crouch, climb stairs and ladders, and burrow underground
  • Eyes can move separately from heads.
  • Support for many spoken languages.
  • Battle AI allows squads of AI characters to operate together, know when to advance, retreat, lay cover fire, etc.

Physics[edit | edit source]

  • Objects are free to move around in the world and rotate freely.
  • Ragdoll physics.
  • Vehicles, with individually simulated wheels. Vehicles have individually tunable parameters such as horsepower, gearing, max speed, shift speed, tire material, tire friction, spring tension/dampening etc.

Sound[edit | edit source]

  • Digital Signal Processing.
  • 16-bit wav standard.
  • Textures can dictate how much sound they absorb.

Programming[edit | edit source]

  • Mainly written in C++. Many games have their source code available publicly.
  • Input/Output system allows level designers to control objects much more powerfully than before.
  • Squirrel and Lua scripts offer even more complexity.