Xash3D

From Valve Developer Community
Revision as of 23:59, 2 July 2023 by NOUG4AT (talk | contribs)
Jump to navigation Jump to search

Xash3D Xash3D is a game engine that is almost fully compatible with GoldSrc GoldSrc. Xash3D is based on the source codes of engines like Quake engine, Id Tech 2, Id Tech 3, and DarkPlaces. The engine allows running most games and mods on GoldSrc, but unlike the latter, it has significant improvements.

Differences from GoldSrc

  • Unlike the GoldSource engine, Xash doesn’t use a modular architecture.
  • Xash is written in pure C, while GoldSrc is written in C/C++.
  • Xash supports both pre-caching and on-demand loading of resources, while GoldSrc only pre-caches resources.
  • Support for BSP maps in formats such as Quake 1, Half-Life, and Half-Life Blue Shift.
  • Xash is not bound to the native directory of Half-Life (the “valve” folder), and the mod directory can be specified in the launcher if needed. This allows for the creation of independent games separate from Half-Life.
  • Support for ambient maps (as in Half-Life 2).
  • Xash doesn’t require unused WAD files, and resources that are not actually used on the loaded map.
  • Transparent file system, allowing for accessing files in archives using the same methods as files outside archives.
  • Support for colored messages in the console (using the “^” tag).
  • Directly changing the sky type and rotation on a map.
  • Support for detail textures (as in CS:CZ).
  • Mirrored surfaces.
  • Support for HD textures.
  • Separate physical and graphical interfaces to provide more functionality and customization.
  • More efficient occlusion culling system, increasing FPS and reducing “r_speeds”.
  • Extended resource limits that can be customized for mod requirements through the gameinfo.txt file. Reducing limits can save more RAM in mods that don’t require many edicts (server entities). The MAX_EDICTS parameter is also transmitted from the server during multiplayer sessions, allowing clients to automatically adjust to new conditions.