Getting Access
In order to get access to Hazel source code and make use of the page below you have to make sure you are a Patreon Supporter III or above. This is the best way of supporting the development of Hazel and it's technologies.
Requirements
One of our goals is to make Hazel as easy as possible to build - if you're having any difficulties or weird errors, please let us know. We currently only support building on Windows 10 and Windows 11 with Visual Studio 2022, Visual Studio 2019 is no longer supported. The minimum supported version of Visual Studio 2022 is 17.2.0, Hazel may not compile on versions before that. You also need the following installed:
Here you'll find a list of all the third-party tools and SDKs that you'll need to install in order to build Hazel:
Make sure that you add everything except for the .NET Framework SDK to your PATH environment variable. Most likely the installers will give you the option to so automatically.
Building and Running
Assuming that's all installed and ready to go, you can proceed with the following:
- Clone the repository:
git clone --recursive https://github.com/StudioCherno/Hazel.git
- Add an environment variable called
HAZEL_DIR
that contains the file path to the root Hazel folder (e.gC:/Dev/Hazel
) - Run
Scripts/Setup.bat
- this will download required libraries and make sure everything is setup correctly - Open
Hazel.sln
and build eitherDebug
orRelease
x64
- Hazelnut should be the startup project so really you can just hitF5
to build and debug the startup project. By default, this will load the Sandbox project found inHazelnut/SandboxProject/Sandbox.hproj
- Open
Hazelnut/SandboxProject/Sandbox.sln
and build in eitherDebug
orRelease
. This will build the C# module of the Sandbox project which is necessary to properly play the various scenes in the project.
.NET SDK
Hazel makes use of C# as a scripting language, and because of that we also provide a "Hazel-ScriptCore" project, which contains Hazels C# API. This however means that in order to build Hazel you need to have the .NET SDK installed. Hazel makes use of .NET 8.0, and all projects that are made in Hazel also use that specific version.
If you're using Visual Studio to build Hazel you'll have to open the Visual Studio Installer program, and make sure you've selected the ".NET desktop development" workload from the "Workloads" tab, you can find an example of this in the image below.
You may be required to restart your computer after installing the workload.
Vulkan
Hazel requires Vulkan SDK 1.3.204.1 to be installed, and the VULKAN_SDK
environment variable set to your installation path. If you do not have the correct version installed, the Setup script should offer to download and install the correct version for you.
The Vulkan SDK installer now offers to download and install shader debug libraries - you must install these libraries if you would like to build Hazel in the Debug configuration. To do so, simply check the (Optional) Debuggable Shader API Libraries - 64 bit
option in the Select Components
part of the installer, as seen in the image below.
You can also download and install the Vulkan SDK manually if you wish, or if the Setup scripts have failed.
Pulling the latest code
The master
branch is required to always be stable, so there should never be any build errors or major faults. Once you've pulled the latest code, remember to run Scripts/Setup.bat
again to make sure that any new files or configuration changes will be applied to your local environment.
Supported Platforms
Here you can find a list of the platforms that Hazel currently supports.
If you can't find the platform you're looking for on this page you should assume that Hazel does not currently, and most likely never will, support that platform.
Fully Supported
These are the platforms that Hazel has been tested on, and we've determined that Hazel should run without any serious problems.
If you find an issue relating to any of these platforms please open an issue here: https://github.com/StudioCherno/Hazel/issues
- Windows 10 (64-bit)
- Windows 11 (64-bit)
NOTE: Hazel currently only considers 64-bit Windows versions supported, and it's unlikely that 32-bit support will ever be added
Unsupported Platforms
These are platforms that Hazel most likely won't work on.
- Windows 7
- MacOS
- Linux Based Platforms (May eventually be supported)
Supported Editors + Toolchains
Hazel will in theory support any IDE or toolchain that https://premake.github.io/docs/Using-Premake#using-premake-to-generate-project-files supports, however we've only tested the toolchains/IDEs listed below.
- Visual Studio 2022
- CodeLite