2025-06-13 23:59:36 +02:00
|
|
|
# Crafter.Graphics Examples
|
|
|
|
|
Welcome to the **Crafter.Graphics** examples folder!
|
|
|
|
|
Here you'll find a variety of demos to help you learn and experiment with the features of the `Crafter.Graphics` library.
|
|
|
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
|
To run any example, navigate into its folder and use the following command:
|
|
|
|
|
```bash
|
2025-11-16 18:52:52 +01:00
|
|
|
crafter-build build executable -r
|
2025-06-13 23:59:36 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Hello Series
|
|
|
|
|
This series explains the absolute basics.
|
|
|
|
|
|
|
|
|
|
1. **HelloWindow**
|
|
|
|
|
Basic window creation using Crafter.Graphics.
|
|
|
|
|
|
|
|
|
|
2. **HelloInput**
|
|
|
|
|
Handling keyboard and mouse input events.
|
|
|
|
|
|
|
|
|
|
3. **HelloDrawing**
|
|
|
|
|
Introduction to drawing on a window.
|
|
|
|
|
|
|
|
|
|
4. **HelloUI**
|
|
|
|
|
Creating and rendering user interface components.
|
|
|
|
|
|
|
|
|
|
## Vulkan Series
|
|
|
|
|
This series explains the vulkan integration.
|
|
|
|
|
|
|
|
|
|
1. **VulkanWindow**
|
|
|
|
|
HelloWindow vulkan edition.
|
|
|
|
|
|
|
|
|
|
2. **VulkanTraingle**
|
|
|
|
|
Introduction to drawing on a window.
|
|
|
|
|
|
|
|
|
|
3. **VulkanCube**
|
|
|
|
|
Creating a custom shader.
|
|
|
|
|
|
|
|
|
|
4. **VulkanShader**
|
|
|
|
|
Creating a custom shader.
|
|
|
|
|
|
|
|
|
|
## Notes
|
|
|
|
|
- Each example is self-contained and meant to be run individually.
|
|
|
|
|
- Make sure your environment is correctly set up with all dependencies required by `Crafter.Graphics`.
|
|
|
|
|
- A comaptible WSL envoirement can be set up by running these commands:
|
|
|
|
|
```cmd
|
|
|
|
|
wsl --update --pre-release
|
|
|
|
|
wsl --install archlinux --name crafter --no-launch
|
|
|
|
|
wsl -d crafter pacman -Syu vulkan-devel mesa vulkan-dzn clang git base-devel code libpqxx onetbb boost lld glslang code --noconfirm
|
|
|
|
|
wsl -d crafter bash -c "echo export GALLIUM_DRIVER=d3d12 > /etc/profile.d/wslg.sh"
|
|
|
|
|
wsl -d crafter ln -s /usr/lib/libedit.so /usr/lib/libedit.so.2
|
|
|
|
|
wsl --terminate crafter
|
|
|
|
|
```
|