| Предыдущая версия справа и слева
Предыдущая версия
Следующая версия
|
Предыдущая версия
|
lm2:ce:s_struct [2020/08/03 15:31] ruben |
lm2:ce:s_struct [2020/11/30 14:12] (текущий) |
| ==== Логическая структура проекта ==== | ==== Логическая структура проекта ==== |
| |
| Прежде чем начать создавать свой проект, нужно ознакомиться с логической структурой, которая предусматривается для всех проектов платформы Lambda-Mu 2. Видимая пользователю часть проекта это окна виртуальных машин. Дочерние элементы окон - панели. Далее элементы, далее подэлементы. Свойствами трех последних управляет lua-код (скрипт). Свойства могут иметь зависимости, а именно текстуры, шрифты. Так же при необходимости нужны звуковые файлы и строковые данные, к которым обращается lua-код. Отдельное место занимают плагины - динамически подгружаемые библиотеки, которые расширяют функциона платформы. | Прежде чем начать создавать свой проект, нужно ознакомиться с логической структурой, которая предусматривается для всех проектов платформы Lambda-Mu 2. |
| |
| {{ :lm2:ce:sheme2020_1.jpg?direct |}} | Видимая пользователю часть проекта это окна логических машин. Логических машин может быть несколько. Работать с ними можно одновременно и независимо. Деление на логические машины диктуется логикой проекта и задается в главном конфигурационном файле (см. статью "[[:lm2:ce:s_config|Главный конфигурационный файл]]"). |
| | |
| | Дочерние элементы окон - панели. Далее элементы, далее подэлементы. Свойствами трех последних управляет lua-код (скрипт). Свойства могут иметь зависимости, а именно текстуры, шрифты. Так же при необходимости нужны звуковые файлы и строковые данные, к которым обращается lua-код. Отдельное место занимают плагины - динамически подгружаемые библиотеки, которые расширяют функционал платформы. |
| | |
| | {{ :lm2:ce:sheme2020_1.jpg?direct& |sheme2020_1.jpg}} |
| |
| Внимательно изучите схему и при необходимости возвращайтесь к ней. Структурированность - основа хорошего проекта. | Внимательно изучите схему и при необходимости возвращайтесь к ней. Структурированность - основа хорошего проекта. |
| ==== Файловая структура проекта ==== | ==== Файловая структура проекта ==== |
| |
| **Исполняемый модуль **- ядро платформы, исполняемый файл .exe и динамические библиотеки .dll необходимые для старта платформы в случае Windows или скомпилированный бинарный файл в случаях систем на основе ядра Linux. Исполняемые модули можно найти в репозитарии [[https://gitlab.com/lambda-mu/lm.ver2/lm2.engine.ce|lm2.engine.ce]]. | **Исполняемый модуль (в корне проекта)**- ядро платформы, исполняемый файл .exe и динамические библиотеки .dll необходимые для старта платформы в случае Windows или скомпилированный бинарный файл в случаях систем на основе ядра Linux. Исполняемые модули можно найти в репозитарии [[https://gitlab.com/lambda-mu/lm.ver2/lm2.engine.ce|lm2.engine.ce]]. |
| | |
| | **Главный конфигурационный файл (в корне проекта)** - конфигурационный файл .xml, задает основные настройки платформы. Подробнее см. статью "[[:lm2:ce:s_config|Главный конфигурационный файл]]". |
| | |
| | **Шрифты (обычно папка fonts)**- файлы .ttf со шрифтами, используемыми в проекте. Подключаются в главном конфигурационном файле. |
| | |
| | **Звуки (обычно папка sounds) **- файлы .wav со звуками, используемыми в проекте. Подключаются в главном конфигурационном файле. |
| | |
| | **Плагины (в корне проекта) **- динамические библиотеки .dll, расширяют функционал платформы. Подключаются в главном конфигурационном файле. Подробнее см. статьи "[[:lm2:ce:s_pl|Плагины и их разработка]]" и "[[:lm2:ce:s_self_pl|Встроенные плагины]]". |
| | |
| | **Файл настройки окон (в папке configs)** - конфигурационный файл .xml, описывает логические машины, родителей окон. Подключается в главном конфигурационном файле. Подробнее см. статью "[[:lm2:ce:s_win|Конфигурация окон]]" |
| | |
| | **Lua-код (в папке configs)** - файлы .lua. Сриптовый язык lua быстро осваивается и ипользуется для программирования на платформе. Первый файл подключается в главном конфигурационном файле. Подробнее см. статью "[[:lm2:ce:s_lua|Lua-код (скрипт)]]". |
| | |
| | **Описание панелей (****в папке configs)**- конфигурационный файл .xml, описывает панели. Подключается в главном конфигурационном файле. Подробнее см. статью "[[:lm2:ce:s_panels|Описание панелей]]". |
| | |
| | **Шаблоны элементов ****(****в папке configs)** - файл .xml набор шаблонов, которые можно использовать для графических элементов. Подключается в файле описания панелей. Подробнее см. статью "[[:lm2:ce:s_templates|Библиотека элементов]]". |
| | |
| | **Изображения (обычно папка images) **- файлы .png c рендерами. Путь к папке задается в главном конфигурационном файле. |
| |
| **Главный конфигурационный файл - ** конфигурационный файл .xml. По умолчанию **config.xml**, если в качестве параметра при запуске не указан другой файл (этот функционал позволяет в одном проекте иметь разные уровни или занятия). Подробнее см. статью "[[:lm2:ce:s_config|Главный конфигурационный файл]]". | **Строковые данные (в папке configs)** - файлы .xml со строковыми данными. Подключаются в файле описания панелей. |
| |
| {{ :lm2:ce:sheme2020_2.jpg?direct |}} | {{ :lm2:ce:sheme2020_2.jpg?direct& |sheme2020_2.jpg}} |
| |
| |