Введение в Reckfell
Entity, уровни, префабы, ресурсы и C#: что создаётся в редакторе и что выполняется в игре.
Что такое Reckfell
Reckfell — бесплатный игровой движок с открытым исходным кодом для 2D- и 3D-проектов, без роялти за использование движка. В редакторе вы собираете объекты, настраиваете ресурсы и проверяете игру; поведение в примерах документации написано на C#.
Начать можно с маленькой игры. Для крупного проекта заранее проверяйте производительность своей игровой механики, объём ресурсов и требования целевой платформы. Название жанра или размер мира сами по себе не определяют допустимую нагрузку.
Четыре основных понятия
| Понятие | Что означает | Пример |
|---|---|---|
| Entity | Объект дерева с определённым типом и поведением | CharacterBody3D для управляемого персонажа |
| Уровень | Сохранённое дерево с ролью самостоятельного пространства, .rscene | Мир с полом, камерой и персонажем |
| Префаб | Сохранённое дерево для повторного использования, .rprefab | Дверь или противник, создаваемые несколько раз |
| Ресурс | Данные, на которые ссылаются объекты; отдельный текстовый ресурс — .rdata | Материал, форма столкновения, настройки |
Уровни и префабы используют PackedEntity. Instantiate создаёт экземпляр дерева; AddChild добавляет его в иерархию. Это разные действия: загрузка файла сама по себе не создаёт объект в работающем уровне. Смотрите Entity, уровни и префабы.
Как собирается объект
Тип Entity определяет возможности. Entity3D хранит пространственное преобразование, но сам не рисует модель. MeshInstance3D с Mesh даёт видимую геометрию. Физическому телу нужна CollisionShape3D с Shape; наличие видимой модели само по себе не создаёт столкновения. Для интерфейса используются Control и его наследники, например Label и Button.
Объекты связываются иерархией и сигналами. Скрипт наследуется от подходящего класса и переопределяет нужные методы: например, _Ready для начальной настройки или _PhysicsProcess для шага физики. Это объектная иерархия; название Entity не означает архитектуру ECS.
Первая 3D-игра показывает это на персонаже, поле, противниках и интерфейсе. Для отдельного упражнения со скриптом откройте C#.
Не путать два вида путей
asset://Props/Door.rprefab обозначает файл внутри проекта. user:// предназначен для пользовательских данных. Player/Camera3D в GetEntity обозначает объекты дерева относительно вызывающей Entity. Разные имена или родители требуют другого пути; переименование во время игры не переписывает сохранённую в коде строку.
Примеры разбора и поиска — EntityPath. Повторное использование объектов — создание экземпляров.
Выбрать следующий результат
- Нужен первый запуск — маршрут новичка.
- Нужна законченная небольшая игра — 2D или 3D.
- Уже есть проект и конкретная задача — руководство.
Экспорт проверяйте отдельно на целевой платформе: работа в редакторе не заменяет запуск готовой сборки. Экспорт объясняет состав пакета и начальные проверки.