Software renderer: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
Line 43: Line 43:
* [[Vulkan]]
* [[Vulkan]]


== References ==
== External links ==
#[https://en.wikipedia.org/wiki/Quake_(video_game)#VQuake Wikipedia for Quake]
* {{w|Software rendering|}}
#[https://quake.fandom.com/wiki/VQuake| Quake fandom wiki]
* {{w|Quake (video_game#VQuake|VQuake}} on Wikipedia
*[https://quake.fandom.com/wiki/VQuake| Quake fandom wiki]


[[Category:Glossary]]
[[Category:Glossary]]
[[Category:Graphics API]]
[[Category:Graphics API]]

Revision as of 08:15, 8 April 2024

Stub

This article or section is a stub. You can help by expanding it.

A software renderer, such as those available in GoldSrc GoldSrc and id Tech 2 id Tech 2, uses the CPU to render 3D geometry, instead of a GPU. A 3D application using a software renderer can be considered to be running in software mode.

Software renderer often have limitations, and with the usage of CPU instead of GPU for rendering usually causes performance hit (especially for hardware at the time), thus, software renderer are largely deprecated in most games since early 2000s (and the Source Source engine requires DirectX (or OpenGL, Vulkan) compatible graphics card in order to play the game.

The GPU is still used for processing the 2D image generated from the software renderer, but no 3D hardware is used.

id Tech 2 Id Tech 2 Engine (VQuake) Software Renderer

Screenshot in-game of Quake Quake VQuake[1][2], using Software renderer.

Features

  • Visual improvements
  • Full 16-bit color
  • Bilinear filtering (reducing pixelation)
  • Improved dynamic lighting
  • Optional anti-aliasing

GoldSrc GoldSrc Engine Software Renderer

Screenshot in-game of Half-Life Half-Life, using Software renderer.

Features

  • Colored lighting - Quake simply had monotone lighting
  • Transparent textures - Glass can now be used in maps
  • Water ripple

Since 25th Anniversary

Software renderer support on Linux

Missing Features and Limits and Problems

  • Lack of texture filtering
  • 256x256 texture size limit
  • No Rudimentary Shadows support
  • Lower limits for drawing geometry
  • No Water waves
  • No Detailed textures
  • Overdraw from func_detail
  • Overbright lighting on MDLs (instead of only map geometry)

See also

External links