## .NET
bin/
obj/
*.user
*.suo
.vs/

## Rider / VS Code
.idea/
.vscode/
*.DotSettings.user

## OS
.DS_Store
Thumbs.db

## Build output
out/
artifacts/

## scripts/stage-plugins.sh's output — regenerated from plugins/, not source.
.stage/

## ImGui's own persisted window layout (position/size/open-state) — a
## per-machine editing session preference, not project source, same
## category as an IDE's own workspace state.
imgui.ini

## CMake build output and FetchContent's cloned dependencies (Box3D) for
## native/*-native/ — regenerated by cmake -S . -B build, not source; only
## the built liblingua_physics.so (checked in under plugins/engine.physics/
## Engine.Physics/native/) is what the engine actually ships.
native/*/build/
native/*/.fetchcontent-cache/

## scripts/run-physics-demo.sh copies the game-specific plugin's built
## output directly into its own folder (that's where its own pluginPaths
## entry in project.json points) — regenerated, not source. plugin.json,
## the .csproj, and the .cs files there stay tracked.
samples/*/GamePlugins/*/*.dll
samples/*/GamePlugins/*/*.pdb

## Windows builds of the native physics/audio shims — nothing here can
## build or verify one (no Windows machine), so unlike linux-x64's .so,
## win-x64's .dll is never committed. .github/workflows/build.yml's
## Windows job builds it fresh into this exact path before `dotnet build`.
**/native/win-x64/
