# Build directories
build/
build_asan/
build-debug/
build-sanitize/
bin/
lib/

# CMake
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
Makefile
*.cmake
!CMakeLists.txt
# Hand-written CMake modules live in cmake/ and are source, not build output.
!cmake/*.cmake

# Compiled Object files
*.o
*.obj
*.slo
*.lo
*.spv

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Compiled Static libraries
*.a
*.lib
*.la

# Executables
*.exe
*.out
*.app
wowee

# Claude Code internal state
.claude/

# IDE files
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store

# Compilation database (regenerated by cmake)
compile_commands.json

# Language server caches
.ccls
.ccls-cache/
.cache/clangd/

# Tags
tags
TAGS
.tags
cscope.out

# External dependencies (except submodules and vendored headers)
extern/*
!extern/.gitkeep
!extern/catch2
!extern/imgui
!extern/vk-bootstrap
!extern/FidelityFX-SDK
!extern/FidelityFX-FSR2
!extern/vk_mem_alloc.h
!extern/lua-5.1.5
!extern/VERSIONS.md

# ImGui state
imgui.ini

# Logs
*.log

# Config files
config.ini
config.json
.env

# Runtime cache (floor heights, etc.)
cache/

# Single-player saves
saves/
wowee_[0-9][0-9][0-9][0-9]

# Extracted assets (run ./extract_assets.sh or .\extract_assets.ps1 to generate)
Data/*
!Data/opcodes

ingest/

# Asset pipeline state and texture packs
asset_pipeline/

# Local texture dumps / extracted art should never be committed
assets/textures/
node_modules/

# Python cache artifacts
tools/__pycache__/
*.pyc

# World editor output: scaffolded/exported zones and per-user ImGui layout
custom_zones/
wowee_editor_layout.ini
