Counter-Strike 2-style responsive smoke in HL1. Some creative liberties were taken, such as:
Inspired by this video.
Most of the work was done in 9 hours (commits 43dbc5
to 8c7aa2
).
Runs pretty fast, 4000 particles take about 50-60 μs to process and maybe 2 to 3x as much to render (RTX 3060, i5 8400). Can't reliably profile the GPU here, but it should all be under a couple milliseconds though. There are plans to do further optimisations and to enhance the visuals.
There are some issues at the moment:
How it looks:
Not available yet, please remain patient as this is an early work in progress. You can compile the code yourself if you know how, and don't forget to copy the smoke sprite asset:
sprites/smokesim/smoke.spr
Half Life 1 SDK Copyright© Valve Corp.
THIS DOCUMENT DESCRIBES A CONTRACT BETWEEN YOU AND VALVE CORPORATION (“Valve”). PLEASE READ IT BEFORE DOWNLOADING OR USING THE HALF LIFE 1 SDK (“SDK”). BY DOWNLOADING AND/OR USING THE SOURCE ENGINE SDK YOU ACCEPT THIS LICENSE. IF YOU DO NOT AGREE TO THE TERMS OF THIS LICENSE PLEASE DON’T DOWNLOAD OR USE THE SDK.
You may, free of charge, download and use the SDK to develop a modified Valve game running on the Half-Life engine. You may distribute your modified Valve game in source and object code form, but only for free. Terms of use for Valve games are found in the Steam Subscriber Agreement located here: http://store.steampowered.com/subscriber_agreement/
You may copy, modify, and distribute the SDK and any modifications you make to the SDK in source and object code form, but only for free. Any distribution of this SDK must include this license.txt and third_party_licenses.txt.
Any distribution of the SDK or a substantial portion of the SDK must include the above copyright notice and the following:
DISCLAIMER OF WARRANTIES. THE SOURCE SDK AND ANY OTHER MATERIAL DOWNLOADED BY LICENSEE IS PROVIDED “AS IS”. VALVE AND ITS SUPPLIERS DISCLAIM ALL WARRANTIES WITH RESPECT TO THE SDK, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, TITLE AND FITNESS FOR A PARTICULAR PURPOSE.
LIMITATION OF LIABILITY. IN NO EVENT SHALL VALVE OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE ENGINE AND/OR THE SDK, EVEN IF VALVE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
If you would like to use the SDK for a commercial purpose, please contact Valve at sourceengine@valvesoftware.com.
This is the README for the Half-Life 1 engine and its associated games.
Please use this repository to report bugs and feature requests for Half-Life 1 related products.
If you encounter an issue while using Half-Life 1 games, first search the issue list to see if it has already been reported. Include closed issues in your search.
If it has not been reported, create a new issue with at least the following information:
version
output from the in‐game console.Please place logs either in a code block (press M
in your browser for a GFM cheat sheet) or a gist.
* The preferred and easiest way to get this information is from Steam's Hardware Information viewer from the menu (Help -> System Information
). Once your information appears: right-click within the dialog, choose Select All
, right-click again, and then choose Copy
. Paste this information into your report, preferably in a code block.
There are basic rules of conduct that should be followed at all times by everyone participating in the discussions. While this is generally a relaxed environment, please remember the following:
Remember: Just because the issue you reported was reported here does not mean that it is an issue with Half-Life. As well, should your issue not be resolved immediately, it does not mean that a resolution is not being researched or tested. Patience is always appreciated.