Перейти к содержанию
Fire Monkey от А до Я
  • 0

Использование OpenGL?


david_yusupov

Вопрос

Опубликовано

FireMonkey – это не графический движек, но чень удобный в плане реализации новых компонентов в виде стилей, что лишь одной фантазии ограниченно, как говорится есть одно но...

 

Как понимаю OpenGL – это кросс платформенная библиотека, но на данный момент мне нужно её использовать под Window, как?

 

FireMonkey – визуальные компоненты - не оконные, а используют стили. 

Рекомендуемые сообщения

  • 0
Опубликовано

В итоге не совсем понятно - чего же Вы хотите добиться?

Если перевести проект из VCL в Firemonkey, то посмотрите данную ссылочкусоответственно)

 

OpenGL?

Если Вы используете в своем проекте, созданном под VCL, библиотеку OpenGL, то, думаю, будет немного сложнее...

Если нет, то Вам ничего не нужно "делать". С Firemonkey Вам не нужно задумываться над тем - что и где используется. Потому-что создавая FMX проект, все происходит "автоматически". В смысле - под Windows Ваш проект сбилдится так, что будет работать с DirectX, под остальное - OpenGL. (в общем виде)

 

Так-что либо уточните свой вопрос, либо более четко его сформулируйте. Иначе, не понятно, что Вы хотите узнать.

  • 0
Опубликовано (изменено)

исполдьзую с воем проекте библиотеку 

 

В итоге не совсем понятно - чего же Вы хотите добиться?

Если перевести проект из VCL в Firemonkey, то посмотрите данную ссылочкусоответственно)

 

OpenGL?

Если Вы используете в своем проекте, созданном под VCL, библиотеку OpenGL, то, думаю, будет немного сложнее...

Если нет, то Вам ничего не нужно "делать". С Firemonkey Вам не нужно задумываться над тем - что и где используется. Потому-что создавая FMX проект, все происходит "автоматически". В смысле - под Windows Ваш проект сбилдится так, что будет работать с DirectX, под остальное - OpenGL. (в общем виде)

 

Так-что либо уточните свой вопрос, либо более четко его сформулируйте. Иначе, не понятно, что Вы хотите узнать.

Использую в своем проекте библиотеку под OpenGL...  

Изменено пользователем david_yusupov
  • 0
Опубликовано

исполдьзую с воем проекте библиотеку 

 

В итоге не совсем понятно - чего же Вы хотите добиться?

Если перевести проект из VCL в Firemonkey, то посмотрите данную ссылочкусоответственно)

 

OpenGL?

Если Вы используете в своем проекте, созданном под VCL, библиотеку OpenGL, то, думаю, будет немного сложнее...

Если нет, то Вам ничего не нужно "делать". С Firemonkey Вам не нужно задумываться над тем - что и где используется. Потому-что создавая FMX проект, все происходит "автоматически". В смысле - под Windows Ваш проект сбилдится так, что будет работать с DirectX, под остальное - OpenGL. (в общем виде)

 

Так-что либо уточните свой вопрос, либо более четко его сформулируйте. Иначе, не понятно, что Вы хотите узнать.

Использую в своем проекте библиотеку под OpenGL...  

Вариантов, думаю, у Вас нет.

ИМХО: Придется переписывать...

  • 0
Опубликовано
В 14.08.2015 в 00:40, AlexG сказал:

Вариантов, думаю, у Вас нет.

ИМХО: Придется переписывать...

То-есть использовать под Windows с компонентами FireMonkey напрямую из библиотек OpenGL или Vulkan нельзя? (на канве или в TImage ). А из DirectX?  Ну а как тогда, например, подключать шейдеры из внешних файлов для создания различных эффектов? Тоже нельзя? Просветите, пожалуйста.

  • 0
Опубликовано
16 часов назад, wassail сказал:

То-есть использовать под Windows с компонентами FireMonkey напрямую из библиотек OpenGL или Vulkan нельзя? (на канве или в TImage ). А из DirectX?  Ну а как тогда, например, подключать шейдеры из внешних файлов для создания различных эффектов? Тоже нельзя? Просветите, пожалуйста.

Тут я, к сожалению, не советчик. У меня нет такого опыта работы с использованием Firemonkey и OpenGL или Vulkan.

  • 0
Опубликовано
В 20.11.2016 в 16:19, AlexG сказал:

Тут я, к сожалению, не советчик. У меня нет такого опыта работы с использованием Firemonkey и OpenGL или Vulkan.

Прямое использование OpenGL и Vulkan в FireMonkey реализовано здесь https://github.com/LUXOPHIA/LUX.GPU.OpenGL и здесь https://github.com/LUXOPHIA/LUX.GPU.Vulkan, но там подключаются свои файлы с объявлениями типов и вспомогательных функций (с японскими комментариями), тогда как надо их взять из стандартных модулей RAD Studio System.*, FMX.*. Проект подготовки контекста и вьюеров  OpenGL/Vulkan в пакете компонентов GXScene находится здесь https://github.com/GLScene/GXScene. Тогда будет полноценный кросс-платформенный графический движок на базе FMX. Добровольцы приветствуются, welcome. 

  • 0
Опубликовано
В 20.11.2016 в 16:19, AlexG сказал:

Тут я, к сожалению, не советчик. У меня нет такого опыта работы с использованием Firemonkey и OpenGL или Vulkan.

Подготовка GLXcene компонентов на основе OpenGL для FMX (пока только для win32/64) возобновлена по новому адресу

https://github.com/GLScene/GLScene/tree/master/Source/FMX

Синхронизация юнитов и форм почти завершена с помощью BeyondCompare (входит теперь в состав редактора RAD Studio), префиксы классов и компонентов теперь разные, чтобы можно было устанавливать сразу обе сцены: у VCL - TGL.., у FMX - Tgx...

Пока компилируются run-time пакеты GLXcene for Delphi/C++Builder, а для design-time необходимо ещё добавить форму вьюера OpenGL и модуль дизайнера компонентов. 

Для разработки графических 3D приложений под OpenGL для Delphi/C++Builder & Lazarus (Win/Linux/iOS/Android) лучше чем графический  движок рендеринга GLScene ничего нет - в нём также есть своя физика, вейвлеты, менеджеры подключения сторонних звуковых и физических движков (BASS, OpenAL, Newton). Версия GLXcene объединит возможности Firemonkey для 3д моделирования и визуализации с имеющимися для Vcl версии. 

Имеющие опыт создания компонентов под FMX, приглашаются принять участие в дальнейшей разработке графической платформы на гитхаб

https://github.com/GLScene/GLScene  

 

GLSceneEditor.jpg

  • 0
Опубликовано (изменено)

Если кто интересуется прямым OpenGL и другими крутыми графическими примерами под FMX, то я пересобрал и перекомпилировал для RAD Studio 12.1 основные избранные примеры японской компьютерной графики Luxophia. Оригинальным кодом пользоваться нереально затруднительно - там наворочено и запутано так, что создаётся впечатление, что это  сделано специально.  Автор и его команда наваяли массу классов с иерархией, но решили обойтись вообще без каких-то своих визуальных компонентов. Да и для каждого проекта они включают каждый раз сотню файлов своей библиотеки или выборочные юниты снова в директорию проекта.

Короче,  я свалил все либы Luxophia с исходниками в одну папку _LIBRARY и установил всего один путь поиска в проектах. Так  всё работает, за малым исключением. 

Репозиторий с исходниками проектов я выложил на российской платформе СберТеха по адресу glscene/Luxophia: Избранные FMX приложения от @luxidea https://github.com/LUXOPHIA | Gitverse . Необходимо теперь сделать импорт моделей glTF/glb, приглашаются желающие приложить свои силы для  использования анимированных 3д моделей этого формата в FMX программах.  После включения SciaforDelphi в последней версии студии FMX графика стала работать быстрее, ходят слухи, что в несколько раз. 

Изменено пользователем Pavel Vasilev
  • 0
Опубликовано (изменено)

После появления российских веб-сервисов Gitflic и Gitverse я скопировал на них с GitHub коллектор графических движков GLScene/GX_Scene, включающий пакеты  компонентов под VCL и FMX, с общими модулями в отдельном директории src. В последнее время стало больше C++ пользователей бесплатной версии, судя по запросам в форумах типа: 
Hello, It would be nice to have BPL already available in version 2.5. As a C++Builder Community user, I cannot compile/install the packages because I do not have a Delphi personality. And I cannot install Delphi w/o removing Builder, a nightmare.... Can you please include the generated BPL directory and the populated include directories for poor men like me? Thank you. 

Поэтому я добавил собранные, прекомпилированные в бесплатном Delphi Community v11 пакеты в папку ../.../bpl и запушил их на все три площадки, откуда вы можете клонировать движок себе на компьютер:
Now you may install all packages from https://gitverse.ru/glscene/GLXEngine Users of the C++ Builder Personality need to copy the compiled .bpl packages from ../GLX_Engine/bpl directory to a folder C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl then add them and install. Run C++Builder examples. 

В итоге, имея теперь на компе только одну бесплатную среду C++Builder Community можно установить в неё свободный графический игровой движок GLX_Engine с компонентами и для VCL и для FMX и создавать 3д приложения только на С++. 

 

Изменено пользователем Pavel Vasilev

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...