MonoEngine: Difference between revisions
Jump to navigation
Jump to search
| (10 intermediate revisions by the same user not shown) | |||
| Line 12: | Line 12: | ||
| codelang = [[WP:C++|C++]], [[WP:C_(programming_language)|C]] | | codelang = [[WP:C++|C++]], [[WP:C_(programming_language)|C]] | ||
| sdk = [[SDK Docs|Source SDK Documentation]] | | sdk = [[SDK Docs|Source SDK Documentation]] | ||
| engine = Version 0.1 (Current Release) | |||
Version 0.2 (In Development) | |||
| platform = {{Win|1}} | | platform = {{Win|1}} | ||
| website = [https://contagion-game.com/ Official Website] | | website = [https://contagion-game.com/ Official Website] | ||
| Line 18: | Line 20: | ||
| nextengine = N/A | | nextengine = N/A | ||
}} | }} | ||
== Features == | == Features == | ||
List of {{monoengine|4.1}} engine features and capabilities | List of {{monoengine|4.1}} engine features and capabilities. | ||
=== [[:Category:Programming|Renderer]] === | === [[:Category:Programming|Renderer]] === | ||
* Supports [[Shader]] Model Versions | * Supports [[Shader]] Model Versions 3.0 | ||
* [[Anti-aliasing]] support (MSAA, FXAA, MLAA, TAA, etc.) | * [[Anti-aliasing]] support (MSAA, FXAA, MLAA, TAA, etc.) | ||
** See the [[Anti-aliasing]] page for more information, plus features & drawbacks with various anti-aliasing methods. | ** See the [[Anti-aliasing]] page for more information, plus features & drawbacks with various anti-aliasing methods. | ||
| Line 35: | Line 33: | ||
** Compared to GoldSrc (prior to 2013) featuring only Bilinear or Trilinear texture filtering, {{src|name}} features more texture filtering options, ranging from Bilinear, Trilinear, Anisotropic 2x up to 16x. | ** Compared to GoldSrc (prior to 2013) featuring only Bilinear or Trilinear texture filtering, {{src|name}} features more texture filtering options, ranging from Bilinear, Trilinear, Anisotropic 2x up to 16x. | ||
* Support for both forward, [[deferred lighting|deferred]] and [[Clustered rendering|clustered]] rendering pipelines. | * Support for both forward, [[deferred lighting|deferred]] and [[Clustered rendering|clustered]] rendering pipelines. | ||
** | ** MonoEngine uses the deferred renderer as of version '''0.2''', while {{contagion|2}} uses uses forward renderer. | ||
** Deferred rendering is a rendering technique that allows games to render many dynamic lights with little performance impact. Deferred rendering is commonly used in most modern titles | ** Deferred rendering is a rendering technique that allows games to render many dynamic lights with little performance impact. Deferred rendering is commonly used in most modern titles. | ||
* [[Wikipedia:Bump mapping|Bump mapping]] and [[w:Normal mapping|Normal mapping]] on models and the world | * [[Wikipedia:Bump mapping|Bump mapping]] and [[w:Normal mapping|Normal mapping]] on models and the world | ||
* Authoring of [[shader]]s with [[HLSL]] | * Authoring of [[shader]]s with [[HLSL]] | ||
* Cube and environment mapping | * Cube and environment mapping | ||
** | ** Parallax cubemapping is also supported {{contagion|since}} | ||
* [[$phong|Phong]] shading for models | * [[$phong|Phong]] shading for models | ||
** Phong is also supported on world brushes {{ | ** Phong is also supported on world brushes {{flatline|since}} | ||
* Dynamic lights, vertex lighting and [[lightmap]]s, including many light types including flickering, pulsing etc. | * Dynamic lights, vertex lighting and [[lightmap]]s, including many light types including flickering, pulsing etc. | ||
* [[HDR]] {{since|{{dods}}}} and LDR (SDR) lighting | * [[HDR]] {{since|{{dods}}}} and LDR (SDR) lighting | ||
** HDR is introduced with the release of {{dods|4}} (and {{hl2lc}} a month later), running on updated version of {{src04|1}}. HDR rendering works by automatically adjust exposure and "blooming" colors above 100% brightness into neighboring areas, then collapsing the image into SDR color range, resulting an image appears to have higher color saturation and improved contrast, compared to SDR (LDR) rendering. | ** HDR is introduced with the release of {{dods|4}} (and {{hl2lc}} a month later), running on updated version of {{src04|1}}. HDR rendering works by automatically adjust exposure and "blooming" colors above 100% brightness into neighboring areas, then collapsing the image into SDR color range, resulting an image appears to have higher color saturation and improved contrast, compared to SDR (LDR) rendering. | ||
** LDR is deprecated since {{ | ** LDR is deprecated since {{l4d2|2}}. This does not apply to some games such as the original release of {{dota2|1}}, for example. | ||
** {{confusion|''Not to be confused with "HDR display output"'', which actually renders the image at higher brightness & better contrast than a SDR monitor is capable of. The Source engine, by default, does not support HDR display output, except in {{apex|2}} on consoles.}} | ** {{confusion|''Not to be confused with "HDR display output"'', which actually renders the image at higher brightness & better contrast than a SDR monitor is capable of. The Source engine, by default, does not support HDR display output, except in {{apex|2}} on consoles.}} | ||
* Water with refraction, real-time world reflections and Fresnel effects | * Water with refraction, real-time world reflections and Fresnel effects | ||
** Water also supports [[Water (shader)#Special behaviour|flow mapping]] {{ | ** Water also supports [[Water (shader)#Special behaviour|flow mapping]] {{l4d2|since}} | ||
* [[:Category:Particle System|Advanced particle systems]] that can emit [[sprite]]s or [[model]]s | * [[:Category:Particle System|Advanced particle systems]] that can emit [[sprite]]s or [[model]]s | ||
* [[Dynamic RTT shadow angles in Source 2007|Render-to-texture]] shadows allow for a large number of characters per scene {{ | * [[Dynamic RTT shadow angles in Source 2007|Render-to-texture]] shadows allow for a large number of characters per scene {{l4d2|since}} | ||
* [[Func occluder|Occluder entities]] for visibility blocking | * [[Func occluder|Occluder entities]] for visibility blocking | ||
* Indoor/Outdoor environments | * Indoor/Outdoor environments | ||
| Line 58: | Line 55: | ||
** [[3D Skybox|3D skyboxes]] can extend the horizon and add parallax on distant objects | ** [[3D Skybox|3D skyboxes]] can extend the horizon and add parallax on distant objects | ||
** Dynamically rendered organics (grass, trees, etc.) | ** Dynamically rendered organics (grass, trees, etc.) | ||
**[[$treeSway|Swaying trees]] {{ | **[[$treeSway|Swaying trees]] {{l4d2|since}} {{also|{{tf2branch}}{{xe}}{{gmod}}{{mapbase}}}} | ||
* Subdivision surfaces, diffuse & specular bump maps | * Subdivision surfaces, diffuse & specular bump maps | ||
* Real-time radiosity lighting | * Real-time radiosity lighting | ||
* Real-time [[ | * Real-time [[CSM|Cascaded Shadow Mapping]] {{flatline|since}} | ||
** In version '''0.2''', The entire rendering pipeline for lighting has been fully replaced, which made {{VRAD|2}} fully obsolete. | |||
* Effects that include but are not limited to: particles, beams, volumetric smoke, sparks, blood, and environmental effects like fog and rain | * Effects that include but are not limited to: particles, beams, volumetric smoke, sparks, blood, and environmental effects like fog and rain | ||
** [[Radial fog]], which prevents strengthen or weaken the fog effect when rotating the camera. Replaces planar-based fog. {{ | ** [[Radial fog]], which prevents strengthen or weaken the fog effect when rotating the camera. Replaces planar-based fog. {{l4d2|since}} {{also|{{tf2branch}}, {{hl2}} 20th, {{mapbase}}}} | ||
* Scalability | * Scalability | ||
* [[Screen Space Ambient Occlusion (SSAO)|Screen Space Ambient Occlusion]] (SSAO) {{ | * [[Screen Space Ambient Occlusion (SSAO)|Screen Space Ambient Occlusion]] (SSAO) {{flatline|since}} | ||
** A technique for efficiently approximating the ambient occlusion effect in real time. | ** A technique for efficiently approximating the ambient occlusion effect in real time. | ||
* Widescreen display support | * Widescreen display support | ||
** {{Source|name}} is one of the earliest game engines to support Widescreen monitors natively (16:9 and 16:10 aspect ratio) without stretching the image, while most games from that era are usually designed for 4:3/5:4 displays only.<br> Games such as {{hl2|1}} supported widescreen displays at launch in 2004, with horizontal FOV (field of view), allow you to see more details. | ** {{Source|name}} is one of the earliest game engines to support Widescreen monitors natively (16:9 and 16:10 aspect ratio) without stretching the image, while most games from that era are usually designed for 4:3/5:4 displays only.<br> Games such as {{hl2|1}} supported widescreen displays at launch in 2004, with horizontal FOV (field of view), allow you to see more details. | ||
* [[Physically Based Rendering|Physically Based Rendering]] {{ | * [[Physically Based Rendering|Physically Based Rendering]] {{flatline|since}} | ||
* [[Parallax mapping|Parallax Occlusion Mapping]]{{ | * [[Parallax mapping|Parallax Occlusion Mapping]] {{flatline|since}} | ||
* Support of various graphical backends (such as Direct3D, OpenGL | * Support of various graphical backends (such as Direct3D, OpenGL) | ||
* Direct3D versions | * Direct3D versions | ||
** [[DirectX Versions#DirectX_9|Direct3D 9]] | ** [[DirectX Versions#DirectX_9|Direct3D 9]] | ||
*** On earlier versions of Source ({{src04|1}} up to {{src13|1}}), it had a Hardware DirectX level system (similar to [[Wikipedia:Direct3D#Feature_levels|feature level system]] in Direct3D 10 and later) that allowed the game to render on older GPUs supporting only DirectX 8.0, 8.1 (Pixel Shader 1.x), by disabling DirectX 9-only graphical features not available on these older cards. Previous versions of Source ({{src04}} and {{src06}}), as well as Source 2013 RTX Remix games, also had support for DirectX 7.0 and 6.0 render paths. This can be changed using the {{code|[[mat_dxlevel]]}} console command, or by using the {{code|-dxlevel}} [[command line argument|launch option]]. | *** On earlier versions of Source ({{src04|1}} up to {{src13|1}}), it had a Hardware DirectX level system (similar to [[Wikipedia:Direct3D#Feature_levels|feature level system]] in Direct3D 10 and later) that allowed the game to render on older GPUs supporting only DirectX 8.0, 8.1 (Pixel Shader 1.x), by disabling DirectX 9-only graphical features not available on these older cards. Previous versions of Source ({{src04}} and {{src06}}), as well as Source 2013 RTX Remix games, also had support for DirectX 7.0 and 6.0 render paths. This can be changed using the {{code|[[mat_dxlevel]]}} console command, or by using the {{code|-dxlevel}} [[command line argument|launch option]]. | ||
*** {{Note|This DirectX level system was deprecated in {{ | *** {{Note|This DirectX level system was deprecated in {{l4d2|1}}.<br>Also, this DirectX level system doesn't actually affect or change Direct3D versions as Source games will always run on Direct3D 9.}} | ||
* [[OpenGL]]{{src09|since|addtext= /{{srcmp}}}} which is another graphics API used in Source games on {{mac|1}} and {{Linux|1}}. | * [[OpenGL]]{{src09|since|addtext= /{{srcmp}}}} which is another graphics API used in Source games on {{mac|1}} and {{Linux|1}}. | ||
** Source Engine ships with ToGL to translate Direct3D (DirectX) calls to OpenGL, and uses {{code|dxlevel 92}}, which is the [[OpenGL]] equivalent to DirectX 9 Shader Model 3 (D3D9.0c). | ** Source Engine ships with ToGL to translate Direct3D (DirectX) calls to OpenGL, and uses {{code|dxlevel 92}}, which is the [[OpenGL]] equivalent to DirectX 9 Shader Model 3 (D3D9.0c). | ||
{{note|Source allows up to 8 [[LOD Models]], although it does not have automatic [[w:Level of detail (computer graphics)|level of detail]] out of box. Manual LoD is supported, however.}} | {{note|Source allows up to 8 [[LOD Models]], although it does not have automatic [[w:Level of detail (computer graphics)|level of detail]] out of box. Manual LoD is supported, however.}} | ||
=== [[:Category:Material System|Materials System]] === | === [[:Category:Material System|Materials System]] === | ||
| Line 93: | Line 87: | ||
* Prediction analysis for interpolating collision/hit detection | * Prediction analysis for interpolating collision/hit detection | ||
* Optimizations for high-latency, high-packet-loss 56k connections | * Optimizations for high-latency, high-packet-loss 56k connections | ||
* [https://partner.steamgames.com/doc/features/multiplayer/networking Steam Networking] support {{ | * [https://partner.steamgames.com/doc/features/multiplayer/networking Steam Networking] support {{since|{{contagion}}{{flatline}}{{zp2}}}} | ||
** Allows self-hosting using [https://partner.steamgames.com/doc/features/multiplayer/steamdatagramrelay Steam Datagram Relay], meaning users can easily create joinable servers without port forwarding. | ** Allows self-hosting using [https://partner.steamgames.com/doc/features/multiplayer/steamdatagramrelay Steam Datagram Relay], meaning users can easily create joinable servers without port forwarding. | ||
| Line 204: | Line 198: | ||
** View normals | ** View normals | ||
** View the map in wireframe, shaded or textured view modes | ** View the map in wireframe, shaded or textured view modes | ||
* | * {{Studiomdl|2|nt=1}} | ||
** Model compiler | ** Model compiler | ||
* | * {{VBSP|2|nt=1}}, {{VRAD|2|nt=1}}, {{VVIS|2|nt=1}}, {{VMPI|2|nt=1}} | ||
** Map compilation tools ([[BSP_(Source)|BSP]], lighting and visibility) | ** Map compilation tools ([[BSP_(Source)|BSP]], lighting and visibility) | ||
** VMPI - distributed compilation tool allowing level compiles to be spread across many PCs greatly reducing compile times | ** {{VMPI|2}} - distributed compilation tool allowing level compiles to be spread across many PCs greatly reducing compile times | ||
** {{VRAD|2}} has been deprecated since the new rendering system was introduced {{flatline|since}} | |||
* Exporters | * Exporters | ||
** [[:Category:XSI|XSI]], Max and Maya {{code|.smd}} exporters for exporting 3D models | ** [[:Category:XSI|XSI]], Max and Maya {{code|.smd}} exporters for exporting 3D models | ||
Latest revision as of 00:37, 25 August 2025
id Tech 2 ▶
GoldSrc ▶
Source ▶
MonoEngine
Monochrome Game Engine
Screenshot in-game of Contagion, using the MonoEngine, running on version 0.1.
Developer(s)
Release date(s)
July 18, 2025 Note
Platform(s)
Engine
Version 0.1 (Current Release)
Version 0.2 (In Development)
License
Official website
Predecessor
Successor
N/A
Features
List of
MonoEngine engine features and capabilities.
Renderer
- Supports Shader Model Versions 3.0
- Anti-aliasing support (MSAA, FXAA, MLAA, TAA, etc.)
- See the Anti-aliasing page for more information, plus features & drawbacks with various anti-aliasing methods.
- More anisotropic and texture filtering options
- Anisotropic filtering allows textures on far distances to look sharper and less blurry.
- Compared to GoldSrc (prior to 2013) featuring only Bilinear or Trilinear texture filtering, Source features more texture filtering options, ranging from Bilinear, Trilinear, Anisotropic 2x up to 16x.
- Support for both forward, deferred and clustered rendering pipelines.
- MonoEngine uses the deferred renderer as of version 0.2, while
Contagion uses uses forward renderer. - Deferred rendering is a rendering technique that allows games to render many dynamic lights with little performance impact. Deferred rendering is commonly used in most modern titles.
- MonoEngine uses the deferred renderer as of version 0.2, while
- Bump mapping and Normal mapping on models and the world
- Authoring of shaders with HLSL
- Cube and environment mapping
- Parallax cubemapping is also supported (in all games since
)
- Parallax cubemapping is also supported (in all games since
- Phong shading for models
- Phong is also supported on world brushes (in all games since
)
- Phong is also supported on world brushes (in all games since
- Dynamic lights, vertex lighting and lightmaps, including many light types including flickering, pulsing etc.
- HDR (in all games since Template:Dods) and LDR (SDR) lighting
- HDR is introduced with the release of Template:Dods (and Template:Hl2lc a month later), running on updated version of Source 2004. HDR rendering works by automatically adjust exposure and "blooming" colors above 100% brightness into neighboring areas, then collapsing the image into SDR color range, resulting an image appears to have higher color saturation and improved contrast, compared to SDR (LDR) rendering.
- LDR is deprecated since
Left 4 Dead 2. This does not apply to some games such as the original release of Template:Dota2, for example. - Template:Confusion
- Water with refraction, real-time world reflections and Fresnel effects
- Water also supports flow mapping (in all games since
)
- Water also supports flow mapping (in all games since
- Advanced particle systems that can emit sprites or models
- Render-to-texture shadows allow for a large number of characters per scene (in all games since
) - Occluder entities for visibility blocking
- Indoor/Outdoor environments
- Deformable terrain
- 3D skyboxes can extend the horizon and add parallax on distant objects
- Dynamically rendered organics (grass, trees, etc.)
- Swaying trees (in all games since
) Template:Also
- Subdivision surfaces, diffuse & specular bump maps
- Real-time radiosity lighting
- Real-time Cascaded Shadow Mapping (in all games since
)
- In version 0.2, The entire rendering pipeline for lighting has been fully replaced, which made Template:VRAD fully obsolete.
- Effects that include but are not limited to: particles, beams, volumetric smoke, sparks, blood, and environmental effects like fog and rain
- Radial fog, which prevents strengthen or weaken the fog effect when rotating the camera. Replaces planar-based fog. (in all games since
) Template:Also
- Radial fog, which prevents strengthen or weaken the fog effect when rotating the camera. Replaces planar-based fog. (in all games since
- Scalability
- Screen Space Ambient Occlusion (SSAO) (in all games since
)
- A technique for efficiently approximating the ambient occlusion effect in real time.
- Widescreen display support
- Source is one of the earliest game engines to support Widescreen monitors natively (16:9 and 16:10 aspect ratio) without stretching the image, while most games from that era are usually designed for 4:3/5:4 displays only.
Games such as Half-Life 2 supported widescreen displays at launch in 2004, with horizontal FOV (field of view), allow you to see more details.
- Source is one of the earliest game engines to support Widescreen monitors natively (16:9 and 16:10 aspect ratio) without stretching the image, while most games from that era are usually designed for 4:3/5:4 displays only.
- Physically Based Rendering (in all games since
) - Parallax Occlusion Mapping (in all games since
) - Support of various graphical backends (such as Direct3D, OpenGL)
- Direct3D versions
- Direct3D 9
- On earlier versions of Source (Source 2004 up to Template:Src13), it had a Hardware DirectX level system (similar to feature level system in Direct3D 10 and later) that allowed the game to render on older GPUs supporting only DirectX 8.0, 8.1 (Pixel Shader 1.x), by disabling DirectX 9-only graphical features not available on these older cards. Previous versions of Source (Source 2004 and Source 2006), as well as Source 2013 RTX Remix games, also had support for DirectX 7.0 and 6.0 render paths. This can be changed using the mat_dxlevel console command, or by using the -dxlevel launch option.
Note:This DirectX level system was deprecated in Left 4 Dead 2.
Also, this DirectX level system doesn't actually affect or change Direct3D versions as Source games will always run on Direct3D 9.
- Direct3D 9
- OpenGL(in all games since Source 2009/Template:Srcmp) which is another graphics API used in Source games on Template:Mac and Template:Linux.
- Source Engine ships with ToGL to translate Direct3D (DirectX) calls to OpenGL, and uses dxlevel 92, which is the OpenGL equivalent to DirectX 9 Shader Model 3 (D3D9.0c).
Materials System
- Instead of traditional textures, Source defines sets of materials that specify what the object is made from and the texture used for that object. A material specifies how an object will fracture when broken, what it will sound like when broken/interacted with, and what that object's mass and buoyancy are. This system is much more flexible than older texture-only systems.
- Materials can interact with objects or NPCs, such as mud or ice for vehicles to slide/lose traction on.
Multiplayer Network Code
- Time- and gamer-tested by millions of people around the world
- Support for both LAN-based multiplayer and Internet-based multiplayer games
- Prediction analysis for interpolating collision/hit detection
- Optimizations for high-latency, high-packet-loss 56k connections
- Steam Networking support (in all games since


)
- Allows self-hosting using Steam Datagram Relay, meaning users can easily create joinable servers without port forwarding.
Advanced Characters
- Detailed and believable characters
- Realistic eyes
- Focus on player/object, not simply parallel views
- Proper eye bulge for realistic eye reflections
- Simulated musculature provides outstanding emotions, speech, and body language
- Language independent speech, characters can speak naturally in many languages
- Skeletal/bone system for animation
- Layered animation system can synthesize complex animations out of several pieces
Physics
- MonoEngine uses a modified open source physics engine called Jolt.
- A more responsive world with more realistic interactions
- AI characters can interact with physically simulated objects
- Includes support for ropes/cables, machines, constraint systems, and ragdoll physics
- Can be controlled by level design
- Kinematic animated bone followers
- Custom procedural physics controllers
- Vehicles
- Wheels slip and skid
- Realistic suspensions with springs on each wheel
- Realistic leaning during acceleration/deceleration and turning
- Individually tunable parameters such as horsepower, gearing, max speed, shift speed, tire material, tire friction, spring tension/dampening, etc.
- Multiple players/NPCs in a vehicle
- Hovercraft support for cheaper simulation
Advanced AI
- I/O system allows level designers to control AI
- Sophisticated navigation: characters that run, fly, jump, crouch, climb stairs and ladders, and burrow underground
- AI that senses things using sight, sound, and smell
- AI relationships determine friend/foe status of other entities
- Battle AI allows squads of AI characters to operate together, knowing when to advance, retreat, lay cover, fire, etc.
Sound System
- Uses the Audiokinetic Wwise as middleware (only in
)
- In Monoengine 0.2 and onward, Audiokinetic Wwise has been replaced with the open source solution
Steam Audio Github page (in all games since
)
- In Monoengine 0.2 and onward, Audiokinetic Wwise has been replaced with the open source solution
- Support 7.1, 5.1 surround sound, 4 speaker surround
- High-quality 3D spatialization
- Custom software DSP
- Automatic DSP based on environmental geometry
- Microsoft ADPCM-compressed WAV files
- 16-bit 44.1 KHz (CD Quality), stereo wave data with all features
Note:Source does not support 48 KHz audio (DVD Quality) by default.
- MP3 decompression
- MP3 decompression has been replaced with
MiniMP3 Github page (in all games since
)
- MP3 decompression has been replaced with
- Support for audio streaming on any wave Template:Clarify
- Real-time wave file stitching Template:Clarify
- Pre-authored Doppler effect encoded waves
- Pre-authored distance variant encoded waves
- Commentary system
UI
- Server browser — Displays all active game servers and allows a player to choose which one to participate in. Players can filter and sort server lists to speed up the display and selection of a server.
- VGUI — Valve's custom GUI interface mimics OS windows but renders them using the Source engine for both in game and out of game uniform UI display.
Input
Source supports the following input and controller APIs:
- DirectInput - this method is supported in previous Source branches (Source 2004, Source 2006).
- XInput - Introduced with Source 2007 Source 2007, this allows the game to be controlled using Xbox 360, Xbox One & Series X/S controllers. On some Source games this was superseded by the Steam Input API, but can be re-enabled by disabling the Steam Input API.
- Steam Input API - control the game using almost any controller (Xbox, PlayStation, Nintendo, and others).
- Controller APIv1 (in all games since
)
- Steam Deck controller support
- Supports Double Input for a single button (HOLD X/Tap X)
- Controller APIv2 - A brand new controller support API written to future proof any new controller (in all games since
)
Programming
- Source natively support various CPU architectures, such as x86 (PC and 8th, 9th-gen Consoles), ARM (Template:Android, Template:Switch), PowerPC (Template:360, Template:Ps3), and more, with both 32 and 64-bit.
- All code is written in C/C++ using Visual Studio .NET 2025 and later.
- Linux versions are compiled using Valve's vcpm tool (only relevant for Source 2007) and the GNU Compiler Collection.
- You can easily and quickly derive new entities from existing base classes.
- There is a internal context sensitive performance monitoring system
- Graphics performance measurement tools are built into the engine
- Modular code design (via DLLs) allow swapping out of core components for easy upgrading or code replacement
- The VScript scripting system allows using external coding languages (such as Template:Sq and Template:Angelscript) to be used in maps to create more complex systems (in all games since
)
- Template:Sq has been deprecated since 2022, and has been replaced entirely by Template:Angelscript (in all games since
)
- Template:Sq has been deprecated since 2022, and has been replaced entirely by Template:Angelscript (in all games since
Tools
- Template:Hlfaceposer
- Facial expression tool used to craft speech and emotions
- Template:Hammer
- WYSIWYG World editor
- Create world brushes
- Terrain editor
- Place detailed world models and AI NPCs
- Set navigation points/paths for NPCs
- Place triggers, clip brushes, logic, etc.
- Allows level designers to hook up I/O between entities to control AI within the game
- Template:Hlmv
- Full model previewer
- Rotate models in any direction
- Able to setup hit boxes
- View physics hull
- View normals
- View the map in wireframe, shaded or textured view modes
- Template:Studiomdl
- Model compiler
- Template:VBSP, Template:VRAD, Template:VVIS, Template:VMPI
- Map compilation tools (BSP, lighting and visibility)
- Template:VMPI - distributed compilation tool allowing level compiles to be spread across many PCs greatly reducing compile times
- Template:VRAD has been deprecated since the new rendering system was introduced (in all games since
)
- Exporters
- XSI, Max and Maya .smd exporters for exporting 3D models
