Состояние на момент заведения репозитория. C++ приложение (src/, shaders/, tests/) — минимальный редактор 3D-моделей на Vulkan 1.3: орбитальная камера, три опорные сетки через начало координат, загрузка .obj с режимами отображения. Весь Vulkan изолирован в src/vk/. Исследование (docs/) — оригинальные статьи по KBC (docs/origins) и Python-решатель D2Q9 KBC-N1 с AMR 2x и SDF+Bouzidi (docs/theory). В решателе перед коммитом исправлены дефекты, найденные сверкой с первоисточниками: относительный порог знаменателя энтропийного стабилизатора (абсолютный вырождал KBC в LBGK на 77-99% узлов), заворот вход/выход в углах домена, диагностика средней плотности по фиктивным узлам тела, зашитый refine=2. Подробности — docs/theory/solver_2x_sdf/README.md. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
18 lines
855 B
CMake
18 lines
855 B
CMake
# Locate Vulkan SDK + glslangValidator (needed for offline shader compilation).
|
|
# On macOS this expects MoltenVK to be present (provided by Vulkan SDK 1.3.290+).
|
|
find_package(Vulkan REQUIRED COMPONENTS glslangValidator)
|
|
|
|
if(NOT Vulkan_glslangValidator_FOUND)
|
|
message(FATAL_ERROR "glslangValidator not found. Install Vulkan SDK from https://vulkan.lunarg.com/")
|
|
endif()
|
|
|
|
message(STATUS "Vulkan version: ${Vulkan_VERSION}")
|
|
message(STATUS "Vulkan include dir: ${Vulkan_INCLUDE_DIRS}")
|
|
message(STATUS "glslangValidator: ${Vulkan_GLSLANG_VALIDATOR_EXECUTABLE}")
|
|
|
|
if(APPLE)
|
|
# MoltenVK ships with the SDK; it's loaded as ICD at runtime, no link change needed,
|
|
# but we set MVK_CONFIG_USE_METAL_PRIVATE_API=0 in env when running.
|
|
message(STATUS "macOS detected — Vulkan via MoltenVK (Apple Silicon arm64 only)")
|
|
endif()
|