Skip to content

Нодовый редактор ​

Двойной клик по файлу .kmat, .kshader или .kfx в панели Project открывает нодовый редактор. Редактор сохраняет граф автоматически и сразу перекомпилирует шейдер.

ФайлЧто этоВыходная нода
.kmatPBR-материалOutput: Base color, Roughness, Metallic, Emission, Alpha, Occlusion, Normal, Height
.kshaderШейдер объекта (неосвещаемый цвет, свечение, смещение вершин)Shader output
.kfxЭффект камеры на весь экранEffect output

Основы ​

  • Правый клик по холсту или Shift+A - меню добавления нод. Слева категории, справа ноды с описанием; стрелки и Enter работают.
  • Перетащите выход ноды в пустое место - откроется меню, новая нода сразу соединится.
  • Любой выход можно подключить к любому входу: число раскладывается на три канала.
  • Колесо - масштаб, СКМ или Space+перетаскивание - панорама, F - показать всё.
  • Ctrl+C / V / D - копировать, вставить, дублировать. Ctrl+Z / Y - отмена и повтор. Del - удалить.
  • Комментарий (Comment) - рамка с заметкой; ноды внутри двигаются вместе с ней.
  • Справа - превью материала на шаре, кубе или вашей модели. «Preview only the selected node» показывает результат выбранной ноды.

Превью внутри нод ​

Шумы и узоры показывают маленькое превью прямо в теле ноды: видно, что именно вы настраиваете. Правый клик по ноде → Show preview in node включает превью у любой ноды. Превью обновляется через четверть секунды после правки, чтобы ползунки не тормозили.

Категории ​

КатегорияЧто внутри
Вводконстанты, текстуры, время, трипланарная текстура
Геометрияпозиция, нормаль, высота, UV, маски по направлению, стороны (верх / бок / низ), смещение вершин
Светугол к свету, блики, контровой свет, тени, свет неба, свечение и пульсирующее свечение
Нормаликарты нормалей, бамп из высоты, высота в нормаль, смешивание и сила нормалей
Шумыфрактальный, Перлина, ячейки Вороного, трещины, облака, грязь, царапины
Узорышашки, кирпичи, соты, доски, плетение, сетка, градиенты, фигуры
ЦветColor ramp, режимы наложения, HSV, цветокоррекция, кривые
Математика, Векторыарифметика, кривые, повороты, скалярное и векторное произведение

Полный список - в справочнике нод.

Готовые материалы ​

В каждый новый проект кладётся папка assets/materials/library/ с 326 процедурными материалами: камень, земля, металл, дерево, органика, ткани, строительные, светящиеся, прозрачные и простые. Это обычные графы - откройте любой и меняйте. Файлы создаёт cargo run -p kvas_engine --example gen_material_library, а картинку ниже - cargo run --release -p kvas_render --example material_sheet.

Все встроенные материалы

Рецепты ​

Карта нормалей из файла ​

  1. В правой панели в слот normal выберите PNG с картой нормалей.
  2. Добавьте ноду Texture со слотом 1 и подключите её в Normal map (вход Map).
  3. Выход Normal map подключите в Output → Normal. Ползунок strength управляет глубиной.

Нормали из карты высот ​

  • Из текстуры высоты: Height to normal (слот текстуры, сила) → Normal map → Output → Normal.
  • Прямо из любой ноды-высоты (шум, узор): подключите её в Output → Height или в Bump from height - материал станет рельефным без текстур.
  • Детали поверх базовой нормали: Normal blend.

Ржавчина и износ на краях ​

  1. Fractal noise → Color ramp (тёмный → оранжевый → светлый).
  2. Fresnel или Direction mask как маска, Blend colours (режим multiply) смешивает цвет и маску.
  3. Результат в Base color, а тот же шум через Map range в Roughness.

Снег сверху, камень по бокам ​

Surface sides отдаёт красный = верх, зелёный = бок, синий = низ. Нода Red вытаскивает верх, Mix смешивает текстуры камня и снега по этой маске. Добавьте шум в Height blend, чтобы граница была рваной.

Светящиеся края ​

Rim light (цвет, степень, яркость) подключается в Emission. Для пульсации - Pulsing glow. Свечение попадёт в Bloom постобработки, если он включён в настройках сцены.

Ветер и волны (вершины) ​

В графе .kshader подключите Wind sway или Wave offset в Shader output → Vertex offset. Ноды с выборкой текстур и производными (Texture, Bump, Shadow...) в вершинной стадии недоступны - редактор подскажет.

Color ramp ​

Четыре цветовые точки с позициями 0..1. Над нодой рисуется градиент и маркеры точек. Подключите значение 0..1 (шум, Fresnel, высоту) на вход Position, чтобы раскрасить его по шкале.

Режимы наложения ​

Нода Blend colours принимает режим числом: 0 mix, 1 multiply, 2 screen, 3 overlay, 4 add, 5 subtract, 6 difference, 7 darken, 8 lighten, 9 soft light, 10 dodge, 11 burn, 12 hard light. Подсказка к параметру показывается при наведении на его название.

Экспорт в WGSL ​

Кнопка Export as WGSL shader записывает сгенерированный шейдер в assets/shaders/, чтобы дальше править его кодом. Из такого файла можно вернуться к графу (Open node graph).

Kvas Engine