Спецификация системных требований для Suika3

1. Обзор

Suika3 — это высокопроизводительная среда выполнения скриптов, оптимизированная для Visual Novels (VN) и 2D-игр. Она предоставляет многослойную DSL-среду, сочетающую простоту использования с расширяемостью профессионального уровня.

2. Основные компоненты (стек DSL)

Suika3 предоставляет авторам четыре специализированных языка:

  • NovelML (DSL на основе тегов): простой язык разметки, использующий теги [] для быстрой разработки сценариев VN.

  • Anime (DSL для анимации): специализированная система для послойной анимации растровых изображений с управлением последовательностями аффинных преобразований.

  • GUI (UI/UX DSL): гибкий набор инструментов для создания интерактивных экранов с кнопками, оптимизированными под требования VN.

  • Ray (скриптовый язык общего назначения): мощный скриптовый язык с VN API.

    • Настройка: определение собственных тегов NovelML.
    • Производительность: JIT-компиляция на ПК для быстрых итераций; AOT-компиляция в нативные бинарные файлы для соответствия требованиям iOS.
    • Низкоуровневый доступ: прямые точки подключения к C API ядра Suika3.

3. Ключевые цели и философия дизайна

  • Подход mobile-first: спроектировано исходя из идеи, что смартфоны являются основным вычислительным устройством. Suika3 избегает UI/UX, ориентированного на ПК, в пользу нативного мобильного ощущения.

  • Совместимость с публикацией в магазинах: полное соответствие политикам магазинов iOS/Android за счет AOT-компиляции и адаптивного дизайна.

  • Высокая переносимость:

    • Уровень 1: iOS, Android, HarmonyOS NEXT, Windows, macOS, Linux
    • Уровень 2: игровые консоли
    • Уровень 3: Chromebook, Wasm (WebAssembly)
  • За пределами визуальных новелл: хотя движок ориентирован на VN, базовая 2D-основа позволяет смешивать жанры (например, VN + RPG или Action).

4. Вне области применения / ограничения

Для сохранения переносимости и производительности Suika3 явно исключает:

  • Возможности только для ПК: Suika3 не является заменой устаревшим VN-движкам, предназначенным только для ПК.

  • Полноценное веб-развертывание: порт Wasm предназначен для демонстраций, а не для основного распространения.

  • 3D-графика: в настоящее время фокус сделан на 2D (поддержка 3D в будущем планируется вместе с генерацией ассетов на основе ИИ).

  • Проприетарное middleware: закрытые технологии вроде Live2D не поддерживаются, чтобы обеспечить максимальную переносимость движка.

5. NovelML

6. Ray

7. Anime

8. GUI

9. Config