Crafter.Graphics/example
2025-06-13 23:59:36 +02:00
..
HelloDrawing documentation 2025-06-13 23:59:36 +02:00
HelloInput documentation 2025-06-13 23:59:36 +02:00
HelloUI documentation 2025-06-13 23:59:36 +02:00
HelloWindow documentation 2025-06-13 23:59:36 +02:00
VulkanCube documentation 2025-06-13 23:59:36 +02:00
VulkanShader documentation 2025-06-13 23:59:36 +02:00
VulkanTriangle documentation 2025-06-13 23:59:36 +02:00
VulkanWindow documentation 2025-06-13 23:59:36 +02:00
README documentation 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
crafter-build -c example -r
```

## 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
```